diff --git a/404.html b/404.html index 50ec98bc30..9f47d8458b 100644 --- a/404.html +++ b/404.html @@ -4,7 +4,7 @@ Page Not Found | TNO Terminology Design - + @@ -17,7 +17,7 @@ .  Copyright © 2022-2023 by TNO.

- + \ No newline at end of file diff --git a/assets/js/0243614c.da95fba9.js b/assets/js/0243614c.b9840413.js similarity index 99% rename from assets/js/0243614c.da95fba9.js rename to assets/js/0243614c.b9840413.js index d7b2d3aab4..45a8539548 100644 --- a/assets/js/0243614c.da95fba9.js +++ b/assets/js/0243614c.b9840413.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[1277],{3905:function(e,t,a){a.d(t,{Zo:function(){return f},kt:function(){return u}});var n=a(7294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var c=n.createContext({}),p=function(e){var t=n.useContext(c),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},f=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,f=s(e,["components","mdxType","originalType","parentName"]),h=p(a),u=r,d=h["".concat(c,".").concat(u)]||h[u]||l[u]||i;return a?n.createElement(d,o(o({ref:t},f),{},{components:a})):n.createElement(d,o({ref:t},f))}));function u(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=a.length,o=new Array(i);o[0]=h;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var p=2;p=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var c=n.createContext({}),p=function(e){var t=n.useContext(c),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},f=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,f=s(e,["components","mdxType","originalType","parentName"]),h=p(a),u=r,d=h["".concat(c,".").concat(u)]||h[u]||l[u]||i;return a?n.createElement(d,o(o({ref:t},f),{},{components:a})):n.createElement(d,o({ref:t},f))}));function u(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=a.length,o=new Array(i);o[0]=h;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var p=2;p=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(s=0;s=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=s.createContext({}),p=function(e){var t=s.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},c=function(e){var t=p(e.components);return s.createElement(l.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return s.createElement(s.Fragment,{},t)}},m=s.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,l=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),m=p(r),f=o,y=m["".concat(l,".").concat(f)]||m[f]||u[f]||n;return r?s.createElement(y,a(a({ref:t},c),{},{components:r})):s.createElement(y,a({ref:t},c))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,a=new Array(n);a[0]=m;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i.mdxType="string"==typeof e?e:o,a[1]=i;for(var p=2;p=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(s=0;s=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=s.createContext({}),p=function(e){var t=s.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},c=function(e){var t=p(e.components);return s.createElement(l.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return s.createElement(s.Fragment,{},t)}},m=s.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,l=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),m=p(r),f=o,y=m["".concat(l,".").concat(f)]||m[f]||u[f]||n;return r?s.createElement(y,a(a({ref:t},c),{},{components:r})):s.createElement(y,a({ref:t},c))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,a=new Array(n);a[0]=m;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i.mdxType="string"==typeof e?e:o,a[1]=i;for(var p=2;p=0||(s[n]=e[n]);return s}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}var c=i.createContext({}),m=function(e){var t=i.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},p=function(e){var t=m(e.components);return i.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},l=i.forwardRef((function(e,t){var n=e.components,s=e.mdxType,a=e.originalType,c=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),l=m(n),u=s,d=l["".concat(c,".").concat(u)]||l[u]||h[u]||a;return n?i.createElement(d,r(r({ref:t},p),{},{components:n})):i.createElement(d,r({ref:t},p))}));function u(e,t){var n=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var a=n.length,r=new Array(a);r[0]=l;var o={};for(var c in t)hasOwnProperty.call(t,c)&&(o[c]=t[c]);o.originalType=e,o.mdxType="string"==typeof e?e:s,r[1]=o;for(var m=2;m=0||(s[n]=e[n]);return s}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(s[n]=e[n])}return s}var c=i.createContext({}),m=function(e){var t=i.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},p=function(e){var t=m(e.components);return i.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},l=i.forwardRef((function(e,t){var n=e.components,s=e.mdxType,a=e.originalType,c=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),l=m(n),u=s,d=l["".concat(c,".").concat(u)]||l[u]||h[u]||a;return n?i.createElement(d,r(r({ref:t},p),{},{components:n})):i.createElement(d,r({ref:t},p))}));function u(e,t){var n=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var a=n.length,r=new Array(a);r[0]=l;var o={};for(var c in t)hasOwnProperty.call(t,c)&&(o[c]=t[c]);o.originalType=e,o.mdxType="string"==typeof e?e:s,r[1]=o;for(var m=2;m=0||(n[i]=t[i]);return n}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(n[i]=t[i])}return n}var h=o.createContext({}),c=function(t){var e=o.useContext(h),i=e;return t&&(i="function"==typeof t?t(e):s(s({},e),t)),i},m=function(t){var e=c(t.components);return o.createElement(h.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},p=o.forwardRef((function(t,e){var i=t.components,n=t.mdxType,a=t.originalType,h=t.parentName,m=r(t,["components","mdxType","originalType","parentName"]),p=c(i),l=n,g=p["".concat(h,".").concat(l)]||p[l]||d[l]||a;return i?o.createElement(g,s(s({ref:e},m),{},{components:i})):o.createElement(g,s({ref:e},m))}));function l(t,e){var i=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var a=i.length,s=new Array(a);s[0]=p;var r={};for(var h in e)hasOwnProperty.call(e,h)&&(r[h]=e[h]);r.originalType=t,r.mdxType="string"==typeof t?t:n,s[1]=r;for(var c=2;c=0||(n[i]=t[i]);return n}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(n[i]=t[i])}return n}var h=o.createContext({}),c=function(t){var e=o.useContext(h),i=e;return t&&(i="function"==typeof t?t(e):s(s({},e),t)),i},m=function(t){var e=c(t.components);return o.createElement(h.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},p=o.forwardRef((function(t,e){var i=t.components,n=t.mdxType,a=t.originalType,h=t.parentName,m=r(t,["components","mdxType","originalType","parentName"]),p=c(i),l=n,g=p["".concat(h,".").concat(l)]||p[l]||d[l]||a;return i?o.createElement(g,s(s({ref:e},m),{},{components:i})):o.createElement(g,s({ref:e},m))}));function l(t,e){var i=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var a=i.length,s=new Array(a);s[0]=p;var r={};for(var h in e)hasOwnProperty.call(e,h)&&(r[h]=e[h]);r.originalType=t,r.mdxType="string"==typeof t?t:n,s[1]=r;for(var c=2;c=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=a.createContext({}),u=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},h=function(e){var t=u(e.components);return a.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},l=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,h=i(e,["components","mdxType","originalType","parentName"]),l=u(r),p=n,m=l["".concat(c,".").concat(p)]||l[p]||d[p]||o;return r?a.createElement(m,s(s({ref:t},h),{},{components:r})):a.createElement(m,s({ref:t},h))}));function p(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,s=new Array(o);s[0]=l;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:n,s[1]=i;for(var u=2;u=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=a.createContext({}),u=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},h=function(e){var t=u(e.components);return a.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},l=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,h=i(e,["components","mdxType","originalType","parentName"]),l=u(r),p=n,m=l["".concat(c,".").concat(p)]||l[p]||d[p]||o;return r?a.createElement(m,s(s({ref:t},h),{},{components:r})):a.createElement(m,s({ref:t},h))}));function p(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,s=new Array(o);s[0]=l;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:n,s[1]=i;for(var u=2;u=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var l=n.createContext({}),d=function(t){var e=n.useContext(l),a=e;return t&&(a="function"==typeof t?t(e):o(o({},e),t)),a},p=function(t){var e=d(t.components);return n.createElement(l.Provider,{value:e},t.children)},m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},c=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,i=t.originalType,l=t.parentName,p=s(t,["components","mdxType","originalType","parentName"]),c=d(a),f=r,h=c["".concat(l,".").concat(f)]||c[f]||m[f]||i;return a?n.createElement(h,o(o({ref:e},p),{},{components:a})):n.createElement(h,o({ref:e},p))}));function f(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var i=a.length,o=new Array(i);o[0]=c;var s={};for(var l in e)hasOwnProperty.call(e,l)&&(s[l]=e[l]);s.originalType=t,s.mdxType="string"==typeof t?t:r,o[1]=s;for(var d=2;d=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var l=n.createContext({}),d=function(t){var e=n.useContext(l),a=e;return t&&(a="function"==typeof t?t(e):o(o({},e),t)),a},p=function(t){var e=d(t.components);return n.createElement(l.Provider,{value:e},t.children)},m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},c=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,i=t.originalType,l=t.parentName,p=s(t,["components","mdxType","originalType","parentName"]),c=d(a),f=r,h=c["".concat(l,".").concat(f)]||c[f]||m[f]||i;return a?n.createElement(h,o(o({ref:e},p),{},{components:a})):n.createElement(h,o({ref:e},p))}));function f(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var i=a.length,o=new Array(i);o[0]=c;var s={};for(var l in e)hasOwnProperty.call(e,l)&&(s[l]=e[l]);s.originalType=t,s.mdxType="string"==typeof t?t:r,o[1]=s;for(var d=2;d=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var l=o.createContext({}),c=function(e){var t=o.useContext(l),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},p=function(e){var t=c(e.components);return o.createElement(l.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,a=e.originalType,l=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=c(i),m=n,f=d["".concat(l,".").concat(m)]||d[m]||h[m]||a;return i?o.createElement(f,r(r({ref:t},p),{},{components:i})):o.createElement(f,r({ref:t},p))}));function m(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=i.length,r=new Array(a);r[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:n,r[1]=s;for(var c=2;c child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function d(e){var t=e.values,i=e.children;return(0,n.useMemo)((function(){var e=null!=t?t:h(i);return function(e){var t=(0,c.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,i])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function f(e){var t=e.queryString,i=void 0!==t&&t,o=e.groupId,a=(0,s.k6)(),r=function(e){var t=e.queryString,i=void 0!==t&&t,o=e.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!o)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=o?o:null}({queryString:i,groupId:o});return[(0,l._X)(r),(0,n.useCallback)((function(e){if(r){var t=new URLSearchParams(a.location.search);t.set(r,e),a.replace(Object.assign({},a.location,{search:t.toString()}))}}),[r,a])]}function u(e){var t,i,o,a,r=e.defaultValue,s=e.queryString,l=void 0!==s&&s,c=e.groupId,h=d(e),u=(0,n.useState)((function(){return function(e){var t,i=e.defaultValue,o=e.tabValues;if(0===o.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!m({value:i,tabValues:o}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+o.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var n=null!=(t=o.find((function(e){return e.default})))?t:o[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:r,tabValues:h})})),g=u[0],v=u[1],y=f({queryString:l,groupId:c}),k=y[0],b=y[1],w=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:c}.groupId),i=(0,p.Nk)(t),o=i[0],a=i[1],[o,(0,n.useCallback)((function(e){t&&a.set(e)}),[t,a])]),N=w[0],S=w[1],T=function(){var e=null!=k?k:N;return m({value:e,tabValues:h})?e:null}();return(0,n.useLayoutEffect)((function(){T&&v(T)}),[T]),{selectedValue:g,selectValue:(0,n.useCallback)((function(e){if(!m({value:e,tabValues:h}))throw new Error("Can't select invalid tab value="+e);v(e),b(e),S(e)}),[b,S,h]),tabValues:h}}var g=i(2389),v="tabList__CuJ",y="tabItem_LNqP";function k(e){var t=e.className,i=e.block,s=e.selectedValue,l=e.selectValue,c=e.tabValues,p=[],h=(0,r.o5)().blockElementScrollPositionUntilNextRender,d=function(e){var t=e.currentTarget,i=p.indexOf(t),o=c[i].value;o!==s&&(h(t),l(o))},m=function(e){var t,i=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":var o,n=p.indexOf(e.currentTarget)+1;i=null!=(o=p[n])?o:p[0];break;case"ArrowLeft":var a,r=p.indexOf(e.currentTarget)-1;i=null!=(a=p[r])?a:p[p.length-1]}null==(t=i)||t.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,a.Z)("tabs",{"tabs--block":i},t)},c.map((function(e){var t=e.value,i=e.label,r=e.attributes;return n.createElement("li",(0,o.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:function(e){return p.push(e)},onKeyDown:m,onClick:d},r,{className:(0,a.Z)("tabs__item",y,null==r?void 0:r.className,{"tabs__item--active":s===t})}),null!=i?i:t)})))}function b(e){var t=e.lazy,i=e.children,o=e.selectedValue,a=(Array.isArray(i)?i:[i]).filter(Boolean);if(t){var r=a.find((function(e){return e.props.value===o}));return r?(0,n.cloneElement)(r,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},a.map((function(e,t){return(0,n.cloneElement)(e,{key:t,hidden:e.props.value!==o})})))}function w(e){var t=u(e);return n.createElement("div",{className:(0,a.Z)("tabs-container",v)},n.createElement(k,(0,o.Z)({},e,t)),n.createElement(b,(0,o.Z)({},e,t)))}function N(e){var t=(0,g.Z)();return n.createElement(w,(0,o.Z)({key:String(t)},e))}},361:function(e,t,i){i.r(t),i.d(t,{assets:function(){return p},contentTitle:function(){return l},default:function(){return f},frontMatter:function(){return s},mark:function(){return d},metadata:function(){return c},toc:function(){return h}});var o=i(7462),n=i(3366),a=(i(7294),i(3905)),r=(i(4996),i(4866),i(5162),["components"]),s={id:"mrg-importer",sidebar_label:"MRG Importer",date:20230731},l="MRG Import Tool",c={unversionedId:"spec-tools/mrg-importer",id:"spec-tools/mrg-importer",title:"MRG Import Tool",description:"text to mark",source:"@site/docs/spec-tools/12-mrg-importer.md",sourceDirName:"spec-tools",slug:"/spec-tools/mrg-importer",permalink:"/tev2-specifications/docs/spec-tools/mrg-importer",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/12-mrg-importer.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:12,frontMatter:{id:"mrg-importer",sidebar_label:"MRG Importer",date:20230731},sidebar:"tev2SideBar",previous:{title:"Integrity Checking",permalink:"/tev2-specifications/docs/spec-tools/ict"},next:{title:"Term Ref Resolution",permalink:"/tev2-specifications/docs/spec-tools/trrt"}},p={},h=[{value:"Installing the Tool",id:"installing-the-tool",level:2},{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Processing, Errors and Warnings",id:"processing-errors-and-warnings",level:2},{value:"Deploying the Tool",id:"deploying-the-tool",level:2}],d=function(e){var t=e.children;return(0,a.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},t)},m={toc:h,mark:d};function f(e){var t=e.components,i=(0,n.Z)(e,r);return(0,a.kt)("wrapper",(0,o.Z)({},m,i,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mrg-import-tool"},"MRG Import Tool"),(0,a.kt)("admonition",{title:"Editor's Note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"This section is still under development. You'll see further editor's notes where issues exist.")),(0,a.kt)("p",null,"The ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," Import Tool (",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer"),")")," ensures that the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which it is run, obtains a local copy of all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," that are available in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," that are mentioned in the ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#scopes"},"scopes section")," of its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". This makes life easy for various tools, e.g., the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," and the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),", that can now assume that all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," that they may need to consult in order to do their job, are readily available. "),(0,a.kt)("p",null,"There will shortly be an implementation of the tool:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"the repo for the code of the tool is ",(0,a.kt)("a",{parentName:"li",href:"https://github.com/tno-terminology-design/mrg-import"},"here"),"."),(0,a.kt)("li",{parentName:"ul"},"the documentation is ","[",(0,a.kt)("mark",null,"tbd"),"]",".")),(0,a.kt)("h2",{id:"installing-the-tool"},"Installing the Tool"),(0,a.kt)("p",null,"The tool can be installed from the command line and made globally available by executing"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"npm install tno-terminology-design/mrg-import -g\n")),(0,a.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,a.kt)("p",null,"The behavior of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," can be configured per call e.g. by a configuration file and/or command-line parameters. The command-line syntax is as follows:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"mrg-import [ ]\n")),(0,a.kt)("p",null,"where:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"")," (optional) is a list of key-value pairs")),(0,a.kt)("details",null,(0,a.kt)("summary",null,"Legend"),(0,a.kt)("p",null,"The columns in the following table are defined as follows:"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,a.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,a.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,a.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Value"),(0,a.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"config")),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"")),(0,a.kt)("td",{parentName:"tr",align:"center"},"n"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter MUST NOT appear in the configuration file itself.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"")),(0,a.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," from which the tool is called. It MUST contain the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," for that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which we will refer to as the 'current scope' for the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer"),".")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"onNotExist")),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"")),(0,a.kt)("td",{parentName:"tr",align:"center"},"n"),(0,a.kt)("td",{parentName:"tr",align:"left"},"specifies the action to take in case an MRG file that was expected to exist, does not exist. Default is ",(0,a.kt)("inlineCode",{parentName:"td"},"'throw'"),".")))),(0,a.kt)("p",null,"The ",(0,a.kt)("inlineCode",{parentName:"p"},"")," parameter can take the following values:"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"th"},"")),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"'throw'")),(0,a.kt)("td",{parentName:"tr",align:"left"},"an error is thrown (an exception is raised), and processing will stop.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"'warn'")),(0,a.kt)("td",{parentName:"tr",align:"left"},"a message is displayed (and logged) and processing continues.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"'log'")),(0,a.kt)("td",{parentName:"tr",align:"left"},"a message is written to a log(file) and processing continues.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"'ignore'")),(0,a.kt)("td",{parentName:"tr",align:"left"},"processing continues as if nothing happened.")))),(0,a.kt)("h2",{id:"processing-errors-and-warnings"},"Processing, Errors and Warnings"),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," starts by reading its command-line and configuration file. If the command-line has a key that is also found in the configuration file, the command-line key-value pair takes precedence. The resulting set of key-value pairs is tested for proper syntax and validity. Every improper syntax and every invalidity found will be logged. Improper syntax may be e.g. an invalid ",(0,a.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"globpattern"),". Invalidities include non-existing directories or files, lack of write-permissions where needed, etc."),(0,a.kt)("p",null,"Then, the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," reads the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," is called. We will use the following names for values that are in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),":"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{my-own-scopetag}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope"),"-section"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{my-own-scopedir}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"scopedir"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope"),"-section"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{my-own-glossarydir}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"glossarydir"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope"),"-section")),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," also reads the ",(0,a.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-files/saf#scopes"},"scopes section")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", which specifies the 'other' ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," from which the actively maintained ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," have to be imported. This ",(0,a.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-files/saf#scopes"},"scopes section")," contains elements that consist of two parts, whose values we will refer to by the following names:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{import-scopetag}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scopes"),"-section of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{import-scopedir}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"scopedir"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scopes"),"-section of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))),(0,a.kt)("p",null,"For every ",(0,a.kt)("inlineCode",{parentName:"p"},"{import-scopedir}"),", the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," will read its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," to find out which ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," are being actively maintained (we will use ",(0,a.kt)("inlineCode",{parentName:"p"},"{import-saf}")," to refer to the contents of this ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),")."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"Reading a SAF may require authentication, e.g. when the scopedir of the other scope is in a private or enterprise repo. How the MRG importer will be dealing with this remains to be specified.")),(0,a.kt)("p",null,"We will use:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{other-scopetag}")," = the ",(0,a.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field in the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope")," section of ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-saf}"),";"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{other-glossarydir}")," = the ",(0,a.kt)("inlineCode",{parentName:"li"},"glossarydir"),"-field in the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope")," section of ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-saf}"),";")),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-files/saf#versions"},"versions-section")," in ",(0,a.kt)("inlineCode",{parentName:"p"},"{import-saf}")," specifies which ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," are actively maintained within the other ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and hence have to be imported. Every such ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is specified by an entry in this section, and must hence be processed to import the associated ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),". "),(0,a.kt)("p",null,"To specify one such process, we will use:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{other-vsntag}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"vsntag"),"-field in the element of the ",(0,a.kt)("inlineCode",{parentName:"li"},"versions")," section of ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-saf}")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{other-altvsntags}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"altvsntags"),"-field in an element of the ",(0,a.kt)("inlineCode",{parentName:"li"},"versions")," section of ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-saf}"))),(0,a.kt)("p",null,"To import the associated ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),", here is what we do:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"read the file ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-scopedir}/{import-glossarydir}/mrg.{other-scopetag}.{other-vsntag}.yaml"),", which is the file that contains the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that needs to be imported. If that file doesn't exist, this results in the bahaviour as specified by the ",(0,a.kt)("inlineCode",{parentName:"li"},"")," value of the ",(0,a.kt)("inlineCode",{parentName:"li"},"onNotExist")," parameter. Default is ",(0,a.kt)("inlineCode",{parentName:"li"},"throw"),".",(0,a.kt)("admonition",{parentName:"li",title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"It may well be possible that contents of the mrg may need to be processed.\nThis is due to the fact that ",(0,a.kt)("inlineCode",{parentName:"p"},"scopetag"),"s are 'local' names for referring to scopes and every scope gets to decide on its own scoptag names. So the meaning of 'scopetags' cannot be transferred across scopes. We have to use universal/fixed identifiers, such as a ",(0,a.kt)("inlineCode",{parentName:"p"},"scopedir"),"-URL to identify scopes. Still, local names can be useful (and are necessary), so we'll have to figure out what the impact of this is.\ned:::"))),(0,a.kt)("li",{parentName:"ul"},"write the contents to ",(0,a.kt)("inlineCode",{parentName:"li"},"{my-scopedir}/{my-glossarydir}/mrg.{import-scopetag}.{other-vsntag}.yaml"),", overwriting a file that has the same name if that were to exist."),(0,a.kt)("li",{parentName:"ul"},"for every ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," in ",(0,a.kt)("inlineCode",{parentName:"li"},"{other-altvsntags}")," (which we call ",(0,a.kt)("inlineCode",{parentName:"li"},"{other-altvsntag}"),"), a symbolic link ",(0,a.kt)("inlineCode",{parentName:"li"},"mrg.{import-scopetag}.{other-altvsntag}.yaml")," is created in the ",(0,a.kt)("inlineCode",{parentName:"li"},"{my-scopedir}/{my-glossarydir}/")," directory, that links to the ",(0,a.kt)("inlineCode",{parentName:"li"},"mrg.{import-scopetag}.{other-vsntag}.yaml")," file that was just created in that same directory.")),(0,a.kt)("admonition",{type:"note"},(0,a.kt)("mdxAdmonitionTitle",{parentName:"admonition"},"NOTE the change of the ",(0,a.kt)("inlineCode",{parentName:"mdxAdmonitionTitle"},"scopetag")," part in the filename!"),(0,a.kt)("p",{parentName:"admonition"},"The name of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which it is imported may differ from the name of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is imported. The reason for this is that the names (",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," that are used in these ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," to refer to the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from where ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," are imported, may differ.")),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," logs every error- and/or warning condition that it comes across while processing its configuration file, commandline parameters, and input files, in a way that helps tool-operators and document ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to identify and fix such conditions."),(0,a.kt)("h2",{id:"deploying-the-tool"},"Deploying the Tool"),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and author/modify CI-pipes to use that deployment."))}f.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[8136],{3905:function(e,t,i){i.d(t,{Zo:function(){return p},kt:function(){return m}});var o=i(7294);function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,o)}return i}function r(e){for(var t=1;t=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var l=o.createContext({}),c=function(e){var t=o.useContext(l),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},p=function(e){var t=c(e.components);return o.createElement(l.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,a=e.originalType,l=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=c(i),m=n,f=d["".concat(l,".").concat(m)]||d[m]||h[m]||a;return i?o.createElement(f,r(r({ref:t},p),{},{components:i})):o.createElement(f,r({ref:t},p))}));function m(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=i.length,r=new Array(a);r[0]=d;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:n,r[1]=s;for(var c=2;c child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function d(e){var t=e.values,i=e.children;return(0,n.useMemo)((function(){var e=null!=t?t:h(i);return function(e){var t=(0,c.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,i])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function f(e){var t=e.queryString,i=void 0!==t&&t,o=e.groupId,a=(0,s.k6)(),r=function(e){var t=e.queryString,i=void 0!==t&&t,o=e.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!o)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=o?o:null}({queryString:i,groupId:o});return[(0,l._X)(r),(0,n.useCallback)((function(e){if(r){var t=new URLSearchParams(a.location.search);t.set(r,e),a.replace(Object.assign({},a.location,{search:t.toString()}))}}),[r,a])]}function u(e){var t,i,o,a,r=e.defaultValue,s=e.queryString,l=void 0!==s&&s,c=e.groupId,h=d(e),u=(0,n.useState)((function(){return function(e){var t,i=e.defaultValue,o=e.tabValues;if(0===o.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!m({value:i,tabValues:o}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+o.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var n=null!=(t=o.find((function(e){return e.default})))?t:o[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:r,tabValues:h})})),g=u[0],v=u[1],y=f({queryString:l,groupId:c}),k=y[0],b=y[1],w=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:c}.groupId),i=(0,p.Nk)(t),o=i[0],a=i[1],[o,(0,n.useCallback)((function(e){t&&a.set(e)}),[t,a])]),N=w[0],S=w[1],T=function(){var e=null!=k?k:N;return m({value:e,tabValues:h})?e:null}();return(0,n.useLayoutEffect)((function(){T&&v(T)}),[T]),{selectedValue:g,selectValue:(0,n.useCallback)((function(e){if(!m({value:e,tabValues:h}))throw new Error("Can't select invalid tab value="+e);v(e),b(e),S(e)}),[b,S,h]),tabValues:h}}var g=i(2389),v="tabList__CuJ",y="tabItem_LNqP";function k(e){var t=e.className,i=e.block,s=e.selectedValue,l=e.selectValue,c=e.tabValues,p=[],h=(0,r.o5)().blockElementScrollPositionUntilNextRender,d=function(e){var t=e.currentTarget,i=p.indexOf(t),o=c[i].value;o!==s&&(h(t),l(o))},m=function(e){var t,i=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":var o,n=p.indexOf(e.currentTarget)+1;i=null!=(o=p[n])?o:p[0];break;case"ArrowLeft":var a,r=p.indexOf(e.currentTarget)-1;i=null!=(a=p[r])?a:p[p.length-1]}null==(t=i)||t.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,a.Z)("tabs",{"tabs--block":i},t)},c.map((function(e){var t=e.value,i=e.label,r=e.attributes;return n.createElement("li",(0,o.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:function(e){return p.push(e)},onKeyDown:m,onClick:d},r,{className:(0,a.Z)("tabs__item",y,null==r?void 0:r.className,{"tabs__item--active":s===t})}),null!=i?i:t)})))}function b(e){var t=e.lazy,i=e.children,o=e.selectedValue,a=(Array.isArray(i)?i:[i]).filter(Boolean);if(t){var r=a.find((function(e){return e.props.value===o}));return r?(0,n.cloneElement)(r,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},a.map((function(e,t){return(0,n.cloneElement)(e,{key:t,hidden:e.props.value!==o})})))}function w(e){var t=u(e);return n.createElement("div",{className:(0,a.Z)("tabs-container",v)},n.createElement(k,(0,o.Z)({},e,t)),n.createElement(b,(0,o.Z)({},e,t)))}function N(e){var t=(0,g.Z)();return n.createElement(w,(0,o.Z)({key:String(t)},e))}},361:function(e,t,i){i.r(t),i.d(t,{assets:function(){return p},contentTitle:function(){return l},default:function(){return f},frontMatter:function(){return s},mark:function(){return d},metadata:function(){return c},toc:function(){return h}});var o=i(7462),n=i(3366),a=(i(7294),i(3905)),r=(i(4996),i(4866),i(5162),["components"]),s={id:"mrg-importer",sidebar_label:"MRG Importer",date:20230731},l="MRG Import Tool",c={unversionedId:"spec-tools/mrg-importer",id:"spec-tools/mrg-importer",title:"MRG Import Tool",description:"text to mark",source:"@site/docs/spec-tools/12-mrg-importer.md",sourceDirName:"spec-tools",slug:"/spec-tools/mrg-importer",permalink:"/tev2-specifications/docs/spec-tools/mrg-importer",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/12-mrg-importer.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:12,frontMatter:{id:"mrg-importer",sidebar_label:"MRG Importer",date:20230731},sidebar:"tev2SideBar",previous:{title:"Integrity Checking",permalink:"/tev2-specifications/docs/spec-tools/ict"},next:{title:"Term Ref Resolution",permalink:"/tev2-specifications/docs/spec-tools/trrt"}},p={},h=[{value:"Installing the Tool",id:"installing-the-tool",level:2},{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Processing, Errors and Warnings",id:"processing-errors-and-warnings",level:2},{value:"Deploying the Tool",id:"deploying-the-tool",level:2}],d=function(e){var t=e.children;return(0,a.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},t)},m={toc:h,mark:d};function f(e){var t=e.components,i=(0,n.Z)(e,r);return(0,a.kt)("wrapper",(0,o.Z)({},m,i,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"mrg-import-tool"},"MRG Import Tool"),(0,a.kt)("admonition",{title:"Editor's Note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"This section is still under development. You'll see further editor's notes where issues exist.")),(0,a.kt)("p",null,"The ",(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," Import Tool (",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer"),")")," ensures that the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which it is run, obtains a local copy of all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," that are available in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," that are mentioned in the ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#scopes"},"scopes section")," of its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". This makes life easy for various tools, e.g., the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," and the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),", that can now assume that all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," that they may need to consult in order to do their job, are readily available. "),(0,a.kt)("p",null,"There will shortly be an implementation of the tool:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"the repo for the code of the tool is ",(0,a.kt)("a",{parentName:"li",href:"https://github.com/tno-terminology-design/mrg-import"},"here"),"."),(0,a.kt)("li",{parentName:"ul"},"the documentation is ","[",(0,a.kt)("mark",null,"tbd"),"]",".")),(0,a.kt)("h2",{id:"installing-the-tool"},"Installing the Tool"),(0,a.kt)("p",null,"The tool can be installed from the command line and made globally available by executing"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"npm install tno-terminology-design/mrg-import -g\n")),(0,a.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,a.kt)("p",null,"The behavior of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," can be configured per call e.g. by a configuration file and/or command-line parameters. The command-line syntax is as follows:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"mrg-import [ ]\n")),(0,a.kt)("p",null,"where:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"")," (optional) is a list of key-value pairs")),(0,a.kt)("details",null,(0,a.kt)("summary",null,"Legend"),(0,a.kt)("p",null,"The columns in the following table are defined as follows:"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,a.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,a.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,a.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Value"),(0,a.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"config")),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"")),(0,a.kt)("td",{parentName:"tr",align:"center"},"n"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter MUST NOT appear in the configuration file itself.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"")),(0,a.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,a.kt)("td",{parentName:"tr",align:"left"},"Path of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," from which the tool is called. It MUST contain the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," for that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which we will refer to as the 'current scope' for the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer"),".")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"onNotExist")),(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"")),(0,a.kt)("td",{parentName:"tr",align:"center"},"n"),(0,a.kt)("td",{parentName:"tr",align:"left"},"specifies the action to take in case an MRG file that was expected to exist, does not exist. Default is ",(0,a.kt)("inlineCode",{parentName:"td"},"'throw'"),".")))),(0,a.kt)("p",null,"The ",(0,a.kt)("inlineCode",{parentName:"p"},"")," parameter can take the following values:"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"th"},"")),(0,a.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"'throw'")),(0,a.kt)("td",{parentName:"tr",align:"left"},"an error is thrown (an exception is raised), and processing will stop.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"'warn'")),(0,a.kt)("td",{parentName:"tr",align:"left"},"a message is displayed (and logged) and processing continues.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"'log'")),(0,a.kt)("td",{parentName:"tr",align:"left"},"a message is written to a log(file) and processing continues.")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"'ignore'")),(0,a.kt)("td",{parentName:"tr",align:"left"},"processing continues as if nothing happened.")))),(0,a.kt)("h2",{id:"processing-errors-and-warnings"},"Processing, Errors and Warnings"),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," starts by reading its command-line and configuration file. If the command-line has a key that is also found in the configuration file, the command-line key-value pair takes precedence. The resulting set of key-value pairs is tested for proper syntax and validity. Every improper syntax and every invalidity found will be logged. Improper syntax may be e.g. an invalid ",(0,a.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"globpattern"),". Invalidities include non-existing directories or files, lack of write-permissions where needed, etc."),(0,a.kt)("p",null,"Then, the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," reads the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," is called. We will use the following names for values that are in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),":"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{my-own-scopetag}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope"),"-section"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{my-own-scopedir}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"scopedir"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope"),"-section"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{my-own-glossarydir}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"glossarydir"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope"),"-section")),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," also reads the ",(0,a.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-files/saf#scopes"},"scopes section")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", which specifies the 'other' ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," from which the actively maintained ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," have to be imported. This ",(0,a.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-files/saf#scopes"},"scopes section")," contains elements that consist of two parts, whose values we will refer to by the following names:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{import-scopetag}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scopes"),"-section of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{import-scopedir}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"scopedir"),"-field from the ",(0,a.kt)("inlineCode",{parentName:"li"},"scopes"),"-section of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))),(0,a.kt)("p",null,"For every ",(0,a.kt)("inlineCode",{parentName:"p"},"{import-scopedir}"),", the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," will read its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," to find out which ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," are being actively maintained (we will use ",(0,a.kt)("inlineCode",{parentName:"p"},"{import-saf}")," to refer to the contents of this ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),")."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"Reading a SAF may require authentication, e.g. when the scopedir of the other scope is in a private or enterprise repo. How the MRG importer will be dealing with this remains to be specified.")),(0,a.kt)("p",null,"We will use:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{other-scopetag}")," = the ",(0,a.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field in the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope")," section of ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-saf}"),";"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{other-glossarydir}")," = the ",(0,a.kt)("inlineCode",{parentName:"li"},"glossarydir"),"-field in the ",(0,a.kt)("inlineCode",{parentName:"li"},"scope")," section of ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-saf}"),";")),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-files/saf#versions"},"versions-section")," in ",(0,a.kt)("inlineCode",{parentName:"p"},"{import-saf}")," specifies which ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," are actively maintained within the other ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and hence have to be imported. Every such ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is specified by an entry in this section, and must hence be processed to import the associated ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),". "),(0,a.kt)("p",null,"To specify one such process, we will use:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{other-vsntag}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"vsntag"),"-field in the element of the ",(0,a.kt)("inlineCode",{parentName:"li"},"versions")," section of ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-saf}")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"{other-altvsntags}")," = ",(0,a.kt)("inlineCode",{parentName:"li"},"altvsntags"),"-field in an element of the ",(0,a.kt)("inlineCode",{parentName:"li"},"versions")," section of ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-saf}"))),(0,a.kt)("p",null,"To import the associated ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),", here is what we do:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"read the file ",(0,a.kt)("inlineCode",{parentName:"li"},"{import-scopedir}/{import-glossarydir}/mrg.{other-scopetag}.{other-vsntag}.yaml"),", which is the file that contains the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that needs to be imported. If that file doesn't exist, this results in the bahaviour as specified by the ",(0,a.kt)("inlineCode",{parentName:"li"},"")," value of the ",(0,a.kt)("inlineCode",{parentName:"li"},"onNotExist")," parameter. Default is ",(0,a.kt)("inlineCode",{parentName:"li"},"throw"),".",(0,a.kt)("admonition",{parentName:"li",title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"It may well be possible that contents of the mrg may need to be processed.\nThis is due to the fact that ",(0,a.kt)("inlineCode",{parentName:"p"},"scopetag"),"s are 'local' names for referring to scopes and every scope gets to decide on its own scoptag names. So the meaning of 'scopetags' cannot be transferred across scopes. We have to use universal/fixed identifiers, such as a ",(0,a.kt)("inlineCode",{parentName:"p"},"scopedir"),"-URL to identify scopes. Still, local names can be useful (and are necessary), so we'll have to figure out what the impact of this is.\ned:::"))),(0,a.kt)("li",{parentName:"ul"},"write the contents to ",(0,a.kt)("inlineCode",{parentName:"li"},"{my-scopedir}/{my-glossarydir}/mrg.{import-scopetag}.{other-vsntag}.yaml"),", overwriting a file that has the same name if that were to exist."),(0,a.kt)("li",{parentName:"ul"},"for every ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," in ",(0,a.kt)("inlineCode",{parentName:"li"},"{other-altvsntags}")," (which we call ",(0,a.kt)("inlineCode",{parentName:"li"},"{other-altvsntag}"),"), a symbolic link ",(0,a.kt)("inlineCode",{parentName:"li"},"mrg.{import-scopetag}.{other-altvsntag}.yaml")," is created in the ",(0,a.kt)("inlineCode",{parentName:"li"},"{my-scopedir}/{my-glossarydir}/")," directory, that links to the ",(0,a.kt)("inlineCode",{parentName:"li"},"mrg.{import-scopetag}.{other-vsntag}.yaml")," file that was just created in that same directory.")),(0,a.kt)("admonition",{type:"note"},(0,a.kt)("mdxAdmonitionTitle",{parentName:"admonition"},"NOTE the change of the ",(0,a.kt)("inlineCode",{parentName:"mdxAdmonitionTitle"},"scopetag")," part in the filename!"),(0,a.kt)("p",{parentName:"admonition"},"The name of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which it is imported may differ from the name of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is imported. The reason for this is that the names (",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," that are used in these ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," to refer to the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from where ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," are imported, may differ.")),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," logs every error- and/or warning condition that it comes across while processing its configuration file, commandline parameters, and input files, in a way that helps tool-operators and document ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to identify and fix such conditions."),(0,a.kt)("h2",{id:"deploying-the-tool"},"Deploying the Tool"),(0,a.kt)("p",null,"The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and author/modify CI-pipes to use that deployment."))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0cdee2ba.8dbc3fd0.js b/assets/js/0cdee2ba.653a9f10.js similarity index 98% rename from assets/js/0cdee2ba.8dbc3fd0.js rename to assets/js/0cdee2ba.653a9f10.js index 85b3e24a0e..cd93ba9f3a 100644 --- a/assets/js/0cdee2ba.8dbc3fd0.js +++ b/assets/js/0cdee2ba.653a9f10.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[6135],{3905:function(e,t,r){r.d(t,{Zo:function(){return m},kt:function(){return l}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},m=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),f=p(r),l=o,d=f["".concat(c,".").concat(l)]||f[l]||u[l]||i;return r?n.createElement(d,a(a({ref:t},m),{},{components:r})):n.createElement(d,a({ref:t},m))}));function l(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=f;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var p=2;p=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},m=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),f=p(r),l=o,d=f["".concat(c,".").concat(l)]||f[l]||u[l]||i;return r?n.createElement(d,a(a({ref:t},m),{},{components:r})):n.createElement(d,a({ref:t},m))}));function l(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=f;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var p=2;p=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},l=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},p=o.forwardRef((function(e,t){var i=e.components,a=e.mdxType,n=e.originalType,c=e.parentName,l=r(e,["components","mdxType","originalType","parentName"]),p=h(i),m=a,f=p["".concat(c,".").concat(m)]||p[m]||d[m]||n;return i?o.createElement(f,s(s({ref:t},l),{},{components:i})):o.createElement(f,s({ref:t},l))}));function m(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=i.length,s=new Array(n);s[0]=p;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:a,s[1]=r;for(var h=2;h child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function p(e){var t=e.values,i=e.children;return(0,a.useMemo)((function(){var e=null!=t?t:d(i);return function(e){var t=(0,h.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,i])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function f(e){var t=e.queryString,i=void 0!==t&&t,o=e.groupId,n=(0,r.k6)(),s=function(e){var t=e.queryString,i=void 0!==t&&t,o=e.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!o)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=o?o:null}({queryString:i,groupId:o});return[(0,c._X)(s),(0,a.useCallback)((function(e){if(s){var t=new URLSearchParams(n.location.search);t.set(s,e),n.replace(Object.assign({},n.location,{search:t.toString()}))}}),[s,n])]}function g(e){var t,i,o,n,s=e.defaultValue,r=e.queryString,c=void 0!==r&&r,h=e.groupId,d=p(e),g=(0,a.useState)((function(){return function(e){var t,i=e.defaultValue,o=e.tabValues;if(0===o.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!m({value:i,tabValues:o}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+o.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var a=null!=(t=o.find((function(e){return e.default})))?t:o[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:s,tabValues:d})})),u=g[0],v=g[1],y=f({queryString:c,groupId:h}),b=y[0],k=y[1],w=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:h}.groupId),i=(0,l.Nk)(t),o=i[0],n=i[1],[o,(0,a.useCallback)((function(e){t&&n.set(e)}),[t,n])]),S=w[0],N=w[1],x=function(){var e=null!=b?b:S;return m({value:e,tabValues:d})?e:null}();return(0,a.useLayoutEffect)((function(){x&&v(x)}),[x]),{selectedValue:u,selectValue:(0,a.useCallback)((function(e){if(!m({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);v(e),k(e),N(e)}),[k,N,d]),tabValues:d}}var u=i(2389),v="tabList__CuJ",y="tabItem_LNqP";function b(e){var t=e.className,i=e.block,r=e.selectedValue,c=e.selectValue,h=e.tabValues,l=[],d=(0,s.o5)().blockElementScrollPositionUntilNextRender,p=function(e){var t=e.currentTarget,i=l.indexOf(t),o=h[i].value;o!==r&&(d(t),c(o))},m=function(e){var t,i=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":var o,a=l.indexOf(e.currentTarget)+1;i=null!=(o=l[a])?o:l[0];break;case"ArrowLeft":var n,s=l.indexOf(e.currentTarget)-1;i=null!=(n=l[s])?n:l[l.length-1]}null==(t=i)||t.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},t)},h.map((function(e){var t=e.value,i=e.label,s=e.attributes;return a.createElement("li",(0,o.Z)({role:"tab",tabIndex:r===t?0:-1,"aria-selected":r===t,key:t,ref:function(e){return l.push(e)},onKeyDown:m,onClick:p},s,{className:(0,n.Z)("tabs__item",y,null==s?void 0:s.className,{"tabs__item--active":r===t})}),null!=i?i:t)})))}function k(e){var t=e.lazy,i=e.children,o=e.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(t){var s=n.find((function(e){return e.props.value===o}));return s?(0,a.cloneElement)(s,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},n.map((function(e,t){return(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==o})})))}function w(e){var t=g(e);return a.createElement("div",{className:(0,n.Z)("tabs-container",v)},a.createElement(b,(0,o.Z)({},e,t)),a.createElement(k,(0,o.Z)({},e,t)))}function S(e){var t=(0,u.Z)();return a.createElement(w,(0,o.Z)({key:String(t)},e))}},1794:function(e,t,i){i.r(t),i.d(t,{assets:function(){return l},contentTitle:function(){return c},default:function(){return m},frontMatter:function(){return r},metadata:function(){return h},toc:function(){return d}});var o=i(7462),a=i(3366),n=(i(7294),i(3905)),s=(i(4996),i(4866),i(5162),["components"]),r={id:"saf",sidebar_label:"SAF (Scope Admin File)",date:20230103},c="Scope Administration File (SAF)",h={unversionedId:"spec-files/saf",id:"spec-files/saf",title:"Scope Administration File (SAF)",description:"Every scope MUST have exactly one Scope Administration File or SAF, i.e. a file contains whatever needs to be administered in the scope, and that various tools need to find e.g. the scope's MRG, curated texts, scopetags, etc.",source:"@site/docs/spec-files/11-saf.md",sourceDirName:"spec-files",slug:"/spec-files/saf",permalink:"/tev2-specifications/docs/spec-files/saf",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-files/11-saf.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:11,frontMatter:{id:"saf",sidebar_label:"SAF (Scope Admin File)",date:20230103},sidebar:"tev2SideBar",previous:{title:"Curated Texts",permalink:"/tev2-specifications/docs/spec-files/ctext"},next:{title:"Profile Templates",permalink:"/tev2-specifications/docs/spec-files/profile-templates"}},l={},d=[{value:"Scope Administration File Field Descriptions",id:"scope-administration-file-field-descriptions",level:2},{value:"SAF Terminology - Defining the Scope itself",id:"terminology",level:3},{value:"SAF Scopes - Mapping Scopetags and Scopedirs",id:"scopes",level:3},{value:"SAF Versions - Enabling changes and updates in a scope's Terminology",id:"versions",level:3}],p={toc:d};function m(e){var t=e.components,i=(0,a.Z)(e,s);return(0,n.kt)("wrapper",(0,o.Z)({},p,i,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"scope-administration-file-saf"},"Scope Administration File (SAF)"),(0,n.kt)("p",null,"Every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," MUST have exactly one Scope Administration File or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", i.e. a file contains whatever needs to be administered in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and that various tools need to find e.g. the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags"),", etc."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," MUST be located in the (root of the) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),", and is called ",(0,n.kt)("inlineCode",{parentName:"p"},"saf.yaml"),". It is to be created and maintained by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("p",null,"This document specifies the structure of such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAFs"),"."),(0,n.kt)("h2",{id:"scope-administration-file-field-descriptions"},"Scope Administration File Field Descriptions"),(0,n.kt)("p",null,"A ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," has three main parts, which we refer to as 'sections':"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"scope"))," (singular) section defines meta-data concerning the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," itself, both for technical use and human use. It shows where directories and files live that ar part of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and also ways in which people can contribute, raise issues, see what's going on, discuss, etc."),(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"scopes"))," (plural) section contains a mapping between ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," that are used within the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedirs"),". This enables tools to find the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of these ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes"),", and from there all other directories, files etc. that live within them, e.g. to use/import their data."),(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"versions"))," section specifies all versions of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that are actively maintained by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and for each of them, the set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that constitute this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),".")),(0,n.kt)("p",null,"The following sections specify the fields for each of these parts."),(0,n.kt)("h3",{id:"terminology"},"SAF Terminology - Defining the Scope itself"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Example of a `scope` section"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"#\n# This is a Scope Administration File that can be used in conjunction with TEv2.\n#\n# The first section defines meta-data concerning the scope itself, both for technical use and human use.\n# It shows where directories and files live that ar part of the scope, and also\n# ways in which people can contribute, raise issues, see what's going on, discuss, etc.\n#\nscope:\n scopetag: tev2 # identifier that curators have determined for this terminology\n scopedir: https://github.com/tno-terminology-design/tev2-specifications/tree/master/docs # URL of the scope-directory\n curatedir: terms # directory where all curated files are located. Full URL is `scopedir`/`curatedir`\n glossarydir: glossaries # directory where all glossary files and related stuff are located. Full URL is `scopedir`/`glossarydir`\n defaultvsn: latest # vsntag that identifies the default terminology. MRG is located at `scopedir`/`glossarydir`/mrg.`scopetag`.`defaultvsn`.yaml\n license: LICENSE.md # file that contains the (default) licensing conditions. Full URL is `scopedir`/`license`\n statuses: [ proposed, approved, deprecated ] # list of status tags that are defined for semantic units in this scope\n issues: https://github.com/tno-terminology-design/tev2-specifications/issues # URL where issues can be raised and handled\n website: https://tno-terminology-design.github.io/tev2-specifications/docs-overview # base URL for creating links to rendered versions of Curated Texts\n curators: # contacting individual curators\n - name: RieksJ\n email: # we split up the email address to reduce the likelihood of the address being harvested for spamming\n id: rieks.joosten\n at: tno.nl\n"))),(0,n.kt)("p",null,"The following fields are defined for the ",(0,n.kt)("inlineCode",{parentName:"p"},"scope")," section of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of this scope have determined for this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". The associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," is specified in the section ",(0,n.kt)("inlineCode",{parentName:"td"},"scopes"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL of the location of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," associated with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," listed in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetags")," field.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to the directory where all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated files")," are located. This directory may contain subdirectories to allow ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," to organize the files in any way they see fit. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},""),"/",(0,n.kt)("inlineCode",{parentName:"td"},""),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"glossarydir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to the directory where all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),"-related files are located. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},""),"/",(0,n.kt)("inlineCode",{parentName:"td"},""),". This directory SHOULD contain one ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," for every element in the version-section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", and one or multiple ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRGs"),". It MAY contain other files, e.g. containing instructions, headers, footers or other things that are necessary for generating specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossaries"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"website")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"base URL for creating links to rendered versions of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"Curated Texts"),". It should also serve as the home page of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"navpath")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to the directory where ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"Curated Texts")," are rendered. What ",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")," is for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"Curated Texts")," is, ",(0,n.kt)("inlineCode",{parentName:"td"},"navpath")," is for the rendered versions of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"Curated Texts"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"defaultvsn")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," for this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". The associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is located at ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"glossarydir"),"/mrg.",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag"),".",(0,n.kt)("inlineCode",{parentName:"td"},"defaultvsn"),".yaml")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"license")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"File in the root of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," that contains the (default) licensing data.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"statuses")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Ordered list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tag",hovertext:"Tag: an alphanumeric string that is used to identify Scopes (so called 'scopetags'), group Terms (so called 'grouptags'), or identify a specific version of a Terminology (so called 'versiontags') from within a specific Scope."},"tags")," that are defined in this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," for specifying stages in the life-cycle of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic units"),". The first element in the list represents the first stage, and the last element the last stage in the life-cycle.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"issues")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL where issues can be reported and handled.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"curators")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Data that can be used to contact individual ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators"),".")))),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"It might be more practical to move all of the stuff that is particular to this scope, but that is currently documented in the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopes")," section, to this section. We do then need to check throughout the documentation where that section is referenced, and correct such references.")),(0,n.kt)("h3",{id:"scopes"},"SAF Scopes - Mapping Scopetags and Scopedirs"),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetags")," section is a list that specifies a mapping between ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," as they are used in this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Example of a `scopes` section"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'#\n# The second section contains a mapping between scopetags that are used within the scope, and the associated scopedirs.\n# This enables tools to find the SAF of these scopes, and from there all other directories, files etc.\n# that live within them, e.g. to use/import their data.\n#\nscopes: #\n- scopetag: [ essiflab ] # definition of (scope) tag(s) that are used within this scope to refer to a specific terminology\n scopedir: https://github.com/essif-lab/framework/tree/master/docs # URL of the scope-directory\n- scopetag: [ essif-lab ] # define another scopetag for the same scopedir (just because you can)\n scopedir: https://github.com/essif-lab/framework/tree/master/docs # URL of the scope-directory\n- scopetag: [ ctwg ] # definition of (scope)tag(s) that are used within this scope to refer to a specific terminology\n scopedir: https://github.com/trustoverip/ctwg # URL of the scope-directory\n'))),(0,n.kt)("p",null,"The following fields are defined for the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopes")," section of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"It may be simpler to change the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetags"),"-field, which is currently a list of scopetags, into a ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag"),"-field, which would specifiy a single scopetag. This would encourage curators to use no more than one scopetag for each scope they refer to, but if they really wanted to, they could make multiple entries with different scopetags that refer to the same scopedir.")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:null},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},"A (single) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag"),", that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curator(s)")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," has decided to use to refer to (the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of) a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},"URL of the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),".")))),(0,n.kt)("h3",{id:"versions"},"SAF Versions - Enabling changes and updates in a scope's Terminology"),(0,n.kt)("p",null,"The third section (called ",(0,n.kt)("inlineCode",{parentName:"p"},"versions"),") in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," specifies the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," that are actively maintained by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". Each such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," (within that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),") by a (main) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," and optionally also alternative ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags"),". The contents of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is specified by so-called ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria"),". The ",(0,n.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-tools/terminology-construction"},"Terminology Construction page")," documents the kinds of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," that are available, and how they work in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," selection process."),(0,n.kt)("p",null,"This ",(0,n.kt)("inlineCode",{parentName:"p"},"versions")," section contains a list of fields that each specify one ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," and some meta-data, e.g., regarding the state/validity of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," over time. This may of interest for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," as they need to decide whether or not to import ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," from such a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),"."),(0,n.kt)("p",null,"There must be at least one such field in the ",(0,n.kt)("inlineCode",{parentName:"p"},"versions")," section, namely a field that specifies the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the scope, i.e., the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is identified by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that is specified in the ",(0,n.kt)("inlineCode",{parentName:"p"},"defaultvsn")," field of ",(0,n.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-files/saf#terminology"},"the ",(0,n.kt)("inlineCode",{parentName:"a"},"scope")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Example of a `versions` section"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'#\n# The third section specifies the versions that are actively maintained by the curators.\n# For each version, the set of terms is selected that constitute the terminology.\n# See the Glossary Generation Tool (GGT) for details about the syntax and semantics.\n#\nversions:\n - vsntag: v0.9.4 # a versiontag that identifies this version from all other versions in the SAF\n altvsntags: # alternative verstiontags\n - latest\n - 0x921456\n termselcrit:\n - "tags[management]@essif-lab" # import all terms from the mrg of `essif-lab:latest` that have grouptag `management`.\n - "terms[party,community](@essif-lab:0.9.4)" # import the terms `party` and `community` from the mrg of `essif-lab:0.9.4`.\n - "*@tev2" # import all terms defined in the scope `tev2`\n status: proposed\n from: 20220312\n to:\n - vsntag: test # a versiontag that identifies this version from all other versions in the SAF\n altvsntags: # alternative verstiontags\n - 0x654129\n termselcrit:\n - "*@essif-lab" # import all terms defined in the scope `essif-lab`\n - "-tags[terminology]" # remove all terms tagged with the grouptag `terminology`\n - "*@tev2" # import all terms defined in the scope `tev2`\n'))),(0,n.kt)("p",null,"The following fields are defined for the ",(0,n.kt)("inlineCode",{parentName:"p"},"versions")," section of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:null},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"Versiontag")," that that is used to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," this version within the set of all other versions that are maintained within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". in this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". It MUST NOT be changed during the lifetime of this version.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-\\.]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"altvsntags")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"List of alternative ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," that may be used to refer to this version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". A typical use of this field would be to tag a version as the 'latest' version.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-\\.]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"license")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"File that contains the (default) licensing conditions. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"license"),". If not specified, its value defaults to the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"license")," field in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section (of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"). The purpose of this field is to allow different versions of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," to have different licenses.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"termselcrit")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},"List of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," that are used to generate (this version of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". See ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-tools/terminology-construction"},"Terminology Construction")," for details.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"status")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the status of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term"),". (",(0,n.kt)("a",{parentName:"td",href:"@"},"Communities")," of) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," may specify values for this field. If not specified, the status SHOULD be assumed to be 'concept', 'draft', 'proposed', or similar. An example is the ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/trustoverip/concepts-and-terminology-wg/blob/master/docs/status-tags.md"},"status tags used by ToIP"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"from")),(0,n.kt)("td",{parentName:"tr",align:"center"},"F"),(0,n.kt)("td",{parentName:"tr",align:null},"Date at which it was decided to establish this version.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"to")),(0,n.kt)("td",{parentName:"tr",align:"center"},"F"),(0,n.kt)("td",{parentName:"tr",align:null},"Date at which this version will expire (or has expired).")))),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The ",(0,n.kt)("inlineCode",{parentName:"p"},"from")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"to")," dates have been included to (in future) enable one to refer to a specific version of the terminology that was valid at a particular date. This feature needs to be worked out, and will impact ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-tools/terminology-construction"},"terminology construction"),", ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-syntax/term-ref-syntax"},"TermRef specs"),", and various tools.")))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[812],{3905:function(e,t,i){i.d(t,{Zo:function(){return l},kt:function(){return m}});var o=i(7294);function a(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function n(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,o)}return i}function s(e){for(var t=1;t=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},l=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},p=o.forwardRef((function(e,t){var i=e.components,a=e.mdxType,n=e.originalType,c=e.parentName,l=r(e,["components","mdxType","originalType","parentName"]),p=h(i),m=a,f=p["".concat(c,".").concat(m)]||p[m]||d[m]||n;return i?o.createElement(f,s(s({ref:t},l),{},{components:i})):o.createElement(f,s({ref:t},l))}));function m(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=i.length,s=new Array(n);s[0]=p;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:a,s[1]=r;for(var h=2;h child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function p(e){var t=e.values,i=e.children;return(0,a.useMemo)((function(){var e=null!=t?t:d(i);return function(e){var t=(0,h.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,i])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function f(e){var t=e.queryString,i=void 0!==t&&t,o=e.groupId,n=(0,r.k6)(),s=function(e){var t=e.queryString,i=void 0!==t&&t,o=e.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!o)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=o?o:null}({queryString:i,groupId:o});return[(0,c._X)(s),(0,a.useCallback)((function(e){if(s){var t=new URLSearchParams(n.location.search);t.set(s,e),n.replace(Object.assign({},n.location,{search:t.toString()}))}}),[s,n])]}function g(e){var t,i,o,n,s=e.defaultValue,r=e.queryString,c=void 0!==r&&r,h=e.groupId,d=p(e),g=(0,a.useState)((function(){return function(e){var t,i=e.defaultValue,o=e.tabValues;if(0===o.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!m({value:i,tabValues:o}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+o.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var a=null!=(t=o.find((function(e){return e.default})))?t:o[0];if(!a)throw new Error("Unexpected error: 0 tabValues");return a.value}({defaultValue:s,tabValues:d})})),u=g[0],v=g[1],y=f({queryString:c,groupId:h}),b=y[0],k=y[1],w=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:h}.groupId),i=(0,l.Nk)(t),o=i[0],n=i[1],[o,(0,a.useCallback)((function(e){t&&n.set(e)}),[t,n])]),S=w[0],N=w[1],x=function(){var e=null!=b?b:S;return m({value:e,tabValues:d})?e:null}();return(0,a.useLayoutEffect)((function(){x&&v(x)}),[x]),{selectedValue:u,selectValue:(0,a.useCallback)((function(e){if(!m({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);v(e),k(e),N(e)}),[k,N,d]),tabValues:d}}var u=i(2389),v="tabList__CuJ",y="tabItem_LNqP";function b(e){var t=e.className,i=e.block,r=e.selectedValue,c=e.selectValue,h=e.tabValues,l=[],d=(0,s.o5)().blockElementScrollPositionUntilNextRender,p=function(e){var t=e.currentTarget,i=l.indexOf(t),o=h[i].value;o!==r&&(d(t),c(o))},m=function(e){var t,i=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":var o,a=l.indexOf(e.currentTarget)+1;i=null!=(o=l[a])?o:l[0];break;case"ArrowLeft":var n,s=l.indexOf(e.currentTarget)-1;i=null!=(n=l[s])?n:l[l.length-1]}null==(t=i)||t.focus()};return a.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},t)},h.map((function(e){var t=e.value,i=e.label,s=e.attributes;return a.createElement("li",(0,o.Z)({role:"tab",tabIndex:r===t?0:-1,"aria-selected":r===t,key:t,ref:function(e){return l.push(e)},onKeyDown:m,onClick:p},s,{className:(0,n.Z)("tabs__item",y,null==s?void 0:s.className,{"tabs__item--active":r===t})}),null!=i?i:t)})))}function k(e){var t=e.lazy,i=e.children,o=e.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(t){var s=n.find((function(e){return e.props.value===o}));return s?(0,a.cloneElement)(s,{className:"margin-top--md"}):null}return a.createElement("div",{className:"margin-top--md"},n.map((function(e,t){return(0,a.cloneElement)(e,{key:t,hidden:e.props.value!==o})})))}function w(e){var t=g(e);return a.createElement("div",{className:(0,n.Z)("tabs-container",v)},a.createElement(b,(0,o.Z)({},e,t)),a.createElement(k,(0,o.Z)({},e,t)))}function S(e){var t=(0,u.Z)();return a.createElement(w,(0,o.Z)({key:String(t)},e))}},1794:function(e,t,i){i.r(t),i.d(t,{assets:function(){return l},contentTitle:function(){return c},default:function(){return m},frontMatter:function(){return r},metadata:function(){return h},toc:function(){return d}});var o=i(7462),a=i(3366),n=(i(7294),i(3905)),s=(i(4996),i(4866),i(5162),["components"]),r={id:"saf",sidebar_label:"SAF (Scope Admin File)",date:20230103},c="Scope Administration File (SAF)",h={unversionedId:"spec-files/saf",id:"spec-files/saf",title:"Scope Administration File (SAF)",description:"Every scope MUST have exactly one Scope Administration File or SAF, i.e. a file contains whatever needs to be administered in the scope, and that various tools need to find e.g. the scope's MRG, curated texts, scopetags, etc.",source:"@site/docs/spec-files/11-saf.md",sourceDirName:"spec-files",slug:"/spec-files/saf",permalink:"/tev2-specifications/docs/spec-files/saf",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-files/11-saf.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:11,frontMatter:{id:"saf",sidebar_label:"SAF (Scope Admin File)",date:20230103},sidebar:"tev2SideBar",previous:{title:"Curated Texts",permalink:"/tev2-specifications/docs/spec-files/ctext"},next:{title:"Profile Templates",permalink:"/tev2-specifications/docs/spec-files/profile-templates"}},l={},d=[{value:"Scope Administration File Field Descriptions",id:"scope-administration-file-field-descriptions",level:2},{value:"SAF Terminology - Defining the Scope itself",id:"terminology",level:3},{value:"SAF Scopes - Mapping Scopetags and Scopedirs",id:"scopes",level:3},{value:"SAF Versions - Enabling changes and updates in a scope's Terminology",id:"versions",level:3}],p={toc:d};function m(e){var t=e.components,i=(0,a.Z)(e,s);return(0,n.kt)("wrapper",(0,o.Z)({},p,i,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"scope-administration-file-saf"},"Scope Administration File (SAF)"),(0,n.kt)("p",null,"Every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," MUST have exactly one Scope Administration File or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", i.e. a file contains whatever needs to be administered in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and that various tools need to find e.g. the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags"),", etc."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," MUST be located in the (root of the) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),", and is called ",(0,n.kt)("inlineCode",{parentName:"p"},"saf.yaml"),". It is to be created and maintained by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("p",null,"This document specifies the structure of such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAFs"),"."),(0,n.kt)("h2",{id:"scope-administration-file-field-descriptions"},"Scope Administration File Field Descriptions"),(0,n.kt)("p",null,"A ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," has three main parts, which we refer to as 'sections':"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"scope"))," (singular) section defines meta-data concerning the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," itself, both for technical use and human use. It shows where directories and files live that ar part of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and also ways in which people can contribute, raise issues, see what's going on, discuss, etc."),(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"scopes"))," (plural) section contains a mapping between ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," that are used within the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedirs"),". This enables tools to find the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of these ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes"),", and from there all other directories, files etc. that live within them, e.g. to use/import their data."),(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"versions"))," section specifies all versions of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that are actively maintained by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and for each of them, the set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that constitute this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),".")),(0,n.kt)("p",null,"The following sections specify the fields for each of these parts."),(0,n.kt)("h3",{id:"terminology"},"SAF Terminology - Defining the Scope itself"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Example of a `scope` section"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"#\n# This is a Scope Administration File that can be used in conjunction with TEv2.\n#\n# The first section defines meta-data concerning the scope itself, both for technical use and human use.\n# It shows where directories and files live that ar part of the scope, and also\n# ways in which people can contribute, raise issues, see what's going on, discuss, etc.\n#\nscope:\n scopetag: tev2 # identifier that curators have determined for this terminology\n scopedir: https://github.com/tno-terminology-design/tev2-specifications/tree/master/docs # URL of the scope-directory\n curatedir: terms # directory where all curated files are located. Full URL is `scopedir`/`curatedir`\n glossarydir: glossaries # directory where all glossary files and related stuff are located. Full URL is `scopedir`/`glossarydir`\n defaultvsn: latest # vsntag that identifies the default terminology. MRG is located at `scopedir`/`glossarydir`/mrg.`scopetag`.`defaultvsn`.yaml\n license: LICENSE.md # file that contains the (default) licensing conditions. Full URL is `scopedir`/`license`\n statuses: [ proposed, approved, deprecated ] # list of status tags that are defined for semantic units in this scope\n issues: https://github.com/tno-terminology-design/tev2-specifications/issues # URL where issues can be raised and handled\n website: https://tno-terminology-design.github.io/tev2-specifications/docs-overview # base URL for creating links to rendered versions of Curated Texts\n curators: # contacting individual curators\n - name: RieksJ\n email: # we split up the email address to reduce the likelihood of the address being harvested for spamming\n id: rieks.joosten\n at: tno.nl\n"))),(0,n.kt)("p",null,"The following fields are defined for the ",(0,n.kt)("inlineCode",{parentName:"p"},"scope")," section of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of this scope have determined for this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". The associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," is specified in the section ",(0,n.kt)("inlineCode",{parentName:"td"},"scopes"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL of the location of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," associated with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," listed in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetags")," field.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to the directory where all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated files")," are located. This directory may contain subdirectories to allow ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," to organize the files in any way they see fit. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},""),"/",(0,n.kt)("inlineCode",{parentName:"td"},""),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"glossarydir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to the directory where all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),"-related files are located. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},""),"/",(0,n.kt)("inlineCode",{parentName:"td"},""),". This directory SHOULD contain one ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," for every element in the version-section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", and one or multiple ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRGs"),". It MAY contain other files, e.g. containing instructions, headers, footers or other things that are necessary for generating specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossaries"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"website")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"base URL for creating links to rendered versions of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"Curated Texts"),". It should also serve as the home page of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"navpath")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to the directory where ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"Curated Texts")," are rendered. What ",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")," is for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"Curated Texts")," is, ",(0,n.kt)("inlineCode",{parentName:"td"},"navpath")," is for the rendered versions of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"Curated Texts"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"defaultvsn")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," for this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". The associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is located at ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"glossarydir"),"/mrg.",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag"),".",(0,n.kt)("inlineCode",{parentName:"td"},"defaultvsn"),".yaml")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"license")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"File in the root of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," that contains the (default) licensing data.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"statuses")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Ordered list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tag",hovertext:"Tag: an alphanumeric string that is used to identify Scopes (so called 'scopetags'), group Terms (so called 'grouptags'), or identify a specific version of a Terminology (so called 'versiontags') from within a specific Scope."},"tags")," that are defined in this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," for specifying stages in the life-cycle of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic units"),". The first element in the list represents the first stage, and the last element the last stage in the life-cycle.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"issues")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL where issues can be reported and handled.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"curators")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Data that can be used to contact individual ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators"),".")))),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"It might be more practical to move all of the stuff that is particular to this scope, but that is currently documented in the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopes")," section, to this section. We do then need to check throughout the documentation where that section is referenced, and correct such references.")),(0,n.kt)("h3",{id:"scopes"},"SAF Scopes - Mapping Scopetags and Scopedirs"),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetags")," section is a list that specifies a mapping between ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," as they are used in this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Example of a `scopes` section"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'#\n# The second section contains a mapping between scopetags that are used within the scope, and the associated scopedirs.\n# This enables tools to find the SAF of these scopes, and from there all other directories, files etc.\n# that live within them, e.g. to use/import their data.\n#\nscopes: #\n- scopetag: [ essiflab ] # definition of (scope) tag(s) that are used within this scope to refer to a specific terminology\n scopedir: https://github.com/essif-lab/framework/tree/master/docs # URL of the scope-directory\n- scopetag: [ essif-lab ] # define another scopetag for the same scopedir (just because you can)\n scopedir: https://github.com/essif-lab/framework/tree/master/docs # URL of the scope-directory\n- scopetag: [ ctwg ] # definition of (scope)tag(s) that are used within this scope to refer to a specific terminology\n scopedir: https://github.com/trustoverip/ctwg # URL of the scope-directory\n'))),(0,n.kt)("p",null,"The following fields are defined for the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopes")," section of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"It may be simpler to change the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetags"),"-field, which is currently a list of scopetags, into a ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag"),"-field, which would specifiy a single scopetag. This would encourage curators to use no more than one scopetag for each scope they refer to, but if they really wanted to, they could make multiple entries with different scopetags that refer to the same scopedir.")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:null},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},"A (single) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag"),", that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curator(s)")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," has decided to use to refer to (the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of) a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},"URL of the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),".")))),(0,n.kt)("h3",{id:"versions"},"SAF Versions - Enabling changes and updates in a scope's Terminology"),(0,n.kt)("p",null,"The third section (called ",(0,n.kt)("inlineCode",{parentName:"p"},"versions"),") in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," specifies the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," that are actively maintained by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". Each such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," (within that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),") by a (main) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," and optionally also alternative ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags"),". The contents of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is specified by so-called ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria"),". The ",(0,n.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-tools/terminology-construction"},"Terminology Construction page")," documents the kinds of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," that are available, and how they work in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," selection process."),(0,n.kt)("p",null,"This ",(0,n.kt)("inlineCode",{parentName:"p"},"versions")," section contains a list of fields that each specify one ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," and some meta-data, e.g., regarding the state/validity of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," over time. This may of interest for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," as they need to decide whether or not to import ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," from such a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),"."),(0,n.kt)("p",null,"There must be at least one such field in the ",(0,n.kt)("inlineCode",{parentName:"p"},"versions")," section, namely a field that specifies the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the scope, i.e., the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is identified by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that is specified in the ",(0,n.kt)("inlineCode",{parentName:"p"},"defaultvsn")," field of ",(0,n.kt)("a",{parentName:"p",href:"/tev2-specifications/docs/spec-files/saf#terminology"},"the ",(0,n.kt)("inlineCode",{parentName:"a"},"scope")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Example of a `versions` section"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},'#\n# The third section specifies the versions that are actively maintained by the curators.\n# For each version, the set of terms is selected that constitute the terminology.\n# See the Glossary Generation Tool (GGT) for details about the syntax and semantics.\n#\nversions:\n - vsntag: v0.9.4 # a versiontag that identifies this version from all other versions in the SAF\n altvsntags: # alternative verstiontags\n - latest\n - 0x921456\n termselcrit:\n - "tags[management]@essif-lab" # import all terms from the mrg of `essif-lab:latest` that have grouptag `management`.\n - "terms[party,community](@essif-lab:0.9.4)" # import the terms `party` and `community` from the mrg of `essif-lab:0.9.4`.\n - "*@tev2" # import all terms defined in the scope `tev2`\n status: proposed\n from: 20220312\n to:\n - vsntag: test # a versiontag that identifies this version from all other versions in the SAF\n altvsntags: # alternative verstiontags\n - 0x654129\n termselcrit:\n - "*@essif-lab" # import all terms defined in the scope `essif-lab`\n - "-tags[terminology]" # remove all terms tagged with the grouptag `terminology`\n - "*@tev2" # import all terms defined in the scope `tev2`\n'))),(0,n.kt)("p",null,"The following fields are defined for the ",(0,n.kt)("inlineCode",{parentName:"p"},"versions")," section of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:null},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"Versiontag")," that that is used to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," this version within the set of all other versions that are maintained within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". in this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". It MUST NOT be changed during the lifetime of this version.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-\\.]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"altvsntags")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"List of alternative ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," that may be used to refer to this version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". A typical use of this field would be to tag a version as the 'latest' version.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-\\.]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"license")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"File that contains the (default) licensing conditions. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"license"),". If not specified, its value defaults to the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"license")," field in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section (of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"). The purpose of this field is to allow different versions of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," to have different licenses.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"termselcrit")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},"List of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," that are used to generate (this version of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". See ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-tools/terminology-construction"},"Terminology Construction")," for details.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"status")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the status of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term"),". (",(0,n.kt)("a",{parentName:"td",href:"@"},"Communities")," of) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," may specify values for this field. If not specified, the status SHOULD be assumed to be 'concept', 'draft', 'proposed', or similar. An example is the ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/trustoverip/concepts-and-terminology-wg/blob/master/docs/status-tags.md"},"status tags used by ToIP"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"from")),(0,n.kt)("td",{parentName:"tr",align:"center"},"F"),(0,n.kt)("td",{parentName:"tr",align:null},"Date at which it was decided to establish this version.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"to")),(0,n.kt)("td",{parentName:"tr",align:"center"},"F"),(0,n.kt)("td",{parentName:"tr",align:null},"Date at which this version will expire (or has expired).")))),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The ",(0,n.kt)("inlineCode",{parentName:"p"},"from")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"to")," dates have been included to (in future) enable one to refer to a specific version of the terminology that was valid at a particular date. This feature needs to be worked out, and will impact ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-tools/terminology-construction"},"terminology construction"),", ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-syntax/term-ref-syntax"},"TermRef specs"),", and various tools.")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/0fbf73e8.177c6c67.js b/assets/js/0fbf73e8.d6f80576.js similarity index 99% rename from assets/js/0fbf73e8.177c6c67.js rename to assets/js/0fbf73e8.d6f80576.js index 79cd714491..3dd3dd5f72 100644 --- a/assets/js/0fbf73e8.177c6c67.js +++ b/assets/js/0fbf73e8.d6f80576.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[9446],{3905:function(e,t,i){i.d(t,{Zo:function(){return p},kt:function(){return d}});var o=i(7294);function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function s(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,o)}return i}function a(e){for(var t=1;t=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},p=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},l=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),l=h(i),d=n,f=l["".concat(c,".").concat(d)]||l[d]||m[d]||s;return i?o.createElement(f,a(a({ref:t},p),{},{components:i})):o.createElement(f,a({ref:t},p))}));function d(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=i.length,a=new Array(s);a[0]=l;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,a[1]=r;for(var h=2;h=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},p=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},l=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),l=h(i),d=n,f=l["".concat(c,".").concat(d)]||l[d]||m[d]||s;return i?o.createElement(f,a(a({ref:t},p),{},{components:i})):o.createElement(f,a({ref:t},p))}));function d(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=i.length,a=new Array(s);a[0]=l;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,a[1]=r;for(var h=2;h=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var l=i.createContext({}),p=function(e){var t=i.useContext(l),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},c=function(e){var t=p(e.components);return i.createElement(l.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,r=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),u=p(o),h=n,m=u["".concat(l,".").concat(h)]||u[h]||d[h]||r;return o?i.createElement(m,a(a({ref:t},c),{},{components:o})):i.createElement(m,a({ref:t},c))}));function h(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=o.length,a=new Array(r);a[0]=u;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var p=2;p")," ",(0,r.kt)("inlineCode",{parentName:"p"},"tno")," ",(0,r.kt)("inlineCode",{parentName:"p"},".")," ",(0,r.kt)("inlineCode",{parentName:"p"},"nl"),", or attend a ",(0,r.kt)("a",{parentName:"p",href:"https://wiki.trustoverip.org/display/HOME/CTWG+Meeting+Pages"},"ToIP CTWG meeting"),", where you express your interest and/or questions, and we'll take it from there."))}h.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[1536],{3905:function(e,t,o){o.d(t,{Zo:function(){return c},kt:function(){return h}});var i=o(7294);function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function r(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function a(e){for(var t=1;t=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var l=i.createContext({}),p=function(e){var t=i.useContext(l),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},c=function(e){var t=p(e.components);return i.createElement(l.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,r=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),u=p(o),h=n,m=u["".concat(l,".").concat(h)]||u[h]||d[h]||r;return o?i.createElement(m,a(a({ref:t},c),{},{components:o})):i.createElement(m,a({ref:t},c))}));function h(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=o.length,a=new Array(r);a[0]=u;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var p=2;p")," ",(0,r.kt)("inlineCode",{parentName:"p"},"tno")," ",(0,r.kt)("inlineCode",{parentName:"p"},".")," ",(0,r.kt)("inlineCode",{parentName:"p"},"nl"),", or attend a ",(0,r.kt)("a",{parentName:"p",href:"https://wiki.trustoverip.org/display/HOME/CTWG+Meeting+Pages"},"ToIP CTWG meeting"),", where you express your interest and/or questions, and we'll take it from there."))}h.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/156e271d.b5def4a8.js b/assets/js/156e271d.ad0b831c.js similarity index 99% rename from assets/js/156e271d.b5def4a8.js rename to assets/js/156e271d.ad0b831c.js index c3f09b3e59..df467a8996 100644 --- a/assets/js/156e271d.b5def4a8.js +++ b/assets/js/156e271d.ad0b831c.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[7082],{3905:function(e,t,o){o.d(t,{Zo:function(){return p},kt:function(){return l}});var i=o(7294);function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function s(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function a(e){for(var t=1;t=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},p=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),d=h(o),l=n,u=d["".concat(c,".").concat(l)]||d[l]||m[l]||s;return o?i.createElement(u,a(a({ref:t},p),{},{components:o})):i.createElement(u,a({ref:t},p))}));function l(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=o.length,a=new Array(s);a[0]=d;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,a[1]=r;for(var h=2;h=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},p=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),d=h(o),l=n,u=d["".concat(c,".").concat(l)]||d[l]||m[l]||s;return o?i.createElement(u,a(a({ref:t},p),{},{components:o})):i.createElement(u,a({ref:t},p))}));function l(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=o.length,a=new Array(s);a[0]=d;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,a[1]=r;for(var h=2;h=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),d=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},l=function(e){var t=d(e.components);return r.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=d(n),h=a,u=p["".concat(c,".").concat(h)]||p[h]||m[h]||i;return n?r.createElement(u,o(o({ref:t},l),{},{components:n})):r.createElement(u,o({ref:t},l))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:a,o[1]=s;for(var d=2;d=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),d=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},l=function(e){var t=d(e.components);return r.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=d(n),h=a,u=p["".concat(c,".").concat(h)]||p[h]||m[h]||i;return n?r.createElement(u,o(o({ref:t},l),{},{components:n})):r.createElement(u,o({ref:t},l))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:a,o[1]=s;for(var d=2;d=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=n.createContext({}),l=function(e){var t=n.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},p=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var o=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(o),h=r,u=m["".concat(c,".").concat(h)]||m[h]||d[h]||i;return o?n.createElement(u,a(a({ref:t},p),{},{components:o})):n.createElement(u,a({ref:t},p))}));function h(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=o.length,a=new Array(i);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,a[1]=s;for(var l=2;l=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=n.createContext({}),l=function(e){var t=n.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},p=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var o=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(o),h=r,u=m["".concat(c,".").concat(h)]||m[h]||d[h]||i;return o?n.createElement(u,a(a({ref:t},p),{},{components:o})):n.createElement(u,a({ref:t},p))}));function h(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=o.length,a=new Array(i);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,a[1]=s;for(var l=2;l=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=n.createContext({}),f=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},l=function(e){var t=f(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=f(r),u=i,d=p["".concat(c,".").concat(u)]||p[u]||m[u]||o;return r?n.createElement(d,a(a({ref:t},l),{},{components:r})):n.createElement(d,a({ref:t},l))}));function u(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,a=new Array(o);a[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var f=2;f:`, that [identifies](@) a [terminology](@) from within a particular [scope](@), and can also be used to find the [MRG](@) file (in the [glossarydir](@) of that same [scope](@)) that contains [entries](mrg-entry@) for every [term](@) contained in that [terminology](@).",hoverText:"a [text](identifier@), of the form @`:`, that [identifies](@) a [terminology](@) from within a particular [scope](@). If `` or `:` is omitted, their values are taken be the current (or default) ones.",synonymOf:null,grouptags:null,formPhrases:"terminology-identifier{ss}",status:"proposed",created:new Date("2023-09-29T00:00:00.000Z"),updated:new Date("2023-09-29T00:00:00.000Z"),contributors:"RieksJ",attribution:"[eSSIF-Lab](https://essif-lab.github.io/framework)",originalLicense:"[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"},c=void 0,f={unversionedId:"terms/terminology-identifier",id:"terms/terminology-identifier",title:"terminology-identifier",description:"",source:"@site/docs/terms/terminology-identifier.md",sourceDirName:"terms",slug:"/terms/terminology-identifier",permalink:"/tev2-specifications/docs/terms/terminology-identifier",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/terms/terminology-identifier.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",frontMatter:{term:"terminology-identifier",termType:"concept",isa:"identifier",bodyFile:"/spec-syntax/13-terminology-identifier-syntax.md",glossaryTerm:"Terminology Identifier",glossaryText:"a [text](identifier@), of the form `:`, that [identifies](@) a [terminology](@) from within a particular [scope](@), and can also be used to find the [MRG](@) file (in the [glossarydir](@) of that same [scope](@)) that contains [entries](mrg-entry@) for every [term](@) contained in that [terminology](@).",hoverText:"a [text](identifier@), of the form @`:`, that [identifies](@) a [terminology](@) from within a particular [scope](@). If `` or `:` is omitted, their values are taken be the current (or default) ones.",synonymOf:null,grouptags:null,formPhrases:"terminology-identifier{ss}",status:"proposed",created:"2023-09-29T00:00:00.000Z",updated:"2023-09-29T00:00:00.000Z",contributors:"RieksJ",attribution:"[eSSIF-Lab](https://essif-lab.github.io/framework)",originalLicense:"[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"},sidebar:"tev2SideBar",previous:{title:"Terminological Artifact",permalink:"/tev2-specifications/docs/terms/terminological-artifact"},next:{title:"Terminology Process",permalink:"/tev2-specifications/docs/terms/terminology-process"}},l={},m=[],p={toc:m};function u(e){var t=e.components,r=(0,i.Z)(e,a);return(0,o.kt)("wrapper",(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}))}u.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[7087],{3905:function(e,t,r){r.d(t,{Zo:function(){return l},kt:function(){return u}});var n=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=n.createContext({}),f=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},l=function(e){var t=f(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=f(r),u=i,d=p["".concat(c,".").concat(u)]||p[u]||m[u]||o;return r?n.createElement(d,a(a({ref:t},l),{},{components:r})):n.createElement(d,a({ref:t},l))}));function u(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,a=new Array(o);a[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var f=2;f:`, that [identifies](@) a [terminology](@) from within a particular [scope](@), and can also be used to find the [MRG](@) file (in the [glossarydir](@) of that same [scope](@)) that contains [entries](mrg-entry@) for every [term](@) contained in that [terminology](@).",hoverText:"a [text](identifier@), of the form @`:`, that [identifies](@) a [terminology](@) from within a particular [scope](@). If `` or `:` is omitted, their values are taken be the current (or default) ones.",synonymOf:null,grouptags:null,formPhrases:"terminology-identifier{ss}",status:"proposed",created:new Date("2023-09-29T00:00:00.000Z"),updated:new Date("2023-09-29T00:00:00.000Z"),contributors:"RieksJ",attribution:"[eSSIF-Lab](https://essif-lab.github.io/framework)",originalLicense:"[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"},c=void 0,f={unversionedId:"terms/terminology-identifier",id:"terms/terminology-identifier",title:"terminology-identifier",description:"",source:"@site/docs/terms/terminology-identifier.md",sourceDirName:"terms",slug:"/terms/terminology-identifier",permalink:"/tev2-specifications/docs/terms/terminology-identifier",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/terms/terminology-identifier.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",frontMatter:{term:"terminology-identifier",termType:"concept",isa:"identifier",bodyFile:"/spec-syntax/13-terminology-identifier-syntax.md",glossaryTerm:"Terminology Identifier",glossaryText:"a [text](identifier@), of the form `:`, that [identifies](@) a [terminology](@) from within a particular [scope](@), and can also be used to find the [MRG](@) file (in the [glossarydir](@) of that same [scope](@)) that contains [entries](mrg-entry@) for every [term](@) contained in that [terminology](@).",hoverText:"a [text](identifier@), of the form @`:`, that [identifies](@) a [terminology](@) from within a particular [scope](@). If `` or `:` is omitted, their values are taken be the current (or default) ones.",synonymOf:null,grouptags:null,formPhrases:"terminology-identifier{ss}",status:"proposed",created:"2023-09-29T00:00:00.000Z",updated:"2023-09-29T00:00:00.000Z",contributors:"RieksJ",attribution:"[eSSIF-Lab](https://essif-lab.github.io/framework)",originalLicense:"[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"},sidebar:"tev2SideBar",previous:{title:"Terminological Artifact",permalink:"/tev2-specifications/docs/terms/terminological-artifact"},next:{title:"Terminology Process",permalink:"/tev2-specifications/docs/terms/terminology-process"}},l={},m=[],p={toc:m};function u(e){var t=e.components,r=(0,i.Z)(e,a);return(0,o.kt)("wrapper",(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/1ebbe01d.60008461.js b/assets/js/1ebbe01d.e21a64d5.js similarity index 99% rename from assets/js/1ebbe01d.60008461.js rename to assets/js/1ebbe01d.e21a64d5.js index 9ba0457975..1b8992d678 100644 --- a/assets/js/1ebbe01d.60008461.js +++ b/assets/js/1ebbe01d.e21a64d5.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[9901],{3905:function(t,e,a){a.d(e,{Zo:function(){return d},kt:function(){return p}});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function o(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var c=n.createContext({}),h=function(t){var e=n.useContext(c),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=h(t.components);return n.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},l=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,o=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),l=h(a),p=r,m=l["".concat(c,".").concat(p)]||l[p]||u[p]||o;return a?n.createElement(m,i(i({ref:e},d),{},{components:a})):n.createElement(m,i({ref:e},d))}));function p(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var o=a.length,i=new Array(o);i[0]=l;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:r,i[1]=s;for(var h=2;hconcept or other semantic unit of a specific [community](@) or other [party](@), and is located within a scope that is owned by that [community](@)/[party](@).\nsynonymOf:\ngrouptags:\nformPhrases: curated-text{ss}, ctext{ss}\n# Curation status\nstatus: proposed\ncreated: 2022-06-02\nupdated: 2022-08-04\n# Origins/Acknowledgements\ncontributors: RieksJ\nattribution: "[eSSIF-Lab](https://essif-lab.github.io/framework)"\noriginalLicense: "[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"\n---\n\n# Curated Text\nA curated text starts with three dashes `---`.\nThis indicates the start of its (YAML) header.\nTypically, the header consists of a sequence of key-value pairs.\nThe header is terminated with onother three dashes and a new line.\n\nThe body of the curated text starts behind the header block.\nIt is typically markdown, but other constructs may be inserted\nthat contribute to the rendering of these texts in a (static) website.\nAn example of this is [MDX](https://mdxjs.com/).\nA discussion on these other constructs is outside the scope of this document.\n')))),(0,o.kt)("h2",{id:"notes"},"Notes"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"The header is crucial for categorizing and managing curated texts, enabling efficient retrieval and navigation of relevant information."),(0,o.kt)("li",{parentName:"ul"},"The information within the header ensures consistency and accuracy in the curation process.")))}p.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[9901],{3905:function(t,e,a){a.d(e,{Zo:function(){return d},kt:function(){return p}});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function o(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var c=n.createContext({}),h=function(t){var e=n.useContext(c),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=h(t.components);return n.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},l=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,o=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),l=h(a),p=r,m=l["".concat(c,".").concat(p)]||l[p]||u[p]||o;return a?n.createElement(m,i(i({ref:e},d),{},{components:a})):n.createElement(m,i({ref:e},d))}));function p(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var o=a.length,i=new Array(o);i[0]=l;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:r,i[1]=s;for(var h=2;hconcept or other semantic unit of a specific [community](@) or other [party](@), and is located within a scope that is owned by that [community](@)/[party](@).\nsynonymOf:\ngrouptags:\nformPhrases: curated-text{ss}, ctext{ss}\n# Curation status\nstatus: proposed\ncreated: 2022-06-02\nupdated: 2022-08-04\n# Origins/Acknowledgements\ncontributors: RieksJ\nattribution: "[eSSIF-Lab](https://essif-lab.github.io/framework)"\noriginalLicense: "[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"\n---\n\n# Curated Text\nA curated text starts with three dashes `---`.\nThis indicates the start of its (YAML) header.\nTypically, the header consists of a sequence of key-value pairs.\nThe header is terminated with onother three dashes and a new line.\n\nThe body of the curated text starts behind the header block.\nIt is typically markdown, but other constructs may be inserted\nthat contribute to the rendering of these texts in a (static) website.\nAn example of this is [MDX](https://mdxjs.com/).\nA discussion on these other constructs is outside the scope of this document.\n')))),(0,o.kt)("h2",{id:"notes"},"Notes"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"The header is crucial for categorizing and managing curated texts, enabling efficient retrieval and navigation of relevant information."),(0,o.kt)("li",{parentName:"ul"},"The information within the header ensures consistency and accuracy in the curation process.")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/205d9948.b5806117.js b/assets/js/205d9948.a4093f18.js similarity index 99% rename from assets/js/205d9948.b5806117.js rename to assets/js/205d9948.a4093f18.js index 6e27e47c1f..c0b7c014a8 100644 --- a/assets/js/205d9948.b5806117.js +++ b/assets/js/205d9948.a4093f18.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[7523],{3905:function(t,e,i){i.d(e,{Zo:function(){return l},kt:function(){return m}});var a=i(7294);function o(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function n(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function s(t){for(var e=1;e=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),h=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):s(s({},e),t)),i},l=function(t){var e=h(t.components);return a.createElement(c.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},p=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,l=r(t,["components","mdxType","originalType","parentName"]),p=h(i),m=o,f=p["".concat(c,".").concat(m)]||p[m]||d[m]||n;return i?a.createElement(f,s(s({ref:e},l),{},{components:i})):a.createElement(f,s({ref:e},l))}));function m(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,s=new Array(n);s[0]=p;var r={};for(var c in e)hasOwnProperty.call(e,c)&&(r[c]=e[c]);r.originalType=t,r.mdxType="string"==typeof t?t:o,s[1]=r;for(var h=2;h child <"+("string"==typeof t.type?t.type:t.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?e:[]}(t).map((function(t){var e=t.props;return{value:e.value,label:e.label,attributes:e.attributes,default:e.default}}))}function p(t){var e=t.values,i=t.children;return(0,o.useMemo)((function(){var t=null!=e?e:d(i);return function(t){var e=(0,h.l)(t,(function(t,e){return t.value===e.value}));if(e.length>0)throw new Error('Docusaurus error: Duplicate values "'+e.map((function(t){return t.value})).join(", ")+'" found in . Every value needs to be unique.')}(t),t}),[e,i])}function m(t){var e=t.value;return t.tabValues.some((function(t){return t.value===e}))}function f(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId,n=(0,r.k6)(),s=function(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,c._X)(s),(0,o.useCallback)((function(t){if(s){var e=new URLSearchParams(n.location.search);e.set(s,t),n.replace(Object.assign({},n.location,{search:e.toString()}))}}),[s,n])]}function g(t){var e,i,a,n,s=t.defaultValue,r=t.queryString,c=void 0!==r&&r,h=t.groupId,d=p(t),g=(0,o.useState)((function(){return function(t){var e,i=t.defaultValue,a=t.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!m({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(t){return t.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var o=null!=(e=a.find((function(t){return t.default})))?e:a[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:s,tabValues:d})})),u=g[0],y=g[1],v=f({queryString:c,groupId:h}),b=v[0],k=v[1],w=(e=function(t){return t?"docusaurus.tab."+t:null}({groupId:h}.groupId),i=(0,l.Nk)(e),a=i[0],n=i[1],[a,(0,o.useCallback)((function(t){e&&n.set(t)}),[e,n])]),T=w[0],x=w[1],S=function(){var t=null!=b?b:T;return m({value:t,tabValues:d})?t:null}();return(0,o.useLayoutEffect)((function(){S&&y(S)}),[S]),{selectedValue:u,selectValue:(0,o.useCallback)((function(t){if(!m({value:t,tabValues:d}))throw new Error("Can't select invalid tab value="+t);y(t),k(t),x(t)}),[k,x,d]),tabValues:d}}var u=i(2389),y="tabList__CuJ",v="tabItem_LNqP";function b(t){var e=t.className,i=t.block,r=t.selectedValue,c=t.selectValue,h=t.tabValues,l=[],d=(0,s.o5)().blockElementScrollPositionUntilNextRender,p=function(t){var e=t.currentTarget,i=l.indexOf(e),a=h[i].value;a!==r&&(d(e),c(a))},m=function(t){var e,i=null;switch(t.key){case"Enter":p(t);break;case"ArrowRight":var a,o=l.indexOf(t.currentTarget)+1;i=null!=(a=l[o])?a:l[0];break;case"ArrowLeft":var n,s=l.indexOf(t.currentTarget)-1;i=null!=(n=l[s])?n:l[l.length-1]}null==(e=i)||e.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},e)},h.map((function(t){var e=t.value,i=t.label,s=t.attributes;return o.createElement("li",(0,a.Z)({role:"tab",tabIndex:r===e?0:-1,"aria-selected":r===e,key:e,ref:function(t){return l.push(t)},onKeyDown:m,onClick:p},s,{className:(0,n.Z)("tabs__item",v,null==s?void 0:s.className,{"tabs__item--active":r===e})}),null!=i?i:e)})))}function k(t){var e=t.lazy,i=t.children,a=t.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(e){var s=n.find((function(t){return t.props.value===a}));return s?(0,o.cloneElement)(s,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(t,e){return(0,o.cloneElement)(t,{key:e,hidden:t.props.value!==a})})))}function w(t){var e=g(t);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(b,(0,a.Z)({},t,e)),o.createElement(k,(0,a.Z)({},t,e)))}function T(t){var e=(0,u.Z)();return o.createElement(w,(0,a.Z)({key:String(e)},t))}},2219:function(t,e,i){i.r(e),i.d(e,{assets:function(){return l},contentTitle:function(){return c},default:function(){return f},frontMatter:function(){return r},mark:function(){return p},metadata:function(){return h},toc:function(){return d}});var a=i(7462),o=i(3366),n=(i(7294),i(3905)),s=(i(4996),i(4866),i(5162),["components"]),r={id:"mrgt",sidebar_label:"MR Glossary Generation",date:20221127},c="Machine Readable Glossary Generation Tool",h={unversionedId:"spec-tools/mrgt",id:"spec-tools/mrgt",title:"Machine Readable Glossary Generation Tool",description:"text to mark",source:"@site/docs/spec-tools/21-mrgt.md",sourceDirName:"spec-tools",slug:"/spec-tools/mrgt",permalink:"/tev2-specifications/docs/spec-tools/mrgt",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/21-mrgt.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:21,frontMatter:{id:"mrgt",sidebar_label:"MR Glossary Generation",date:20221127},sidebar:"tev2SideBar",previous:{title:"Terminology Construction",permalink:"/tev2-specifications/docs/spec-tools/terminology-construction"},next:{title:"HR Glossary Generation (previous version)",permalink:"/tev2-specifications/docs/spec-tools/hrgt-old"}},l={},d=[{value:"Installing the Tool",id:"installing-the-tool",level:2},{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Generating an MRG",id:"generating-an-mrg",level:2},{value:"Creating an MRG Entry",id:"creating-an-mrg-entry",level:3},{value:"Copying an MRG Entry from an existing MRG",id:"copying-an-mrg-entry-from-an-existing-mrg",level:4},{value:"Constructing an MRG Entry from a Curated Text",id:"constructing-an-mrg-entry-from-a-curated-text",level:4},{value:"Exceptions, Warnings, and Logging",id:"exceptions",level:2},{value:"Notes",id:"notes",level:2}],p=function(t){var e=t.children;return(0,n.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},e)},m={toc:d,mark:p};function f(t){var e=t.components,i=(0,o.Z)(t,s);return(0,n.kt)("wrapper",(0,a.Z)({},m,i,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"machine-readable-glossary-generation-tool"},"Machine Readable Glossary Generation Tool"),(0,n.kt)("p",null,"The ",(0,n.kt)("strong",{parentName:"p"},"Machine Readable Glossary generation Tool (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT"),")")," generates a Machine Readable Glossary or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),") for (a specific version of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," into a specific, well-defined ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg"},"format"),". An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," contains so-called ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," for every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which represent not only ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concepts")," but also other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic units")," of other kinds, such as ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mental-model",hovertext:"Mental Model: A Semantic Unit that relates a set of Concepts (ideas), Relations between them, and constraints about a certain topic, into a coherent and consistent whole (sometimes called 'viewpoint', or 'way of thinking')."},"mental models")," and ",(0,n.kt)("a",{parentName:"p",href:"@"},"use cases"),"."),(0,n.kt)("p",null,"The (newly generated) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is meant to be processed by the other tools in the ",(0,n.kt)("a",{parentName:"p",href:"/docs-toolbox"},"toolbox"),", regardless of whether such tools are called from within the context of another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". As it contains every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is used in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and includes all the relevant meta-data, an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," serves as the single, authoritative source of that (version of the) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),"."),(0,n.kt)("p",null,"There is currently one (JAVA) implementation of the tool:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the repo is ",(0,n.kt)("a",{parentName:"li",href:"https://github.com/trustoverip/ctwg-toolkit-mrg/"},"here")),(0,n.kt)("li",{parentName:"ul"},"the documentation is ",(0,n.kt)("a",{parentName:"li",href:"https://github.com/trustoverip/ctwg-toolkit-mrg#readme"},"here")),(0,n.kt)("li",{parentName:"ul"},"the (deprecated) specifications for this tool are ",(0,n.kt)("a",{parentName:"li",href:"https://essif-lab.github.io/framework/docs/spec-tools/mrgt"},"here"))),(0,n.kt)("p",null,"A new implementation is envisaged (but not yet available), which will be built similar to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG Importer"),"."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the repo is ",(0,n.kt)("a",{parentName:"li",href:"https://github.com/tno-terminology-design/mrgt"},"here"),"."),(0,n.kt)("li",{parentName:"ul"},"the documentation is ","[",(0,n.kt)("mark",null,"tbd"),"]",".")),(0,n.kt)("h2",{id:"installing-the-tool"},"Installing the Tool"),(0,n.kt)("p",null,"The tool can be installed from the command line and made globally available by executing"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"npm install tno-terminology-design/mrgt -g\n")),(0,n.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,n.kt)("p",null,"The behavior of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," can be configured per call e.g. by a configuration file and/or command-line parameters. The command-line syntax is as follows:"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"mrgt [ ]\n")),(0,n.kt)("p",null,"where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," (optional) is a list of key-value pairs")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("p",null,"The columns in the following table are defined as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,n.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"config")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter MUST NOT appear in the configuration file itself.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," from which the tool is called. It MUST contain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which we will refer to as the 'current scope' for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," for which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," needs to be (re)generated. When omitted, an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," will be generated for every version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is specified in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"onNotExist")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"specifies the action to take in case a ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," was specified, but wasn't found in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". Default is ",(0,n.kt)("inlineCode",{parentName:"td"},"'throw'"),".")))),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"")," parameter can take the following values:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"th"},"")),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"'throw'")),(0,n.kt)("td",{parentName:"tr",align:"left"},"an error is thrown (an exception is raised), and processing will stop.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"'warn'")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a message is displayed (and logged) and processing continues.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"'log'")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a message is written to a log(file) and processing continues.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"'ignore'")),(0,n.kt)("td",{parentName:"tr",align:"left"},"processing continues as if nothing happened.")))),(0,n.kt)("h2",{id:"generating-an-mrg"},"Generating an MRG"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," starts by reading the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," that exists in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," that was provided as one of the calling parameters. If a ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," argument is provided, it will search the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," to find the corresponding entry. This corresponding entry will have the value of the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," parameter either in its ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field, or it is one of the elements in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags")," field. If the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," does not have a corresponding entry, the action specified in the ",(0,n.kt)("inlineCode",{parentName:"p"},"onNotExist")," parameter will determine whether or not (and how) to proceed."),(0,n.kt)("p",null,"The corresponding entry in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," specifies (a specific version of) a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". It not only includes meta-data for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),", but also the set of '",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria"),"' that specify how the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," needs to be ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-tools/terminology-construction"},"constructed"),", and the file to which the result needs to be written."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is then created as follows (starting with an empty file):"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," ",(0,n.kt)("inlineCode",{parentName:"li"},"terminology")," section is created, by copying ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/mrg#mrg-terminology"},"relevant fields")," from the ",(0,n.kt)("inlineCode",{parentName:"li"},"terminology")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,n.kt)("li",{parentName:"ol"},"Then, ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-tools/terminology-construction"},"terminology construction")," takes place, which can be thought of as constructing a set of tuples ",(0,n.kt)("inlineCode",{parentName:"li"},"{ [term, grouptags] }"),", where ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," (the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that documents) the particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),", and ",(0,n.kt)("inlineCode",{parentName:"li"},"grouptags")," is a set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags")," associated with that tuple."),(0,n.kt)("li",{parentName:"ol"},"For every tuple in this set, an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is created, and added to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," under construction. The structure of each such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entry")," depends on the type of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," represents, as the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," depends on that type.")),(0,n.kt)("p",null,"After the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," has been created, it is written to the file ",(0,n.kt)("inlineCode",{parentName:"p"},"mrg...yaml"),", where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that is used within the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," to refer to itself. Its value can be found in the ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field in the ",(0,n.kt)("a",{parentName:"li",href:"docs/spec-files/saf#terminology"},"scope section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," for which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," contains ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries"),". Its value must be equal to that found in the ",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag"),"-field of the element in the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," was generated. NOTE that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," that are listed in the ",(0,n.kt)("inlineCode",{parentName:"li"},"altvsntags"),"-field of such an element MUST NOT be used in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-filename.")),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file must be written to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossarydir",hovertext:"Glossarydir: a directory within a Scopedir within which the different versions of its (Machine Readable and Human Readable) Glossaries are created and maintained."},"glossarydir")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which is located at ",(0,n.kt)("inlineCode",{parentName:"p"},"/"),", where"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the home-directory of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the path to the directorty where all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),"-related files are located. Its value can be found in the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#terminology"},"scope section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("p",null,"After the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file has been written, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," will create, a ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Symbolic_link"},"symbolic link")," for every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that it finds in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags"),"-field of the element in the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," was generated. The symbolic link will point to the file that has just been written and contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that has just been generated. The name of this symbolic link is ",(0,n.kt)("inlineCode",{parentName:"p"},"mrg...yaml"),", which is the same name as the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file, except that the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," part of that filename is replaced with the value of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," found in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags"),"-field."),(0,n.kt)("h3",{id:"creating-an-mrg-entry"},"Creating an MRG Entry"),(0,n.kt)("p",null,"An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is either"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"a copy of an (existing) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," that is found in an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that lives in another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", or"),(0,n.kt)("li",{parentName:"ul"},"it is constructed from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," of which always lives in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file")," that is located in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curatedir",hovertext:"Curatedir: a directory within a Scopedir within which every file contains a Curated Texts for that Scope."},"curatedir")," of the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", as ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#terminology"},"specified")," in the ",(0,n.kt)("inlineCode",{parentName:"li"},"curatedir")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", and the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of which can either be found in that same file, or in the file that can be found at the location in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," as specified by the ",(0,n.kt)("inlineCode",{parentName:"li"},"bodyFile"),"-field in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("h4",{id:"copying-an-mrg-entry-from-an-existing-mrg"},"Copying an MRG Entry from an existing MRG"),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"A prerequisite for generating an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that includes ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," that are maintained in other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes"),", is that such other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," must be available in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossarydir",hovertext:"Glossarydir: a directory within a Scopedir within which the different versions of its (Machine Readable and Human Readable) Glossaries are created and maintained."},"glossarydir")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," is run. This can be achieved by running the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-tools/mrg-importer"},"tool"),". If the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is to be generated doesn't include such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," need not be invoked.")),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"this section needs to be reviewed/revisded to ensure it fits with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," specs.")),(0,n.kt)("p",null,"In case the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is a copy, the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg#mrg-entries"},"field")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," should be given the value of the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field that is found in the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg#mrg-terminology"},"'terminology' section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from which ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," contents was copied."),(0,n.kt)("h4",{id:"constructing-an-mrg-entry-from-a-curated-text"},"Constructing an MRG Entry from a Curated Text"),(0,n.kt)("p",null,"Constructing an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," is done as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"create an empty/new ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),";"),(0,n.kt)("li",{parentName:"ol"},"if the ",(0,n.kt)("inlineCode",{parentName:"li"},"synonymOf")," field contains a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies"),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is being created, then copy the entire front matter of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," into the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),";",(0,n.kt)("sup",{parentName:"li",id:"fnref-1"},(0,n.kt)("a",{parentName:"sup",href:"#fn-1",className:"footnote-ref"},"1"))),(0,n.kt)("li",{parentName:"ul"},"an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," in an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," other than the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is being created, then copy that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," into the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," that has just been created;"))),(0,n.kt)("li",{parentName:"ol"},"if the ",(0,n.kt)("inlineCode",{parentName:"li"},"synonymOf")," field contains a text that is not a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier"),", raise an ",(0,n.kt)("a",{parentName:"li",href:"#exceptions"},"appropriate warning"),";"),(0,n.kt)("li",{parentName:"ol"},"copy every field in the front-matter of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," into the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),"; if the field already exists in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", it will be overwritten;"),(0,n.kt)("li",{parentName:"ol"},"discard every field that has a field name that, when converted into lowercase, matches any of the field names in the table below;"),(0,n.kt)("li",{parentName:"ol"},"add the fields in the below table with the specified contents, as follows:")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Field"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Value(s) that are assigned to the fields"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"left"},"overwrite the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")," field with the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")," field as found in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"locator")),(0,n.kt)("td",{parentName:"tr",align:"left"},"path, relative to ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir"),"/, of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"navurl")),(0,n.kt)("td",{parentName:"tr",align:"left"},"path, relative to the URL as specified in the ",(0,n.kt)("inlineCode",{parentName:"td"},"website")," field in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"scope")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", where the rendered version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," is located.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"headingids")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a list of the ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/basic-syntax/#headings"},"markdown headings")," and/or ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/extended-syntax/#linking-to-heading-ids"},"heading ids")," that are found in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),". Note that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," can be in a another file that that which contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"))))),(0,n.kt)("h2",{id:"exceptions"},"Exceptions, Warnings, and Logging"),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"This section needs to be reviewed/revised so as to enable a consistent way of error checking and logging, similar to what is done in the TRRT")),(0,n.kt)("p",null,"The general principle is that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," helps its users to do their jobs. This means that errors that terminate the processing are limited to the max, that warnings (perhaps at different 'levels' of detail/severity) are given output whenever possible (yet may be limited by command-line options), and that texts are tailored for the envisaged users of the tool."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," logs conditions that prevent it from properly:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"obtaining the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag"),";"),(0,n.kt)("li",{parentName:"ul"},"parsing a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," (e.g. because it is not in the expected format);"),(0,n.kt)("li",{parentName:"ul"},"resolving ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scope tags"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"group tags"),", or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"version tags"),";"),(0,n.kt)("li",{parentName:"ul"},"writing the output (e.g. because it has no write-permission for the designated location);"),(0,n.kt)("li",{parentName:"ul"},"etc.;")),(0,n.kt)("p",null,"Also, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," provides suggestions that help tool-operators (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators"),") to not only identify, but also fix any problems."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and author/modify CI-pipes to use that deployment."),(0,n.kt)("h2",{id:"notes"},"Notes"),(0,n.kt)("div",{className:"footnotes"},(0,n.kt)("hr",{parentName:"div"}),(0,n.kt)("ol",{parentName:"div"},(0,n.kt)("li",{parentName:"ol",id:"fn-1"},"The algorithm ensures that an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," for a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/synonym",hovertext:"Synonym: a Term that has the same (or similar) meaning as another Term."},"synonym")," of another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," identical to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," for that other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term"),", but if the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that specifies the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/synonym",hovertext:"Synonym: a Term that has the same (or similar) meaning as another Term."},"synonym")," has additional front matter (e.g. a slightly modified ",(0,n.kt)("inlineCode",{parentName:"li"},"glossaryText")," field), that front matter is retained in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),". It is up to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," to make sure this does not pose any problems, and up to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," to do appropriate checks.",(0,n.kt)("a",{parentName:"li",href:"#fnref-1",className:"footnote-backref"},"\u21a9")))))}f.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[7523],{3905:function(t,e,i){i.d(e,{Zo:function(){return l},kt:function(){return m}});var a=i(7294);function o(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function n(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function s(t){for(var e=1;e=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),h=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):s(s({},e),t)),i},l=function(t){var e=h(t.components);return a.createElement(c.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},p=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,l=r(t,["components","mdxType","originalType","parentName"]),p=h(i),m=o,f=p["".concat(c,".").concat(m)]||p[m]||d[m]||n;return i?a.createElement(f,s(s({ref:e},l),{},{components:i})):a.createElement(f,s({ref:e},l))}));function m(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,s=new Array(n);s[0]=p;var r={};for(var c in e)hasOwnProperty.call(e,c)&&(r[c]=e[c]);r.originalType=t,r.mdxType="string"==typeof t?t:o,s[1]=r;for(var h=2;h child <"+("string"==typeof t.type?t.type:t.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?e:[]}(t).map((function(t){var e=t.props;return{value:e.value,label:e.label,attributes:e.attributes,default:e.default}}))}function p(t){var e=t.values,i=t.children;return(0,o.useMemo)((function(){var t=null!=e?e:d(i);return function(t){var e=(0,h.l)(t,(function(t,e){return t.value===e.value}));if(e.length>0)throw new Error('Docusaurus error: Duplicate values "'+e.map((function(t){return t.value})).join(", ")+'" found in . Every value needs to be unique.')}(t),t}),[e,i])}function m(t){var e=t.value;return t.tabValues.some((function(t){return t.value===e}))}function f(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId,n=(0,r.k6)(),s=function(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,c._X)(s),(0,o.useCallback)((function(t){if(s){var e=new URLSearchParams(n.location.search);e.set(s,t),n.replace(Object.assign({},n.location,{search:e.toString()}))}}),[s,n])]}function g(t){var e,i,a,n,s=t.defaultValue,r=t.queryString,c=void 0!==r&&r,h=t.groupId,d=p(t),g=(0,o.useState)((function(){return function(t){var e,i=t.defaultValue,a=t.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!m({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(t){return t.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var o=null!=(e=a.find((function(t){return t.default})))?e:a[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:s,tabValues:d})})),u=g[0],y=g[1],v=f({queryString:c,groupId:h}),b=v[0],k=v[1],w=(e=function(t){return t?"docusaurus.tab."+t:null}({groupId:h}.groupId),i=(0,l.Nk)(e),a=i[0],n=i[1],[a,(0,o.useCallback)((function(t){e&&n.set(t)}),[e,n])]),T=w[0],x=w[1],S=function(){var t=null!=b?b:T;return m({value:t,tabValues:d})?t:null}();return(0,o.useLayoutEffect)((function(){S&&y(S)}),[S]),{selectedValue:u,selectValue:(0,o.useCallback)((function(t){if(!m({value:t,tabValues:d}))throw new Error("Can't select invalid tab value="+t);y(t),k(t),x(t)}),[k,x,d]),tabValues:d}}var u=i(2389),y="tabList__CuJ",v="tabItem_LNqP";function b(t){var e=t.className,i=t.block,r=t.selectedValue,c=t.selectValue,h=t.tabValues,l=[],d=(0,s.o5)().blockElementScrollPositionUntilNextRender,p=function(t){var e=t.currentTarget,i=l.indexOf(e),a=h[i].value;a!==r&&(d(e),c(a))},m=function(t){var e,i=null;switch(t.key){case"Enter":p(t);break;case"ArrowRight":var a,o=l.indexOf(t.currentTarget)+1;i=null!=(a=l[o])?a:l[0];break;case"ArrowLeft":var n,s=l.indexOf(t.currentTarget)-1;i=null!=(n=l[s])?n:l[l.length-1]}null==(e=i)||e.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},e)},h.map((function(t){var e=t.value,i=t.label,s=t.attributes;return o.createElement("li",(0,a.Z)({role:"tab",tabIndex:r===e?0:-1,"aria-selected":r===e,key:e,ref:function(t){return l.push(t)},onKeyDown:m,onClick:p},s,{className:(0,n.Z)("tabs__item",v,null==s?void 0:s.className,{"tabs__item--active":r===e})}),null!=i?i:e)})))}function k(t){var e=t.lazy,i=t.children,a=t.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(e){var s=n.find((function(t){return t.props.value===a}));return s?(0,o.cloneElement)(s,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(t,e){return(0,o.cloneElement)(t,{key:e,hidden:t.props.value!==a})})))}function w(t){var e=g(t);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(b,(0,a.Z)({},t,e)),o.createElement(k,(0,a.Z)({},t,e)))}function T(t){var e=(0,u.Z)();return o.createElement(w,(0,a.Z)({key:String(e)},t))}},2219:function(t,e,i){i.r(e),i.d(e,{assets:function(){return l},contentTitle:function(){return c},default:function(){return f},frontMatter:function(){return r},mark:function(){return p},metadata:function(){return h},toc:function(){return d}});var a=i(7462),o=i(3366),n=(i(7294),i(3905)),s=(i(4996),i(4866),i(5162),["components"]),r={id:"mrgt",sidebar_label:"MR Glossary Generation",date:20221127},c="Machine Readable Glossary Generation Tool",h={unversionedId:"spec-tools/mrgt",id:"spec-tools/mrgt",title:"Machine Readable Glossary Generation Tool",description:"text to mark",source:"@site/docs/spec-tools/21-mrgt.md",sourceDirName:"spec-tools",slug:"/spec-tools/mrgt",permalink:"/tev2-specifications/docs/spec-tools/mrgt",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/21-mrgt.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:21,frontMatter:{id:"mrgt",sidebar_label:"MR Glossary Generation",date:20221127},sidebar:"tev2SideBar",previous:{title:"Terminology Construction",permalink:"/tev2-specifications/docs/spec-tools/terminology-construction"},next:{title:"HR Glossary Generation (previous version)",permalink:"/tev2-specifications/docs/spec-tools/hrgt-old"}},l={},d=[{value:"Installing the Tool",id:"installing-the-tool",level:2},{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Generating an MRG",id:"generating-an-mrg",level:2},{value:"Creating an MRG Entry",id:"creating-an-mrg-entry",level:3},{value:"Copying an MRG Entry from an existing MRG",id:"copying-an-mrg-entry-from-an-existing-mrg",level:4},{value:"Constructing an MRG Entry from a Curated Text",id:"constructing-an-mrg-entry-from-a-curated-text",level:4},{value:"Exceptions, Warnings, and Logging",id:"exceptions",level:2},{value:"Notes",id:"notes",level:2}],p=function(t){var e=t.children;return(0,n.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},e)},m={toc:d,mark:p};function f(t){var e=t.components,i=(0,o.Z)(t,s);return(0,n.kt)("wrapper",(0,a.Z)({},m,i,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"machine-readable-glossary-generation-tool"},"Machine Readable Glossary Generation Tool"),(0,n.kt)("p",null,"The ",(0,n.kt)("strong",{parentName:"p"},"Machine Readable Glossary generation Tool (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT"),")")," generates a Machine Readable Glossary or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),") for (a specific version of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," into a specific, well-defined ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg"},"format"),". An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," contains so-called ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," for every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which represent not only ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concepts")," but also other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic units")," of other kinds, such as ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mental-model",hovertext:"Mental Model: A Semantic Unit that relates a set of Concepts (ideas), Relations between them, and constraints about a certain topic, into a coherent and consistent whole (sometimes called 'viewpoint', or 'way of thinking')."},"mental models")," and ",(0,n.kt)("a",{parentName:"p",href:"@"},"use cases"),"."),(0,n.kt)("p",null,"The (newly generated) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is meant to be processed by the other tools in the ",(0,n.kt)("a",{parentName:"p",href:"/docs-toolbox"},"toolbox"),", regardless of whether such tools are called from within the context of another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". As it contains every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is used in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and includes all the relevant meta-data, an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," serves as the single, authoritative source of that (version of the) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),"."),(0,n.kt)("p",null,"There is currently one (JAVA) implementation of the tool:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the repo is ",(0,n.kt)("a",{parentName:"li",href:"https://github.com/trustoverip/ctwg-toolkit-mrg/"},"here")),(0,n.kt)("li",{parentName:"ul"},"the documentation is ",(0,n.kt)("a",{parentName:"li",href:"https://github.com/trustoverip/ctwg-toolkit-mrg#readme"},"here")),(0,n.kt)("li",{parentName:"ul"},"the (deprecated) specifications for this tool are ",(0,n.kt)("a",{parentName:"li",href:"https://essif-lab.github.io/framework/docs/spec-tools/mrgt"},"here"))),(0,n.kt)("p",null,"A new implementation is envisaged (but not yet available), which will be built similar to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG Importer"),"."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the repo is ",(0,n.kt)("a",{parentName:"li",href:"https://github.com/tno-terminology-design/mrgt"},"here"),"."),(0,n.kt)("li",{parentName:"ul"},"the documentation is ","[",(0,n.kt)("mark",null,"tbd"),"]",".")),(0,n.kt)("h2",{id:"installing-the-tool"},"Installing the Tool"),(0,n.kt)("p",null,"The tool can be installed from the command line and made globally available by executing"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"npm install tno-terminology-design/mrgt -g\n")),(0,n.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,n.kt)("p",null,"The behavior of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," can be configured per call e.g. by a configuration file and/or command-line parameters. The command-line syntax is as follows:"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"mrgt [ ]\n")),(0,n.kt)("p",null,"where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," (optional) is a list of key-value pairs")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("p",null,"The columns in the following table are defined as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,n.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"config")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter MUST NOT appear in the configuration file itself.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," from which the tool is called. It MUST contain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which we will refer to as the 'current scope' for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," for which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," needs to be (re)generated. When omitted, an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," will be generated for every version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is specified in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"onNotExist")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"specifies the action to take in case a ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," was specified, but wasn't found in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". Default is ",(0,n.kt)("inlineCode",{parentName:"td"},"'throw'"),".")))),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"")," parameter can take the following values:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"th"},"")),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"'throw'")),(0,n.kt)("td",{parentName:"tr",align:"left"},"an error is thrown (an exception is raised), and processing will stop.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"'warn'")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a message is displayed (and logged) and processing continues.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"'log'")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a message is written to a log(file) and processing continues.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"'ignore'")),(0,n.kt)("td",{parentName:"tr",align:"left"},"processing continues as if nothing happened.")))),(0,n.kt)("h2",{id:"generating-an-mrg"},"Generating an MRG"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," starts by reading the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," that exists in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," that was provided as one of the calling parameters. If a ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," argument is provided, it will search the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," to find the corresponding entry. This corresponding entry will have the value of the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," parameter either in its ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field, or it is one of the elements in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags")," field. If the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," does not have a corresponding entry, the action specified in the ",(0,n.kt)("inlineCode",{parentName:"p"},"onNotExist")," parameter will determine whether or not (and how) to proceed."),(0,n.kt)("p",null,"The corresponding entry in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," specifies (a specific version of) a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". It not only includes meta-data for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),", but also the set of '",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria"),"' that specify how the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," needs to be ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-tools/terminology-construction"},"constructed"),", and the file to which the result needs to be written."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is then created as follows (starting with an empty file):"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," ",(0,n.kt)("inlineCode",{parentName:"li"},"terminology")," section is created, by copying ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/mrg#mrg-terminology"},"relevant fields")," from the ",(0,n.kt)("inlineCode",{parentName:"li"},"terminology")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,n.kt)("li",{parentName:"ol"},"Then, ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-tools/terminology-construction"},"terminology construction")," takes place, which can be thought of as constructing a set of tuples ",(0,n.kt)("inlineCode",{parentName:"li"},"{ [term, grouptags] }"),", where ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," (the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that documents) the particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),", and ",(0,n.kt)("inlineCode",{parentName:"li"},"grouptags")," is a set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags")," associated with that tuple."),(0,n.kt)("li",{parentName:"ol"},"For every tuple in this set, an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is created, and added to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," under construction. The structure of each such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entry")," depends on the type of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," represents, as the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," depends on that type.")),(0,n.kt)("p",null,"After the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," has been created, it is written to the file ",(0,n.kt)("inlineCode",{parentName:"p"},"mrg...yaml"),", where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that is used within the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," to refer to itself. Its value can be found in the ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field in the ",(0,n.kt)("a",{parentName:"li",href:"docs/spec-files/saf#terminology"},"scope section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," for which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," contains ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries"),". Its value must be equal to that found in the ",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag"),"-field of the element in the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," was generated. NOTE that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," that are listed in the ",(0,n.kt)("inlineCode",{parentName:"li"},"altvsntags"),"-field of such an element MUST NOT be used in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-filename.")),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file must be written to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossarydir",hovertext:"Glossarydir: a directory within a Scopedir within which the different versions of its (Machine Readable and Human Readable) Glossaries are created and maintained."},"glossarydir")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which is located at ",(0,n.kt)("inlineCode",{parentName:"p"},"/"),", where"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the home-directory of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the path to the directorty where all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),"-related files are located. Its value can be found in the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#terminology"},"scope section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("p",null,"After the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file has been written, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," will create, a ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Symbolic_link"},"symbolic link")," for every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that it finds in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags"),"-field of the element in the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," was generated. The symbolic link will point to the file that has just been written and contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that has just been generated. The name of this symbolic link is ",(0,n.kt)("inlineCode",{parentName:"p"},"mrg...yaml"),", which is the same name as the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file, except that the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," part of that filename is replaced with the value of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," found in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags"),"-field."),(0,n.kt)("h3",{id:"creating-an-mrg-entry"},"Creating an MRG Entry"),(0,n.kt)("p",null,"An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is either"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"a copy of an (existing) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," that is found in an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that lives in another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", or"),(0,n.kt)("li",{parentName:"ul"},"it is constructed from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," of which always lives in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file")," that is located in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curatedir",hovertext:"Curatedir: a directory within a Scopedir within which every file contains a Curated Texts for that Scope."},"curatedir")," of the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", as ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#terminology"},"specified")," in the ",(0,n.kt)("inlineCode",{parentName:"li"},"curatedir")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", and the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of which can either be found in that same file, or in the file that can be found at the location in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," as specified by the ",(0,n.kt)("inlineCode",{parentName:"li"},"bodyFile"),"-field in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("h4",{id:"copying-an-mrg-entry-from-an-existing-mrg"},"Copying an MRG Entry from an existing MRG"),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"A prerequisite for generating an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that includes ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," that are maintained in other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes"),", is that such other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," must be available in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossarydir",hovertext:"Glossarydir: a directory within a Scopedir within which the different versions of its (Machine Readable and Human Readable) Glossaries are created and maintained."},"glossarydir")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," is run. This can be achieved by running the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-tools/mrg-importer"},"tool"),". If the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is to be generated doesn't include such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," need not be invoked.")),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"this section needs to be reviewed/revisded to ensure it fits with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"MRG importer")," specs.")),(0,n.kt)("p",null,"In case the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is a copy, the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg#mrg-entries"},"field")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," should be given the value of the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field that is found in the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg#mrg-terminology"},"'terminology' section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from which ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," contents was copied."),(0,n.kt)("h4",{id:"constructing-an-mrg-entry-from-a-curated-text"},"Constructing an MRG Entry from a Curated Text"),(0,n.kt)("p",null,"Constructing an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," is done as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"create an empty/new ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),";"),(0,n.kt)("li",{parentName:"ol"},"if the ",(0,n.kt)("inlineCode",{parentName:"li"},"synonymOf")," field contains a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies"),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is being created, then copy the entire front matter of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," into the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),";",(0,n.kt)("sup",{parentName:"li",id:"fnref-1"},(0,n.kt)("a",{parentName:"sup",href:"#fn-1",className:"footnote-ref"},"1"))),(0,n.kt)("li",{parentName:"ul"},"an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," in an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," other than the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is being created, then copy that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," into the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," that has just been created;"))),(0,n.kt)("li",{parentName:"ol"},"if the ",(0,n.kt)("inlineCode",{parentName:"li"},"synonymOf")," field contains a text that is not a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier"),", raise an ",(0,n.kt)("a",{parentName:"li",href:"#exceptions"},"appropriate warning"),";"),(0,n.kt)("li",{parentName:"ol"},"copy every field in the front-matter of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," into the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),"; if the field already exists in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", it will be overwritten;"),(0,n.kt)("li",{parentName:"ol"},"discard every field that has a field name that, when converted into lowercase, matches any of the field names in the table below;"),(0,n.kt)("li",{parentName:"ol"},"add the fields in the below table with the specified contents, as follows:")),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Field"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Value(s) that are assigned to the fields"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"left"},"overwrite the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")," field with the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")," field as found in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"locator")),(0,n.kt)("td",{parentName:"tr",align:"left"},"path, relative to ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir"),"/, of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"navurl")),(0,n.kt)("td",{parentName:"tr",align:"left"},"path, relative to the URL as specified in the ",(0,n.kt)("inlineCode",{parentName:"td"},"website")," field in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"scope")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", where the rendered version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," is located.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"headingids")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a list of the ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/basic-syntax/#headings"},"markdown headings")," and/or ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/extended-syntax/#linking-to-heading-ids"},"heading ids")," that are found in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),". Note that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," can be in a another file that that which contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"))))),(0,n.kt)("h2",{id:"exceptions"},"Exceptions, Warnings, and Logging"),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"This section needs to be reviewed/revised so as to enable a consistent way of error checking and logging, similar to what is done in the TRRT")),(0,n.kt)("p",null,"The general principle is that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," helps its users to do their jobs. This means that errors that terminate the processing are limited to the max, that warnings (perhaps at different 'levels' of detail/severity) are given output whenever possible (yet may be limited by command-line options), and that texts are tailored for the envisaged users of the tool."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," logs conditions that prevent it from properly:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"obtaining the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag"),";"),(0,n.kt)("li",{parentName:"ul"},"parsing a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," (e.g. because it is not in the expected format);"),(0,n.kt)("li",{parentName:"ul"},"resolving ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scope tags"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"group tags"),", or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"version tags"),";"),(0,n.kt)("li",{parentName:"ul"},"writing the output (e.g. because it has no write-permission for the designated location);"),(0,n.kt)("li",{parentName:"ul"},"etc.;")),(0,n.kt)("p",null,"Also, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," provides suggestions that help tool-operators (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators"),") to not only identify, but also fix any problems."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and author/modify CI-pipes to use that deployment."),(0,n.kt)("h2",{id:"notes"},"Notes"),(0,n.kt)("div",{className:"footnotes"},(0,n.kt)("hr",{parentName:"div"}),(0,n.kt)("ol",{parentName:"div"},(0,n.kt)("li",{parentName:"ol",id:"fn-1"},"The algorithm ensures that an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," for a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/synonym",hovertext:"Synonym: a Term that has the same (or similar) meaning as another Term."},"synonym")," of another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," identical to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," for that other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term"),", but if the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that specifies the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/synonym",hovertext:"Synonym: a Term that has the same (or similar) meaning as another Term."},"synonym")," has additional front matter (e.g. a slightly modified ",(0,n.kt)("inlineCode",{parentName:"li"},"glossaryText")," field), that front matter is retained in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),". It is up to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," to make sure this does not pose any problems, and up to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," to do appropriate checks.",(0,n.kt)("a",{parentName:"li",href:"#fnref-1",className:"footnote-backref"},"\u21a9")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/23374ca6.24da3043.js b/assets/js/23374ca6.97be4001.js similarity index 99% rename from assets/js/23374ca6.24da3043.js rename to assets/js/23374ca6.97be4001.js index bf64d18857..af4602c466 100644 --- a/assets/js/23374ca6.24da3043.js +++ b/assets/js/23374ca6.97be4001.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[8421],{3905:function(e,t,o){o.d(t,{Zo:function(){return l},kt:function(){return f}});var n=o(7294);function r(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function i(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function a(e){for(var t=1;t=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=n.createContext({}),u=function(e){var t=n.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},l=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var o=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),m=u(o),f=r,d=m["".concat(c,".").concat(f)]||m[f]||p[f]||i;return o?n.createElement(d,a(a({ref:t},l),{},{components:o})):n.createElement(d,a({ref:t},l))}));function f(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=o.length,a=new Array(i);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,a[1]=s;for(var u=2;u=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=n.createContext({}),u=function(e){var t=n.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},l=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var o=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),m=u(o),f=r,d=m["".concat(c,".").concat(f)]||m[f]||p[f]||i;return o?n.createElement(d,a(a({ref:t},l),{},{components:o})):n.createElement(d,a({ref:t},l))}));function f(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=o.length,a=new Array(i);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,a[1]=s;for(var u=2;u=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),m=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},h=function(e){var t=m(e.components);return i.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),d=m(o),l=n,g=d["".concat(c,".").concat(l)]||d[l]||p[l]||a;return o?i.createElement(g,s(s({ref:t},h),{},{components:o})):i.createElement(g,s({ref:t},h))}));function l(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,s=new Array(a);s[0]=d;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,s[1]=r;for(var m=2;m=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),m=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},h=function(e){var t=m(e.components);return i.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),d=m(o),l=n,g=d["".concat(c,".").concat(l)]||d[l]||p[l]||a;return o?i.createElement(g,s(s({ref:t},h),{},{components:o})):i.createElement(g,s({ref:t},h))}));function l(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,s=new Array(a);s[0]=d;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,s[1]=r;for(var m=2;m=0||(s[i]=e[i]);return s}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var c=o.createContext({}),p=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},h=function(e){var t=p(e.components);return o.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},f=o.forwardRef((function(e,t){var i=e.components,s=e.mdxType,n=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),f=p(i),d=s,m=f["".concat(c,".").concat(d)]||f[d]||l[d]||n;return i?o.createElement(m,a(a({ref:t},h),{},{components:i})):o.createElement(m,a({ref:t},h))}));function d(e,t){var i=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var n=i.length,a=new Array(n);a[0]=f;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:s,a[1]=r;for(var p=2;p=0||(s[i]=e[i]);return s}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var c=o.createContext({}),p=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},h=function(e){var t=p(e.components);return o.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},f=o.forwardRef((function(e,t){var i=e.components,s=e.mdxType,n=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),f=p(i),d=s,m=f["".concat(c,".").concat(d)]||f[d]||l[d]||n;return i?o.createElement(m,a(a({ref:t},h),{},{components:i})):o.createElement(m,a({ref:t},h))}));function d(e,t){var i=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var n=i.length,a=new Array(n);a[0]=f;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:s,a[1]=r;for(var p=2;p=0||(a[o]=t[o]);return a}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(a[o]=t[o])}return a}var c=i.createContext({}),h=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):r(r({},e),t)),o},d=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},m=i.forwardRef((function(t,e){var o=t.components,a=t.mdxType,n=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),m=h(o),p=a,l=m["".concat(c,".").concat(p)]||m[p]||u[p]||n;return o?i.createElement(l,r(r({ref:e},d),{},{components:o})):i.createElement(l,r({ref:e},d))}));function p(t,e){var o=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var n=o.length,r=new Array(n);r[0]=m;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:a,r[1]=s;for(var h=2;h=0||(a[o]=t[o]);return a}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(a[o]=t[o])}return a}var c=i.createContext({}),h=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):r(r({},e),t)),o},d=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},m=i.forwardRef((function(t,e){var o=t.components,a=t.mdxType,n=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),m=h(o),p=a,l=m["".concat(c,".").concat(p)]||m[p]||u[p]||n;return o?i.createElement(l,r(r({ref:e},d),{},{components:o})):i.createElement(l,r({ref:e},d))}));function p(t,e){var o=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var n=o.length,r=new Array(n);r[0]=m;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:a,r[1]=s;for(var h=2;h=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=o.createContext({}),h=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},l=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,c=e.parentName,l=r(e,["components","mdxType","originalType","parentName"]),m=h(n),p=i,u=m["".concat(c,".").concat(p)]||m[p]||d[p]||a;return n?o.createElement(u,s(s({ref:t},l),{},{components:n})):o.createElement(u,s({ref:t},l))}));function p(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,s=new Array(a);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:i,s[1]=r;for(var h=2;h=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=o.createContext({}),h=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},l=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,c=e.parentName,l=r(e,["components","mdxType","originalType","parentName"]),m=h(n),p=i,u=m["".concat(c,".").concat(p)]||m[p]||d[p]||a;return n?o.createElement(u,s(s({ref:t},l),{},{components:n})):o.createElement(u,s({ref:t},l))}));function p(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,s=new Array(a);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:i,s[1]=r;for(var h=2;h=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=o.createContext({}),m=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},l=function(e){var t=m(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=m(n),h=i,u=d["".concat(c,".").concat(h)]||d[h]||p[h]||a;return n?o.createElement(u,r(r({ref:t},l),{},{components:n})):o.createElement(u,r({ref:t},l))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,r=new Array(a);r[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,r[1]=s;for(var m=2;m=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=o.createContext({}),m=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},l=function(e){var t=m(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=m(n),h=i,u=d["".concat(c,".").concat(h)]||d[h]||p[h]||a;return n?o.createElement(u,r(r({ref:t},l),{},{components:n})):o.createElement(u,r({ref:t},l))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,r=new Array(a);r[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,r[1]=s;for(var m=2;m=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var l=n.createContext({}),c=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},d=function(e){var t=c(e.components);return n.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),u=c(r),m=a,f=u["".concat(l,".").concat(m)]||u[m]||p[m]||o;return r?n.createElement(f,i(i({ref:t},d),{},{components:r})):n.createElement(f,i({ref:t},d))}));function m(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=u;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:a,i[1]=s;for(var c=2;c=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var l=n.createContext({}),c=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},d=function(e){var t=c(e.components);return n.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,l=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),u=c(r),m=a,f=u["".concat(l,".").concat(m)]||u[m]||p[m]||o;return r?n.createElement(f,i(i({ref:t},d),{},{components:r})):n.createElement(f,i({ref:t},d))}));function m(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,i=new Array(o);i[0]=u;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:a,i[1]=s;for(var c=2;c=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var c=a.createContext({}),l=function(e){var t=a.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},h=function(e){var t=l(e.components);return a.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var i=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=l(i),m=n,f=p["".concat(c,".").concat(m)]||p[m]||d[m]||o;return i?a.createElement(f,r(r({ref:t},h),{},{components:i})):a.createElement(f,r({ref:t},h))}));function m(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=i.length,r=new Array(o);r[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,r[1]=s;for(var l=2;l child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function p(e){var t=e.values,i=e.children;return(0,n.useMemo)((function(){var e=null!=t?t:d(i);return function(e){var t=(0,l.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,i])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function f(e){var t=e.queryString,i=void 0!==t&&t,a=e.groupId,o=(0,s.k6)(),r=function(e){var t=e.queryString,i=void 0!==t&&t,a=e.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,c._X)(r),(0,n.useCallback)((function(e){if(r){var t=new URLSearchParams(o.location.search);t.set(r,e),o.replace(Object.assign({},o.location,{search:t.toString()}))}}),[r,o])]}function u(e){var t,i,a,o,r=e.defaultValue,s=e.queryString,c=void 0!==s&&s,l=e.groupId,d=p(e),u=(0,n.useState)((function(){return function(e){var t,i=e.defaultValue,a=e.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!m({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var n=null!=(t=a.find((function(e){return e.default})))?t:a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:r,tabValues:d})})),g=u[0],y=u[1],k=f({queryString:c,groupId:l}),v=k[0],b=k[1],C=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:l}.groupId),i=(0,h.Nk)(t),a=i[0],o=i[1],[a,(0,n.useCallback)((function(e){t&&o.set(e)}),[t,o])]),T=C[0],w=C[1],N=function(){var e=null!=v?v:T;return m({value:e,tabValues:d})?e:null}();return(0,n.useLayoutEffect)((function(){N&&y(N)}),[N]),{selectedValue:g,selectValue:(0,n.useCallback)((function(e){if(!m({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);y(e),b(e),w(e)}),[b,w,d]),tabValues:d}}var g=i(2389),y="tabList__CuJ",k="tabItem_LNqP";function v(e){var t=e.className,i=e.block,s=e.selectedValue,c=e.selectValue,l=e.tabValues,h=[],d=(0,r.o5)().blockElementScrollPositionUntilNextRender,p=function(e){var t=e.currentTarget,i=h.indexOf(t),a=l[i].value;a!==s&&(d(t),c(a))},m=function(e){var t,i=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":var a,n=h.indexOf(e.currentTarget)+1;i=null!=(a=h[n])?a:h[0];break;case"ArrowLeft":var o,r=h.indexOf(e.currentTarget)-1;i=null!=(o=h[r])?o:h[h.length-1]}null==(t=i)||t.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.Z)("tabs",{"tabs--block":i},t)},l.map((function(e){var t=e.value,i=e.label,r=e.attributes;return n.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:function(e){return h.push(e)},onKeyDown:m,onClick:p},r,{className:(0,o.Z)("tabs__item",k,null==r?void 0:r.className,{"tabs__item--active":s===t})}),null!=i?i:t)})))}function b(e){var t=e.lazy,i=e.children,a=e.selectedValue,o=(Array.isArray(i)?i:[i]).filter(Boolean);if(t){var r=o.find((function(e){return e.props.value===a}));return r?(0,n.cloneElement)(r,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},o.map((function(e,t){return(0,n.cloneElement)(e,{key:t,hidden:e.props.value!==a})})))}function C(e){var t=u(e);return n.createElement("div",{className:(0,o.Z)("tabs-container",y)},n.createElement(v,(0,a.Z)({},e,t)),n.createElement(b,(0,a.Z)({},e,t)))}function T(e){var t=(0,g.Z)();return n.createElement(C,(0,a.Z)({key:String(t)},e))}},6592:function(e,t,i){i.r(t),i.d(t,{assets:function(){return p},contentTitle:function(){return h},default:function(){return g},frontMatter:function(){return l},mark:function(){return f},metadata:function(){return d},toc:function(){return m}});var a=i(7462),n=i(3366),o=(i(7294),i(3905)),r=(i(4996),i(4866)),s=i(5162),c=["components"],l={id:"ict",sidebar_label:"Integrity Checking",date:20220421},h=void 0,d={unversionedId:"spec-tools/ict",id:"spec-tools/ict",title:"ict",description:"text to mark",source:"@site/docs/spec-tools/11-ict.md",sourceDirName:"spec-tools",slug:"/spec-tools/ict",permalink:"/tev2-specifications/docs/spec-tools/ict",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/11-ict.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:11,frontMatter:{id:"ict",sidebar_label:"Integrity Checking",date:20220421},sidebar:"tev2SideBar",previous:{title:"TEv2 Terminology Toolbox",permalink:"/tev2-specifications/docs/tev2-toolbox"},next:{title:"MRG Importer",permalink:"/tev2-specifications/docs/spec-tools/mrg-importer"}},p={},m=[{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Parameters (Command-line arguments)",id:"parameters-command-line-arguments",level:3},{value:"Integrity Checks",id:"integrity-checks",level:2},{value:"SAF integrity",id:"saf-integrity",level:3},{value:"MRG integrity",id:"mrg-integrity",level:3},{value:"Header fields for termType: relation",id:"header-fields-for-termtype-relation",level:3},{value:"Curated Text integrity",id:"curated-text-integrity",level:3},{value:"Concepts",id:"concepts",level:4},{value:"Patterns",id:"patterns",level:4},{value:"Processing, Errors and Warnings",id:"processing-errors-and-warnings",level:2},{value:"Deploying the Tool",id:"deploying-the-tool",level:2},{value:"Discussion Notes",id:"discussion-notes",level:2}],f=function(e){var t=e.children;return(0,o.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},t)},u={toc:m,mark:f};function g(e){var t=e.components,i=(0,n.Z)(e,c);return(0,o.kt)("wrapper",(0,a.Z)({},u,i,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"The text below will need a thorough revision due to various changes that have not yet been taken into account")),(0,o.kt)("h1",{id:"integrity-checker-tool-ict"},"Integrity Checker Tool (ICT)"),(0,o.kt)("p",null,"The ",(0,o.kt)("strong",{parentName:"p"},"Integrity Checker Tool (",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT"),")")," tests the integrity of (a selection of) the data in files that are ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated")," within a particular ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", i.e. the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),", and ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),". The integrity checking of other data, e.g. ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/formatted-text",hovertext:"Formatted Text: a text that has been processed and arranged to have a specific layout, style, and presentation, making it visually appealing and easy to read."},"formatted texts"),", such as ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRGs"),", is outside the scope of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT"),"."),(0,o.kt)("p",null,"In order for the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," to be used optimally, it will assume for specific kinds of files that the integrity of other files is guaranteed, as follows:"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"When testing a ... ,"),(0,o.kt)("th",{parentName:"tr",align:"left"},"the integrity is assumed of"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," and ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))))),(0,o.kt)("p",null,"The idea behind this is to enable ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," to only test changes they have made rather than testing the entire set of files."),(0,o.kt)("admonition",{title:"Editor's Note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"As the tool hasn't been made, and no practical experience has been gained, many of these optimizations may not work in the first versions.")),(0,o.kt)("admonition",{title:"Editor's Note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"There's a lot of duplication in syntax specs. For example, the ",(0,o.kt)("a",{parentName:"p",href:"docs/spec-files/saf"},"SAF spec")," and ",(0,o.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg"},"MRG spec")," define the regex for various kinds of tags all over the place. It would be nice to have a way by which syntax can be specified in one location that is 'naturally predictable' so that both readers and maintainers of the documentation can easily find it. One way might be to include the syntax in a 'popover', i.e. that we define stuff with particular syntax as a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concept")," and have the syntax be included in its ",(0,o.kt)("inlineCode",{parentName:"p"},"hoverText"),".")),(0,o.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,o.kt)("p",null,"The behavior of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," can be configured per call e.g. by a configuration file and/or command-line parameters. Examples include specifications for:"),(0,o.kt)("p",null,"The command-line syntax is as follows:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"ict [ ] [ ]\n")),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Where:"),(0,o.kt)("th",{parentName:"tr",align:"left"}))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"left"},"(optional) specifies the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," whose integrity is to be tested. If ",(0,o.kt)("inlineCode",{parentName:"td"},"")," is omitted and a configuration file is used, its value is read from that file. If cases where ",(0,o.kt)("inlineCode",{parentName:"td"},"")," isn't specified, the current directory is assumed to be the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),".",(0,o.kt)("br",null),'In this document, we use the term "',(0,o.kt)("strong",{parentName:"td"},"this scopedir"),'" to refer to the value of ',(0,o.kt)("inlineCode",{parentName:"td"},""),", and ",(0,o.kt)("strong",{parentName:"td"},"this scope"),'" to refer to the associated ',(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"left"},"The following commands are valid:",(0,o.kt)("br",null),(0,o.kt)("ul",null,(0,o.kt)("li",null,(0,o.kt)("inlineCode",{parentName:"td"},"-saf"),": check the integrity of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". It does not take any further parameters."),(0,o.kt)("li",null,(0,o.kt)("inlineCode",{parentName:"td"},"-mrg"),": check the integrity of (one of) the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG(s)"),". Additional parameters can be used, e.g. to specify a particular version of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," to be checked."),(0,o.kt)("li",null,(0,o.kt)("inlineCode",{parentName:"td"},"-txt"),": check the integrity of ",(0,o.kt)("em",{parentName:"td"},"this scope's")," ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated files"),". Additional parameters can be used, e.g. to select a particular subset of these files."),(0,o.kt)("li",null,(0,o.kt)("inlineCode",{parentName:"td"},"-all"),": check all ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated")," files within ",(0,o.kt)("em",{parentName:"td"},"this scope"),". Additional parameters may be used, e.g. to skip the checking of specific files.")))),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"left"},"a list of parameters that provide further specifications for what the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," should be checking.")))),(0,o.kt)("h3",{id:"parameters-command-line-arguments"},"Parameters (Command-line arguments)"),(0,o.kt)("admonition",{title:"Editor's Note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"The current set of parameters is just an initial suggestion. We'll need to see what will actually be needed in practice.")),(0,o.kt)("details",null,(0,o.kt)("summary",null,"Legend"),(0,o.kt)("p",null,"The columns in the following table are defined as follows:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,o.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,o.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If (always) required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Cmd"))," specifies a ",(0,o.kt)("inlineCode",{parentName:"li"},"")," value: if the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," is called with this ",(0,o.kt)("inlineCode",{parentName:"li"},""),", then this parameter will be used by the tool as described. A ",(0,o.kt)("inlineCode",{parentName:"li"},"*")," in this field indicates that this parameter can be used with every command."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,o.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Value"),(0,o.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,o.kt)("th",{parentName:"tr",align:"center"},"Cmds"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"config")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"*"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter SHOULD NOT appear in the configuration file itself.")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,o.kt)("td",{parentName:"tr",align:"center"},"*"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Path to the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," within which the tool is to operate, i.e.: ",(0,o.kt)("em",{parentName:"td"},"this scopedir"),".")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"syntax")),(0,o.kt)("td",{parentName:"tr",align:"left"}),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"*"),(0,o.kt)("td",{parentName:"tr",align:"left"},"This argument has no value. If present, the syntax of all (YAML) fields in the file is checked against their specifications (see e.g. ",(0,o.kt)("a",{parentName:"td",href:"docs/spec-files/saf"},"SAF specs"),", ",(0,o.kt)("a",{parentName:"td",href:"/docs/spec-tools/terminology-construction"},"terminology construction"),", ",(0,o.kt)("a",{parentName:"td",href:"/docs/spec-files/mrg"},"MRG specs"),", ",(0,o.kt)("a",{parentName:"td",href:"/docs/spec-files/ctext"},"Curated Texts"),", ",(0,o.kt)("a",{parentName:"td",href:"/docs/spec-syntax/term-ref-syntax"},"TermRefs"),").")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"}),(0,o.kt)("td",{parentName:"tr",align:"center"},(0,o.kt)("inlineCode",{parentName:"td"},"-mrg")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that is used to select the version of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," to be checked. The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is selected will either have ",(0,o.kt)("inlineCode",{parentName:"td"},"")," as the contents of the field ",(0,o.kt)("inlineCode",{parentName:"td"},"terminology.vsntag"),", or as an element in the list of ",(0,o.kt)("inlineCode",{parentName:"td"},"terminology.alvsntags"),".")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"term")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"-txt"),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a particular ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),". The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", whose (front-matter) field ",(0,o.kt)("inlineCode",{parentName:"td"},"term")," matches this parameter, will be integrity-checked.")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"termtypes")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"-txt"),(0,o.kt)("td",{parentName:"tr",align:"left"},"List of texts that serve to identify a specific kind of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),", e.g. ",(0,o.kt)("inlineCode",{parentName:"td"},"concept"),", or ",(0,o.kt)("inlineCode",{parentName:"td"},"pattern"),". Every ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", whose (front-matter) field ",(0,o.kt)("inlineCode",{parentName:"td"},"termtype")," appears as an element in the ",(0,o.kt)("inlineCode",{parentName:"td"},"")," list, will be integrity-checked.")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"grouptags")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"-txt"),(0,o.kt)("td",{parentName:"tr",align:"left"},"List of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags"),". Every ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", whose (front-matter) field ",(0,o.kt)("inlineCode",{parentName:"td"},"grouptags")," has an element that also appears as an element in the ",(0,o.kt)("inlineCode",{parentName:"td"},"")," list, will be integrity-checked.")))),(0,o.kt)("h2",{id:"integrity-checks"},"Integrity Checks"),(0,o.kt)("p",null,"The checks that are done on files depend on the kind of file that is being checked. This section lists the tests for the various kinds of files. Every file is assumed to be part of ",(0,o.kt)("em",{parentName:"p"},"this scope"),", and reside in the associated ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," (i.e.: ",(0,o.kt)("em",{parentName:"p"},"this scopedir"),")."),(0,o.kt)("h3",{id:"saf-integrity"},"SAF integrity"),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," must be a file that contains valid YAML syntax."),(0,o.kt)("p",null,"The integrity of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," requires the following conditions to be satisfied for the key's in the ",(0,o.kt)("inlineCode",{parentName:"p"},"scope")," section:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," must point to the directory in which the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," is stored for public use (i.e. in this scopedir)."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"curatedir"),', when appended to the value of "',(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),'/", must point to the directory that stores the ',(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated files"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"glossarydir")," must point to an existing directory."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"mrgfile"),' must be an existing file in directory "',(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),'/" (note that an empty ',(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is still a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that can have an ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),")."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"hrgfile"),' must be an existing file in directory "',(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),'/" (note that an empty ',(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is still a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that can have a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),")."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"license")," must be an existing file in the directory pointed to by ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),".")),(0,o.kt)("p",null,"The integrity of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," requires the following conditions to be satisfied for every element in the ",(0,o.kt)("inlineCode",{parentName:"p"},"scopes")," section:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopetags")," must be a nonempty list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," must be a valid URL, that points to an existing directory resource.")),(0,o.kt)("p",null,"The integrity of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," requires the following conditions to be satisfied for every element in the ",(0,o.kt)("inlineCode",{parentName:"p"},"versions")," section:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," SHOULD not appear as an element in the ",(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," field of this ",(0,o.kt)("inlineCode",{parentName:"li"},"version")," element, and it MUST NOT appear in the ",(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," or ",(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," fields of any other element in the ",(0,o.kt)("inlineCode",{parentName:"li"},"versions")," section."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," must be a (possibly empty) list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags"),", each of which SHOULD not appear in the ",(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," field of the element, and MUST NOT appear in the ",(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," or ",(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," fields of any other element in the ",(0,o.kt)("inlineCode",{parentName:"li"},"versions")," section."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"termselcrit")," must be a non-emptly list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"status")," SHOULD be a non-empty field.")),(0,o.kt)("h3",{id:"mrg-integrity"},"MRG integrity"),(0,o.kt)("p",null,"The integrity checking for ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," files assumes that the integrity conditions of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," file are satisfied, and that the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file itself contains valid YAML syntax."),(0,o.kt)("p",null,"The integrity checking comprises every (group of) test(s) as specified in this sub-section."),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," MUST have sections named ",(0,o.kt)("inlineCode",{parentName:"p"},"terminology"),", ",(0,o.kt)("inlineCode",{parentName:"p"},"scopes"),", and ",(0,o.kt)("inlineCode",{parentName:"p"},"entries"),"."),(0,o.kt)("p",null,"Integrity checks for the ",(0,o.kt)("inlineCode",{parentName:"p"},"terminology")," section include:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," must point to the directory in which the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," is stored for public use (i.e. in this scopedir)."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," must be a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that SHOULD not appear as an element in the ",(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," field."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," must be a (possibly empty) list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags"),", none of which appear in the ",(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," field."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"license")," must be an existing file in the directory pointed to by ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),".")),(0,o.kt)("p",null,"Integrity checks for the ",(0,o.kt)("inlineCode",{parentName:"p"},"scopes")," section include:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopetags")," must be a nonempty list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," must be a valid URL, that points to an existing directory resource other than the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of the current ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". This directory MUST contain a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". ",(0,o.kt)("mark",null,"Do we need an option to test the integrity of such ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAFs"),"?"))),(0,o.kt)("p",null,"Integrity checks for the ",(0,o.kt)("inlineCode",{parentName:"p"},"entries")," section consist of one part that is generic for all entries, and another part that depends on the value of the ",(0,o.kt)("inlineCode",{parentName:"p"},"termtype")," field (so that checking of e.g. entries of type ",(0,o.kt)("inlineCode",{parentName:"p"},"concept")," and of type ",(0,o.kt)("inlineCode",{parentName:"p"},"pattern")," can have different checks.) The checks that every entry must pass include the following:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopetag")," MUST also appear as the value of ",(0,o.kt)("inlineCode",{parentName:"li"},"terminology.scopetag"),", or as an element in one of the ",(0,o.kt)("inlineCode",{parentName:"li"},"scopes.scopetags")," elements."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"termtype")," SHOULD be ",(0,o.kt)("mark",null,"tbd.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"grouptags")," MUST be a list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptag")," elements."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"license")," MUST be an existing file in the directory pointed to by ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"status")," SHOULD match an element in the list ",(0,o.kt)("inlineCode",{parentName:"li"},"scope.statuses")," of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"locator"),", if specified, MUST have a readable resource (file) at ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),"/",(0,o.kt)("inlineCode",{parentName:"li"},"curatedir"),"/",(0,o.kt)("inlineCode",{parentName:"li"},"locator"),", where ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," and ",(0,o.kt)("inlineCode",{parentName:"li"},"curatedir")," are specified in the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"navurl"),", if specified, MUST return an HTML-resource when specified as the URL in a HTTP(S) request method ",(0,o.kt)("inlineCode",{parentName:"li"},"GET")," or ",(0,o.kt)("inlineCode",{parentName:"li"},"HEAD"),".")),(0,o.kt)("p",null,"For specific kinds of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),", the following additional constraints MUST be satisfied:"),(0,o.kt)(r.Z,{defaultValue:"concept",values:[{label:"Terms",value:"term"},{label:"Concepts",value:"concept"},{label:"Relations",value:"relation"},{label:"Mental Models",value:"pattern"}],mdxType:"Tabs"},(0,o.kt)(s.Z,{value:"concept",mdxType:"TabItem"},(0,o.kt)("br",null),(0,o.kt)("p",null,"The following constraints MUST hold for ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," of type ",(0,o.kt)("inlineCode",{parentName:"p"},"concept"),":"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"if a ",(0,o.kt)("inlineCode",{parentName:"li"},"glossaryText")," contains a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),", then the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," SHOULD be resolvable ",(0,o.kt)("mark",null,"(reference to the term-ref-integrity checks)"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"hoverText")," MUST NOT contain any ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),", nor any other ",(0,o.kt)("a",{parentName:"li",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown links"),"."))),(0,o.kt)(s.Z,{value:"term",mdxType:"TabItem"},(0,o.kt)("br",null),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"As header fields for ",(0,o.kt)("inlineCode",{parentName:"p"},"term")," termtypes need to be discussed, we do not yet specify any constraints"))),(0,o.kt)(s.Z,{value:"relation",mdxType:"TabItem"},(0,o.kt)("br",null),(0,o.kt)("h3",{id:"header-fields-for-termtype-relation"},"Header fields for ",(0,o.kt)("inlineCode",{parentName:"h3"},"termType: relation")),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"As ",(0,o.kt)("inlineCode",{parentName:"p"},"relation"),"s need to be discussed, we do not yet specify any constraints."))),(0,o.kt)(s.Z,{value:"pattern",mdxType:"TabItem"},(0,o.kt)("br",null),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"As ",(0,o.kt)("inlineCode",{parentName:"p"},"pattern"),"s need to be discussed, we do not yet specify any constraints.")))),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Checks need to be added to ensure congruence between terms and any synonyms that are defined for them. For example, they should have the same value in various fields, e.g., ",(0,o.kt)("inlineCode",{parentName:"p"},"termType"),", ",(0,o.kt)("inlineCode",{parentName:"p"},"isa")," (but not ",(0,o.kt)("inlineCode",{parentName:"p"},"glossaryText")," or ",(0,o.kt)("inlineCode",{parentName:"p"},"synonymOf"),")")),(0,o.kt)("h3",{id:"curated-text-integrity"},"Curated Text integrity"),(0,o.kt)("p",null,"The integrity of any ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file requires the integrity conditions of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file to be satisfied, as well as the following conditions:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("mark",null,"TBD"))),(0,o.kt)("h4",{id:"concepts"},"Concepts"),(0,o.kt)("p",null,"The integrity of any ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file that has ",(0,o.kt)("inlineCode",{parentName:"p"},"termType: concept")," requires the integrity conditions of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file to be satisfied, as well as the following conditions:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("mark",null,"TBD"))),(0,o.kt)("h4",{id:"patterns"},"Patterns"),(0,o.kt)("p",null,"The integrity of any ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file that has ",(0,o.kt)("inlineCode",{parentName:"p"},"termType: concept")," requires the integrity conditions of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file to be satisfied, as well as the following conditions:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("mark",null,"TBD"))),(0,o.kt)("h2",{id:"processing-errors-and-warnings"},"Processing, Errors and Warnings"),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," starts by reading its command-line and configuration file. If the command-line has a key that is also found in the configuration file, the command-line key-value pair takes precedence. The resulting set of key-value pairs is tested for proper syntax and validity. Every improper syntax and every invalidity found will be logged."),(0,o.kt)("p",null,"Then, the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," ",(0,o.kt)("mark",null,"TBD")),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," logs every error- and/or warning condition that it comes across while processing its configuration file, commandline parameters, and input files, in a way that helps tool-operators and document ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to identify and fix such conditions."),(0,o.kt)("h2",{id:"deploying-the-tool"},"Deploying the Tool"),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author"),"/modify CI-pipes to use that deployment."),(0,o.kt)("h2",{id:"discussion-notes"},"Discussion Notes"),(0,o.kt)("p",null,"This section lists the topics that may need further discission"))}g.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[4060],{3905:function(e,t,i){i.d(t,{Zo:function(){return h},kt:function(){return m}});var a=i(7294);function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,a)}return i}function r(e){for(var t=1;t=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var c=a.createContext({}),l=function(e){var t=a.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},h=function(e){var t=l(e.components);return a.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var i=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=l(i),m=n,f=p["".concat(c,".").concat(m)]||p[m]||d[m]||o;return i?a.createElement(f,r(r({ref:t},h),{},{components:i})):a.createElement(f,r({ref:t},h))}));function m(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=i.length,r=new Array(o);r[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,r[1]=s;for(var l=2;l child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function p(e){var t=e.values,i=e.children;return(0,n.useMemo)((function(){var e=null!=t?t:d(i);return function(e){var t=(0,l.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,i])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function f(e){var t=e.queryString,i=void 0!==t&&t,a=e.groupId,o=(0,s.k6)(),r=function(e){var t=e.queryString,i=void 0!==t&&t,a=e.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,c._X)(r),(0,n.useCallback)((function(e){if(r){var t=new URLSearchParams(o.location.search);t.set(r,e),o.replace(Object.assign({},o.location,{search:t.toString()}))}}),[r,o])]}function u(e){var t,i,a,o,r=e.defaultValue,s=e.queryString,c=void 0!==s&&s,l=e.groupId,d=p(e),u=(0,n.useState)((function(){return function(e){var t,i=e.defaultValue,a=e.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!m({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var n=null!=(t=a.find((function(e){return e.default})))?t:a[0];if(!n)throw new Error("Unexpected error: 0 tabValues");return n.value}({defaultValue:r,tabValues:d})})),g=u[0],y=u[1],k=f({queryString:c,groupId:l}),v=k[0],b=k[1],C=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:l}.groupId),i=(0,h.Nk)(t),a=i[0],o=i[1],[a,(0,n.useCallback)((function(e){t&&o.set(e)}),[t,o])]),T=C[0],w=C[1],N=function(){var e=null!=v?v:T;return m({value:e,tabValues:d})?e:null}();return(0,n.useLayoutEffect)((function(){N&&y(N)}),[N]),{selectedValue:g,selectValue:(0,n.useCallback)((function(e){if(!m({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);y(e),b(e),w(e)}),[b,w,d]),tabValues:d}}var g=i(2389),y="tabList__CuJ",k="tabItem_LNqP";function v(e){var t=e.className,i=e.block,s=e.selectedValue,c=e.selectValue,l=e.tabValues,h=[],d=(0,r.o5)().blockElementScrollPositionUntilNextRender,p=function(e){var t=e.currentTarget,i=h.indexOf(t),a=l[i].value;a!==s&&(d(t),c(a))},m=function(e){var t,i=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":var a,n=h.indexOf(e.currentTarget)+1;i=null!=(a=h[n])?a:h[0];break;case"ArrowLeft":var o,r=h.indexOf(e.currentTarget)-1;i=null!=(o=h[r])?o:h[h.length-1]}null==(t=i)||t.focus()};return n.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,o.Z)("tabs",{"tabs--block":i},t)},l.map((function(e){var t=e.value,i=e.label,r=e.attributes;return n.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:function(e){return h.push(e)},onKeyDown:m,onClick:p},r,{className:(0,o.Z)("tabs__item",k,null==r?void 0:r.className,{"tabs__item--active":s===t})}),null!=i?i:t)})))}function b(e){var t=e.lazy,i=e.children,a=e.selectedValue,o=(Array.isArray(i)?i:[i]).filter(Boolean);if(t){var r=o.find((function(e){return e.props.value===a}));return r?(0,n.cloneElement)(r,{className:"margin-top--md"}):null}return n.createElement("div",{className:"margin-top--md"},o.map((function(e,t){return(0,n.cloneElement)(e,{key:t,hidden:e.props.value!==a})})))}function C(e){var t=u(e);return n.createElement("div",{className:(0,o.Z)("tabs-container",y)},n.createElement(v,(0,a.Z)({},e,t)),n.createElement(b,(0,a.Z)({},e,t)))}function T(e){var t=(0,g.Z)();return n.createElement(C,(0,a.Z)({key:String(t)},e))}},6592:function(e,t,i){i.r(t),i.d(t,{assets:function(){return p},contentTitle:function(){return h},default:function(){return g},frontMatter:function(){return l},mark:function(){return f},metadata:function(){return d},toc:function(){return m}});var a=i(7462),n=i(3366),o=(i(7294),i(3905)),r=(i(4996),i(4866)),s=i(5162),c=["components"],l={id:"ict",sidebar_label:"Integrity Checking",date:20220421},h=void 0,d={unversionedId:"spec-tools/ict",id:"spec-tools/ict",title:"ict",description:"text to mark",source:"@site/docs/spec-tools/11-ict.md",sourceDirName:"spec-tools",slug:"/spec-tools/ict",permalink:"/tev2-specifications/docs/spec-tools/ict",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/11-ict.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:11,frontMatter:{id:"ict",sidebar_label:"Integrity Checking",date:20220421},sidebar:"tev2SideBar",previous:{title:"TEv2 Terminology Toolbox",permalink:"/tev2-specifications/docs/tev2-toolbox"},next:{title:"MRG Importer",permalink:"/tev2-specifications/docs/spec-tools/mrg-importer"}},p={},m=[{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Parameters (Command-line arguments)",id:"parameters-command-line-arguments",level:3},{value:"Integrity Checks",id:"integrity-checks",level:2},{value:"SAF integrity",id:"saf-integrity",level:3},{value:"MRG integrity",id:"mrg-integrity",level:3},{value:"Header fields for termType: relation",id:"header-fields-for-termtype-relation",level:3},{value:"Curated Text integrity",id:"curated-text-integrity",level:3},{value:"Concepts",id:"concepts",level:4},{value:"Patterns",id:"patterns",level:4},{value:"Processing, Errors and Warnings",id:"processing-errors-and-warnings",level:2},{value:"Deploying the Tool",id:"deploying-the-tool",level:2},{value:"Discussion Notes",id:"discussion-notes",level:2}],f=function(e){var t=e.children;return(0,o.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},t)},u={toc:m,mark:f};function g(e){var t=e.components,i=(0,n.Z)(e,c);return(0,o.kt)("wrapper",(0,a.Z)({},u,i,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"The text below will need a thorough revision due to various changes that have not yet been taken into account")),(0,o.kt)("h1",{id:"integrity-checker-tool-ict"},"Integrity Checker Tool (ICT)"),(0,o.kt)("p",null,"The ",(0,o.kt)("strong",{parentName:"p"},"Integrity Checker Tool (",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT"),")")," tests the integrity of (a selection of) the data in files that are ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated")," within a particular ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", i.e. the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),", and ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),". The integrity checking of other data, e.g. ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/formatted-text",hovertext:"Formatted Text: a text that has been processed and arranged to have a specific layout, style, and presentation, making it visually appealing and easy to read."},"formatted texts"),", such as ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRGs"),", is outside the scope of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT"),"."),(0,o.kt)("p",null,"In order for the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," to be used optimally, it will assume for specific kinds of files that the integrity of other files is guaranteed, as follows:"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"When testing a ... ,"),(0,o.kt)("th",{parentName:"tr",align:"left"},"the integrity is assumed of"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," and ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))))),(0,o.kt)("p",null,"The idea behind this is to enable ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," to only test changes they have made rather than testing the entire set of files."),(0,o.kt)("admonition",{title:"Editor's Note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"As the tool hasn't been made, and no practical experience has been gained, many of these optimizations may not work in the first versions.")),(0,o.kt)("admonition",{title:"Editor's Note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"There's a lot of duplication in syntax specs. For example, the ",(0,o.kt)("a",{parentName:"p",href:"docs/spec-files/saf"},"SAF spec")," and ",(0,o.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg"},"MRG spec")," define the regex for various kinds of tags all over the place. It would be nice to have a way by which syntax can be specified in one location that is 'naturally predictable' so that both readers and maintainers of the documentation can easily find it. One way might be to include the syntax in a 'popover', i.e. that we define stuff with particular syntax as a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concept")," and have the syntax be included in its ",(0,o.kt)("inlineCode",{parentName:"p"},"hoverText"),".")),(0,o.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,o.kt)("p",null,"The behavior of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," can be configured per call e.g. by a configuration file and/or command-line parameters. Examples include specifications for:"),(0,o.kt)("p",null,"The command-line syntax is as follows:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"ict [ ] [ ]\n")),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Where:"),(0,o.kt)("th",{parentName:"tr",align:"left"}))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"left"},"(optional) specifies the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," whose integrity is to be tested. If ",(0,o.kt)("inlineCode",{parentName:"td"},"")," is omitted and a configuration file is used, its value is read from that file. If cases where ",(0,o.kt)("inlineCode",{parentName:"td"},"")," isn't specified, the current directory is assumed to be the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),".",(0,o.kt)("br",null),'In this document, we use the term "',(0,o.kt)("strong",{parentName:"td"},"this scopedir"),'" to refer to the value of ',(0,o.kt)("inlineCode",{parentName:"td"},""),", and ",(0,o.kt)("strong",{parentName:"td"},"this scope"),'" to refer to the associated ',(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"left"},"The following commands are valid:",(0,o.kt)("br",null),(0,o.kt)("ul",null,(0,o.kt)("li",null,(0,o.kt)("inlineCode",{parentName:"td"},"-saf"),": check the integrity of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". It does not take any further parameters."),(0,o.kt)("li",null,(0,o.kt)("inlineCode",{parentName:"td"},"-mrg"),": check the integrity of (one of) the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG(s)"),". Additional parameters can be used, e.g. to specify a particular version of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," to be checked."),(0,o.kt)("li",null,(0,o.kt)("inlineCode",{parentName:"td"},"-txt"),": check the integrity of ",(0,o.kt)("em",{parentName:"td"},"this scope's")," ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated files"),". Additional parameters can be used, e.g. to select a particular subset of these files."),(0,o.kt)("li",null,(0,o.kt)("inlineCode",{parentName:"td"},"-all"),": check all ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated")," files within ",(0,o.kt)("em",{parentName:"td"},"this scope"),". Additional parameters may be used, e.g. to skip the checking of specific files.")))),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"left"},"a list of parameters that provide further specifications for what the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," should be checking.")))),(0,o.kt)("h3",{id:"parameters-command-line-arguments"},"Parameters (Command-line arguments)"),(0,o.kt)("admonition",{title:"Editor's Note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"The current set of parameters is just an initial suggestion. We'll need to see what will actually be needed in practice.")),(0,o.kt)("details",null,(0,o.kt)("summary",null,"Legend"),(0,o.kt)("p",null,"The columns in the following table are defined as follows:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,o.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,o.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If (always) required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Cmd"))," specifies a ",(0,o.kt)("inlineCode",{parentName:"li"},"")," value: if the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," is called with this ",(0,o.kt)("inlineCode",{parentName:"li"},""),", then this parameter will be used by the tool as described. A ",(0,o.kt)("inlineCode",{parentName:"li"},"*")," in this field indicates that this parameter can be used with every command."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,o.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Value"),(0,o.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,o.kt)("th",{parentName:"tr",align:"center"},"Cmds"),(0,o.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"config")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"*"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter SHOULD NOT appear in the configuration file itself.")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,o.kt)("td",{parentName:"tr",align:"center"},"*"),(0,o.kt)("td",{parentName:"tr",align:"left"},"Path to the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," within which the tool is to operate, i.e.: ",(0,o.kt)("em",{parentName:"td"},"this scopedir"),".")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"syntax")),(0,o.kt)("td",{parentName:"tr",align:"left"}),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"*"),(0,o.kt)("td",{parentName:"tr",align:"left"},"This argument has no value. If present, the syntax of all (YAML) fields in the file is checked against their specifications (see e.g. ",(0,o.kt)("a",{parentName:"td",href:"docs/spec-files/saf"},"SAF specs"),", ",(0,o.kt)("a",{parentName:"td",href:"/docs/spec-tools/terminology-construction"},"terminology construction"),", ",(0,o.kt)("a",{parentName:"td",href:"/docs/spec-files/mrg"},"MRG specs"),", ",(0,o.kt)("a",{parentName:"td",href:"/docs/spec-files/ctext"},"Curated Texts"),", ",(0,o.kt)("a",{parentName:"td",href:"/docs/spec-syntax/term-ref-syntax"},"TermRefs"),").")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"}),(0,o.kt)("td",{parentName:"tr",align:"center"},(0,o.kt)("inlineCode",{parentName:"td"},"-mrg")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that is used to select the version of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," to be checked. The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is selected will either have ",(0,o.kt)("inlineCode",{parentName:"td"},"")," as the contents of the field ",(0,o.kt)("inlineCode",{parentName:"td"},"terminology.vsntag"),", or as an element in the list of ",(0,o.kt)("inlineCode",{parentName:"td"},"terminology.alvsntags"),".")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"term")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"-txt"),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a particular ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),". The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", whose (front-matter) field ",(0,o.kt)("inlineCode",{parentName:"td"},"term")," matches this parameter, will be integrity-checked.")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"termtypes")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"-txt"),(0,o.kt)("td",{parentName:"tr",align:"left"},"List of texts that serve to identify a specific kind of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),", e.g. ",(0,o.kt)("inlineCode",{parentName:"td"},"concept"),", or ",(0,o.kt)("inlineCode",{parentName:"td"},"pattern"),". Every ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", whose (front-matter) field ",(0,o.kt)("inlineCode",{parentName:"td"},"termtype")," appears as an element in the ",(0,o.kt)("inlineCode",{parentName:"td"},"")," list, will be integrity-checked.")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"grouptags")),(0,o.kt)("td",{parentName:"tr",align:"left"},(0,o.kt)("inlineCode",{parentName:"td"},"")),(0,o.kt)("td",{parentName:"tr",align:"center"},"n"),(0,o.kt)("td",{parentName:"tr",align:"center"},"-txt"),(0,o.kt)("td",{parentName:"tr",align:"left"},"List of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags"),". Every ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", whose (front-matter) field ",(0,o.kt)("inlineCode",{parentName:"td"},"grouptags")," has an element that also appears as an element in the ",(0,o.kt)("inlineCode",{parentName:"td"},"")," list, will be integrity-checked.")))),(0,o.kt)("h2",{id:"integrity-checks"},"Integrity Checks"),(0,o.kt)("p",null,"The checks that are done on files depend on the kind of file that is being checked. This section lists the tests for the various kinds of files. Every file is assumed to be part of ",(0,o.kt)("em",{parentName:"p"},"this scope"),", and reside in the associated ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," (i.e.: ",(0,o.kt)("em",{parentName:"p"},"this scopedir"),")."),(0,o.kt)("h3",{id:"saf-integrity"},"SAF integrity"),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," must be a file that contains valid YAML syntax."),(0,o.kt)("p",null,"The integrity of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," requires the following conditions to be satisfied for the key's in the ",(0,o.kt)("inlineCode",{parentName:"p"},"scope")," section:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," must point to the directory in which the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," is stored for public use (i.e. in this scopedir)."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"curatedir"),', when appended to the value of "',(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),'/", must point to the directory that stores the ',(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated files"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"glossarydir")," must point to an existing directory."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"mrgfile"),' must be an existing file in directory "',(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),'/" (note that an empty ',(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is still a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that can have an ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),")."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"hrgfile"),' must be an existing file in directory "',(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),'/" (note that an empty ',(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is still a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that can have a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),")."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"license")," must be an existing file in the directory pointed to by ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),".")),(0,o.kt)("p",null,"The integrity of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," requires the following conditions to be satisfied for every element in the ",(0,o.kt)("inlineCode",{parentName:"p"},"scopes")," section:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopetags")," must be a nonempty list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," must be a valid URL, that points to an existing directory resource.")),(0,o.kt)("p",null,"The integrity of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," requires the following conditions to be satisfied for every element in the ",(0,o.kt)("inlineCode",{parentName:"p"},"versions")," section:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," SHOULD not appear as an element in the ",(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," field of this ",(0,o.kt)("inlineCode",{parentName:"li"},"version")," element, and it MUST NOT appear in the ",(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," or ",(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," fields of any other element in the ",(0,o.kt)("inlineCode",{parentName:"li"},"versions")," section."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," must be a (possibly empty) list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags"),", each of which SHOULD not appear in the ",(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," field of the element, and MUST NOT appear in the ",(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," or ",(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," fields of any other element in the ",(0,o.kt)("inlineCode",{parentName:"li"},"versions")," section."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"termselcrit")," must be a non-emptly list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"status")," SHOULD be a non-empty field.")),(0,o.kt)("h3",{id:"mrg-integrity"},"MRG integrity"),(0,o.kt)("p",null,"The integrity checking for ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," files assumes that the integrity conditions of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," file are satisfied, and that the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file itself contains valid YAML syntax."),(0,o.kt)("p",null,"The integrity checking comprises every (group of) test(s) as specified in this sub-section."),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," MUST have sections named ",(0,o.kt)("inlineCode",{parentName:"p"},"terminology"),", ",(0,o.kt)("inlineCode",{parentName:"p"},"scopes"),", and ",(0,o.kt)("inlineCode",{parentName:"p"},"entries"),"."),(0,o.kt)("p",null,"Integrity checks for the ",(0,o.kt)("inlineCode",{parentName:"p"},"terminology")," section include:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," must point to the directory in which the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," is stored for public use (i.e. in this scopedir)."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," must be a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that SHOULD not appear as an element in the ",(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," field."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"altvsntags")," must be a (possibly empty) list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags"),", none of which appear in the ",(0,o.kt)("inlineCode",{parentName:"li"},"vsntag")," field."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"license")," must be an existing file in the directory pointed to by ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),".")),(0,o.kt)("p",null,"Integrity checks for the ",(0,o.kt)("inlineCode",{parentName:"p"},"scopes")," section include:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopetags")," must be a nonempty list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," must be a valid URL, that points to an existing directory resource other than the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of the current ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". This directory MUST contain a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". ",(0,o.kt)("mark",null,"Do we need an option to test the integrity of such ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAFs"),"?"))),(0,o.kt)("p",null,"Integrity checks for the ",(0,o.kt)("inlineCode",{parentName:"p"},"entries")," section consist of one part that is generic for all entries, and another part that depends on the value of the ",(0,o.kt)("inlineCode",{parentName:"p"},"termtype")," field (so that checking of e.g. entries of type ",(0,o.kt)("inlineCode",{parentName:"p"},"concept")," and of type ",(0,o.kt)("inlineCode",{parentName:"p"},"pattern")," can have different checks.) The checks that every entry must pass include the following:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"scopetag")," MUST also appear as the value of ",(0,o.kt)("inlineCode",{parentName:"li"},"terminology.scopetag"),", or as an element in one of the ",(0,o.kt)("inlineCode",{parentName:"li"},"scopes.scopetags")," elements."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"termtype")," SHOULD be ",(0,o.kt)("mark",null,"tbd.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"grouptags")," MUST be a list of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptag")," elements."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"license")," MUST be an existing file in the directory pointed to by ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"status")," SHOULD match an element in the list ",(0,o.kt)("inlineCode",{parentName:"li"},"scope.statuses")," of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"locator"),", if specified, MUST have a readable resource (file) at ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir"),"/",(0,o.kt)("inlineCode",{parentName:"li"},"curatedir"),"/",(0,o.kt)("inlineCode",{parentName:"li"},"locator"),", where ",(0,o.kt)("inlineCode",{parentName:"li"},"scopedir")," and ",(0,o.kt)("inlineCode",{parentName:"li"},"curatedir")," are specified in the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"navurl"),", if specified, MUST return an HTML-resource when specified as the URL in a HTTP(S) request method ",(0,o.kt)("inlineCode",{parentName:"li"},"GET")," or ",(0,o.kt)("inlineCode",{parentName:"li"},"HEAD"),".")),(0,o.kt)("p",null,"For specific kinds of ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),", the following additional constraints MUST be satisfied:"),(0,o.kt)(r.Z,{defaultValue:"concept",values:[{label:"Terms",value:"term"},{label:"Concepts",value:"concept"},{label:"Relations",value:"relation"},{label:"Mental Models",value:"pattern"}],mdxType:"Tabs"},(0,o.kt)(s.Z,{value:"concept",mdxType:"TabItem"},(0,o.kt)("br",null),(0,o.kt)("p",null,"The following constraints MUST hold for ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," of type ",(0,o.kt)("inlineCode",{parentName:"p"},"concept"),":"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"if a ",(0,o.kt)("inlineCode",{parentName:"li"},"glossaryText")," contains a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),", then the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," SHOULD be resolvable ",(0,o.kt)("mark",null,"(reference to the term-ref-integrity checks)"),"."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"hoverText")," MUST NOT contain any ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),", nor any other ",(0,o.kt)("a",{parentName:"li",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown links"),"."))),(0,o.kt)(s.Z,{value:"term",mdxType:"TabItem"},(0,o.kt)("br",null),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"As header fields for ",(0,o.kt)("inlineCode",{parentName:"p"},"term")," termtypes need to be discussed, we do not yet specify any constraints"))),(0,o.kt)(s.Z,{value:"relation",mdxType:"TabItem"},(0,o.kt)("br",null),(0,o.kt)("h3",{id:"header-fields-for-termtype-relation"},"Header fields for ",(0,o.kt)("inlineCode",{parentName:"h3"},"termType: relation")),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"As ",(0,o.kt)("inlineCode",{parentName:"p"},"relation"),"s need to be discussed, we do not yet specify any constraints."))),(0,o.kt)(s.Z,{value:"pattern",mdxType:"TabItem"},(0,o.kt)("br",null),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"As ",(0,o.kt)("inlineCode",{parentName:"p"},"pattern"),"s need to be discussed, we do not yet specify any constraints.")))),(0,o.kt)("admonition",{title:"Editor's note",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Checks need to be added to ensure congruence between terms and any synonyms that are defined for them. For example, they should have the same value in various fields, e.g., ",(0,o.kt)("inlineCode",{parentName:"p"},"termType"),", ",(0,o.kt)("inlineCode",{parentName:"p"},"isa")," (but not ",(0,o.kt)("inlineCode",{parentName:"p"},"glossaryText")," or ",(0,o.kt)("inlineCode",{parentName:"p"},"synonymOf"),")")),(0,o.kt)("h3",{id:"curated-text-integrity"},"Curated Text integrity"),(0,o.kt)("p",null,"The integrity of any ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file requires the integrity conditions of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," file to be satisfied, as well as the following conditions:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("mark",null,"TBD"))),(0,o.kt)("h4",{id:"concepts"},"Concepts"),(0,o.kt)("p",null,"The integrity of any ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file that has ",(0,o.kt)("inlineCode",{parentName:"p"},"termType: concept")," requires the integrity conditions of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file to be satisfied, as well as the following conditions:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("mark",null,"TBD"))),(0,o.kt)("h4",{id:"patterns"},"Patterns"),(0,o.kt)("p",null,"The integrity of any ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file that has ",(0,o.kt)("inlineCode",{parentName:"p"},"termType: concept")," requires the integrity conditions of a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," file to be satisfied, as well as the following conditions:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("mark",null,"TBD"))),(0,o.kt)("h2",{id:"processing-errors-and-warnings"},"Processing, Errors and Warnings"),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," starts by reading its command-line and configuration file. If the command-line has a key that is also found in the configuration file, the command-line key-value pair takes precedence. The resulting set of key-value pairs is tested for proper syntax and validity. Every improper syntax and every invalidity found will be logged."),(0,o.kt)("p",null,"Then, the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," ",(0,o.kt)("mark",null,"TBD")),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," logs every error- and/or warning condition that it comes across while processing its configuration file, commandline parameters, and input files, in a way that helps tool-operators and document ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to identify and fix such conditions."),(0,o.kt)("h2",{id:"deploying-the-tool"},"Deploying the Tool"),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/ict",hovertext:"Integrity Checker Tool (ICT): a software tool designed to check the integrity and conformity of various files used in the curation and management of Glossaries, Dictionaries, Curated Texts, and other data within a terminology project. The ICT verifies that the files adhere to the TEv2 File Specifications, ensuring the consistency and accuracy of the terminology data."},"ICT")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author"),"/modify CI-pipes to use that deployment."),(0,o.kt)("h2",{id:"discussion-notes"},"Discussion Notes"),(0,o.kt)("p",null,"This section lists the topics that may need further discission"))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/41daa8b4.7e8c8346.js b/assets/js/41daa8b4.99fda98a.js similarity index 98% rename from assets/js/41daa8b4.7e8c8346.js rename to assets/js/41daa8b4.99fda98a.js index 7d5d1b7cf0..ec92f58728 100644 --- a/assets/js/41daa8b4.7e8c8346.js +++ b/assets/js/41daa8b4.99fda98a.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[1576],{3905:function(e,t,r){r.d(t,{Zo:function(){return d},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},d=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),u=l(r),m=o,f=u["".concat(c,".").concat(m)]||u[m]||p[m]||a;return r?n.createElement(f,i(i({ref:t},d),{},{components:r})):n.createElement(f,i({ref:t},d))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},d=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),u=l(r),m=o,f=u["".concat(c,".").concat(m)]||u[m]||p[m]||a;return r?n.createElement(f,i(i({ref:t},d),{},{components:r})):n.createElement(f,i({ref:t},d))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var l=2;l=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=i.createContext({}),l=function(e){var t=i.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},p=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=l(n),m=o,u=d["".concat(c,".").concat(m)]||d[m]||h[m]||a;return n?i.createElement(u,r(r({ref:t},p),{},{components:n})):i.createElement(u,r({ref:t},p))}));function m(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,r=new Array(a);r[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var l=2;l=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=i.createContext({}),l=function(e){var t=i.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},p=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=l(n),m=o,u=d["".concat(c,".").concat(m)]||d[m]||h[m]||a;return n?i.createElement(u,r(r({ref:t},p),{},{components:n})):i.createElement(u,r({ref:t},p))}));function m(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,r=new Array(a);r[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var l=2;l=0||(n[o]=t[o]);return n}(t,e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(n[o]=t[o])}return n}var c=i.createContext({}),m=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):a(a({},e),t)),o},h=function(t){var e=m(t.components);return i.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},d=i.forwardRef((function(t,e){var o=t.components,n=t.mdxType,r=t.originalType,c=t.parentName,h=s(t,["components","mdxType","originalType","parentName"]),d=m(o),l=n,p=d["".concat(c,".").concat(l)]||d[l]||u[l]||r;return o?i.createElement(p,a(a({ref:e},h),{},{components:o})):i.createElement(p,a({ref:e},h))}));function l(t,e){var o=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var r=o.length,a=new Array(r);a[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,a[1]=s;for(var m=2;m=0||(n[o]=t[o]);return n}(t,e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(n[o]=t[o])}return n}var c=i.createContext({}),m=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):a(a({},e),t)),o},h=function(t){var e=m(t.components);return i.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},d=i.forwardRef((function(t,e){var o=t.components,n=t.mdxType,r=t.originalType,c=t.parentName,h=s(t,["components","mdxType","originalType","parentName"]),d=m(o),l=n,p=d["".concat(c,".").concat(l)]||d[l]||u[l]||r;return o?i.createElement(p,a(a({ref:e},h),{},{components:o})):i.createElement(p,a({ref:e},h))}));function l(t,e){var o=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var r=o.length,a=new Array(r);a[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,a[1]=s;for(var m=2;m=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var m=r.createContext({}),c=function(e){var t=r.useContext(m),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},h=function(e){var t=c(e.components);return r.createElement(m.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,m=e.parentName,h=a(e,["components","mdxType","originalType","parentName"]),d=c(n),f=o,y=d["".concat(m,".").concat(f)]||d[f]||p[f]||i;return n?r.createElement(y,s(s({ref:t},h),{},{components:n})):r.createElement(y,s({ref:t},h))}));function f(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,s=new Array(i);s[0]=d;var a={};for(var m in t)hasOwnProperty.call(t,m)&&(a[m]=t[m]);a.originalType=e,a.mdxType="string"==typeof e?e:o,s[1]=a;for(var c=2;c=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var m=r.createContext({}),c=function(e){var t=r.useContext(m),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},h=function(e){var t=c(e.components);return r.createElement(m.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,m=e.parentName,h=a(e,["components","mdxType","originalType","parentName"]),d=c(n),f=o,y=d["".concat(m,".").concat(f)]||d[f]||p[f]||i;return n?r.createElement(y,s(s({ref:t},h),{},{components:n})):r.createElement(y,s({ref:t},h))}));function f(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,s=new Array(i);s[0]=d;var a={};for(var m in t)hasOwnProperty.call(t,m)&&(a[m]=t[m]);a.originalType=e,a.mdxType="string"==typeof e?e:o,s[1]=a;for(var c=2;c=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},d=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),m=l(r),f=n,u=m["".concat(c,".").concat(f)]||m[f]||p[f]||a;return r?o.createElement(u,i(i({ref:t},d),{},{components:r})):o.createElement(u,i({ref:t},d))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,i[1]=s;for(var l=2;l=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},d=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),m=l(r),f=n,u=m["".concat(c,".").concat(f)]||m[f]||p[f]||a;return r?o.createElement(u,i(i({ref:t},d),{},{components:r})):o.createElement(u,i({ref:t},d))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,i[1]=s;for(var l=2;l=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var c=n.createContext({}),h=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},p=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var i=e.components,o=e.mdxType,s=e.originalType,c=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),d=h(i),l=o,f=d["".concat(c,".").concat(l)]||d[l]||m[l]||s;return i?n.createElement(f,a(a({ref:t},p),{},{components:i})):n.createElement(f,a({ref:t},p))}));function l(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var s=i.length,a=new Array(s);a[0]=d;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:o,a[1]=r;for(var h=2;h=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var c=n.createContext({}),h=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},p=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var i=e.components,o=e.mdxType,s=e.originalType,c=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),d=h(i),l=o,f=d["".concat(c,".").concat(l)]||d[l]||m[l]||s;return i?n.createElement(f,a(a({ref:t},p),{},{components:i})):n.createElement(f,a({ref:t},p))}));function l(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var s=i.length,a=new Array(s);a[0]=d;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:o,a[1]=r;for(var h=2;h=0||(n[o]=t[o]);return n}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(n[o]=t[o])}return n}var c=i.createContext({}),h=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):r(r({},e),t)),o},u=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},m=i.forwardRef((function(t,e){var o=t.components,n=t.mdxType,a=t.originalType,c=t.parentName,u=s(t,["components","mdxType","originalType","parentName"]),m=h(o),p=n,l=m["".concat(c,".").concat(p)]||m[p]||d[p]||a;return o?i.createElement(l,r(r({ref:e},u),{},{components:o})):i.createElement(l,r({ref:e},u))}));function p(t,e){var o=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var a=o.length,r=new Array(a);r[0]=m;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,r[1]=s;for(var h=2;h=0||(n[o]=t[o]);return n}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(n[o]=t[o])}return n}var c=i.createContext({}),h=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):r(r({},e),t)),o},u=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},m=i.forwardRef((function(t,e){var o=t.components,n=t.mdxType,a=t.originalType,c=t.parentName,u=s(t,["components","mdxType","originalType","parentName"]),m=h(o),p=n,l=m["".concat(c,".").concat(p)]||m[p]||d[p]||a;return o?i.createElement(l,r(r({ref:e},u),{},{components:o})):i.createElement(l,r({ref:e},u))}));function p(t,e){var o=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var a=o.length,r=new Array(a);r[0]=m;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,r[1]=s;for(var h=2;h=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=r.createContext({}),p=function(e){var t=r.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},u=function(e){var t=p(e.components);return r.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var o=e.components,n=e.mdxType,i=e.originalType,c=e.parentName,u=a(e,["components","mdxType","originalType","parentName"]),m=p(o),l=n,d=m["".concat(c,".").concat(l)]||m[l]||h[l]||i;return o?r.createElement(d,s(s({ref:t},u),{},{components:o})):r.createElement(d,s({ref:t},u))}));function l(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var i=o.length,s=new Array(i);s[0]=m;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:n,s[1]=a;for(var p=2;p=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=r.createContext({}),p=function(e){var t=r.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},u=function(e){var t=p(e.components);return r.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var o=e.components,n=e.mdxType,i=e.originalType,c=e.parentName,u=a(e,["components","mdxType","originalType","parentName"]),m=p(o),l=n,d=m["".concat(c,".").concat(l)]||m[l]||h[l]||i;return o?r.createElement(d,s(s({ref:t},u),{},{components:o})):r.createElement(d,s({ref:t},u))}));function l(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var i=o.length,s=new Array(i);s[0]=m;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:n,s[1]=a;for(var p=2;p=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}var c=i.createContext({}),h=function(t){var e=i.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):s(s({},e),t)),n},m=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},l=i.forwardRef((function(t,e){var n=t.components,o=t.mdxType,a=t.originalType,c=t.parentName,m=r(t,["components","mdxType","originalType","parentName"]),l=h(n),d=o,u=l["".concat(c,".").concat(d)]||l[d]||p[d]||a;return n?i.createElement(u,s(s({ref:e},m),{},{components:n})):i.createElement(u,s({ref:e},m))}));function d(t,e){var n=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var a=n.length,s=new Array(a);s[0]=l;var r={};for(var c in e)hasOwnProperty.call(e,c)&&(r[c]=e[c]);r.originalType=t,r.mdxType="string"==typeof t?t:o,s[1]=r;for(var h=2;h=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}var c=i.createContext({}),h=function(t){var e=i.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):s(s({},e),t)),n},m=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},l=i.forwardRef((function(t,e){var n=t.components,o=t.mdxType,a=t.originalType,c=t.parentName,m=r(t,["components","mdxType","originalType","parentName"]),l=h(n),d=o,u=l["".concat(c,".").concat(d)]||l[d]||p[d]||a;return n?i.createElement(u,s(s({ref:e},m),{},{components:n})):i.createElement(u,s({ref:e},m))}));function d(t,e){var n=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var a=n.length,s=new Array(a);s[0]=l;var r={};for(var c in e)hasOwnProperty.call(e,c)&&(r[c]=e[c]);r.originalType=t,r.mdxType="string"==typeof t?t:o,s[1]=r;for(var h=2;h=0||(r[o]=t[o]);return r}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(r[o]=t[o])}return r}var c=i.createContext({}),h=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):n(n({},e),t)),o},m=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},d=i.forwardRef((function(t,e){var o=t.components,r=t.mdxType,a=t.originalType,c=t.parentName,m=s(t,["components","mdxType","originalType","parentName"]),d=h(o),p=r,l=d["".concat(c,".").concat(p)]||d[p]||u[p]||a;return o?i.createElement(l,n(n({ref:e},m),{},{components:o})):i.createElement(l,n({ref:e},m))}));function p(t,e){var o=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var a=o.length,n=new Array(a);n[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:r,n[1]=s;for(var h=2;h=0||(r[o]=t[o]);return r}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(r[o]=t[o])}return r}var c=i.createContext({}),h=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):n(n({},e),t)),o},m=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},d=i.forwardRef((function(t,e){var o=t.components,r=t.mdxType,a=t.originalType,c=t.parentName,m=s(t,["components","mdxType","originalType","parentName"]),d=h(o),p=r,l=d["".concat(c,".").concat(p)]||d[p]||u[p]||a;return o?i.createElement(l,n(n({ref:e},m),{},{components:o})):i.createElement(l,n({ref:e},m))}));function p(t,e){var o=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var a=o.length,n=new Array(a);n[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:r,n[1]=s;for(var h=2;h=0||(o[a]=e[a]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(o[a]=e[a])}return o}var l=i.createContext({}),c=function(e){var t=i.useContext(l),a=t;return e&&(a="function"==typeof e?e(t):s(s({},t),e)),a},h=function(e){var t=c(e.components);return i.createElement(l.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var a=e.components,o=e.mdxType,n=e.originalType,l=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),m=c(a),p=o,u=m["".concat(l,".").concat(p)]||m[p]||d[p]||n;return a?i.createElement(u,s(s({ref:t},h),{},{components:a})):i.createElement(u,s({ref:t},h))}));function p(e,t){var a=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=a.length,s=new Array(n);s[0]=m;var r={};for(var l in t)hasOwnProperty.call(t,l)&&(r[l]=t[l]);r.originalType=e,r.mdxType="string"==typeof e?e:o,s[1]=r;for(var c=2;c child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:a.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function m(e){var t=e.values,a=e.children;return(0,o.useMemo)((function(){var e=null!=t?t:d(a);return function(e){var t=(0,c.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,a])}function p(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function u(e){var t=e.queryString,a=void 0!==t&&t,i=e.groupId,n=(0,r.k6)(),s=function(e){var t=e.queryString,a=void 0!==t&&t,i=e.groupId;if("string"==typeof a)return a;if(!1===a)return null;if(!0===a&&!i)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=i?i:null}({queryString:a,groupId:i});return[(0,l._X)(s),(0,o.useCallback)((function(e){if(s){var t=new URLSearchParams(n.location.search);t.set(s,e),n.replace(Object.assign({},n.location,{search:t.toString()}))}}),[s,n])]}function f(e){var t,a,i,n,s=e.defaultValue,r=e.queryString,l=void 0!==r&&r,c=e.groupId,d=m(e),f=(0,o.useState)((function(){return function(e){var t,a=e.defaultValue,i=e.tabValues;if(0===i.length)throw new Error("Docusaurus error: the component requires at least one children component");if(a){if(!p({value:a,tabValues:i}))throw new Error('Docusaurus error: The has a defaultValue "'+a+'" but none of its children has the corresponding value. Available values are: '+i.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return a}var o=null!=(t=i.find((function(e){return e.default})))?t:i[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:s,tabValues:d})})),g=f[0],y=f[1],b=u({queryString:l,groupId:c}),v=b[0],k=b[1],G=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:c}.groupId),a=(0,h.Nk)(t),i=a[0],n=a[1],[i,(0,o.useCallback)((function(e){t&&n.set(e)}),[t,n])]),T=G[0],w=G[1],R=function(){var e=null!=v?v:T;return p({value:e,tabValues:d})?e:null}();return(0,o.useLayoutEffect)((function(){R&&y(R)}),[R]),{selectedValue:g,selectValue:(0,o.useCallback)((function(e){if(!p({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);y(e),k(e),w(e)}),[k,w,d]),tabValues:d}}var g=a(2389),y="tabList__CuJ",b="tabItem_LNqP";function v(e){var t=e.className,a=e.block,r=e.selectedValue,l=e.selectValue,c=e.tabValues,h=[],d=(0,s.o5)().blockElementScrollPositionUntilNextRender,m=function(e){var t=e.currentTarget,a=h.indexOf(t),i=c[a].value;i!==r&&(d(t),l(i))},p=function(e){var t,a=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":var i,o=h.indexOf(e.currentTarget)+1;a=null!=(i=h[o])?i:h[0];break;case"ArrowLeft":var n,s=h.indexOf(e.currentTarget)-1;a=null!=(n=h[s])?n:h[h.length-1]}null==(t=a)||t.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":a},t)},c.map((function(e){var t=e.value,a=e.label,s=e.attributes;return o.createElement("li",(0,i.Z)({role:"tab",tabIndex:r===t?0:-1,"aria-selected":r===t,key:t,ref:function(e){return h.push(e)},onKeyDown:p,onClick:m},s,{className:(0,n.Z)("tabs__item",b,null==s?void 0:s.className,{"tabs__item--active":r===t})}),null!=a?a:t)})))}function k(e){var t=e.lazy,a=e.children,i=e.selectedValue,n=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){var s=n.find((function(e){return e.props.value===i}));return s?(0,o.cloneElement)(s,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(e,t){return(0,o.cloneElement)(e,{key:t,hidden:e.props.value!==i})})))}function G(e){var t=f(e);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(v,(0,i.Z)({},e,t)),o.createElement(k,(0,i.Z)({},e,t)))}function T(e){var t=(0,g.Z)();return o.createElement(G,(0,i.Z)({key:String(t)},e))}},5557:function(e,t,a){a.r(t),a.d(t,{assets:function(){return h},contentTitle:function(){return l},default:function(){return u},frontMatter:function(){return r},mark:function(){return m},metadata:function(){return c},toc:function(){return d}});var i=a(7462),o=a(3366),n=(a(7294),a(3905)),s=(a(4996),a(4866),a(5162),["components"]),r={id:"hrgt",sidebar_label:"HR Glossary Generation",date:20230103},l="Human Readable Glossary Generation Tool",c={unversionedId:"spec-tools/hrgt",id:"spec-tools/hrgt",title:"Human Readable Glossary Generation Tool",description:"text to mark",source:"@site/docs/spec-tools/22-hrgt.md",sourceDirName:"spec-tools",slug:"/spec-tools/hrgt",permalink:"/tev2-specifications/docs/spec-tools/hrgt",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/22-hrgt.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:22,frontMatter:{id:"hrgt",sidebar_label:"HR Glossary Generation",date:20230103},sidebar:"tev2SideBar",previous:{title:"HR Glossary Generation (previous version)",permalink:"/tev2-specifications/docs/spec-tools/hrgt-old"},next:{title:"MR Dictionary Generation",permalink:"/tev2-specifications/docs/spec-tools/mrdt"}},h={},d=[{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Processing, Errors and Warnings",id:"processing-errors-and-warnings",level:2},{value:"Deploying the Tool",id:"deploying-the-tool",level:2},{value:"Discussion Notes",id:"discussion-notes",level:2}],m=function(e){var t=e.children;return(0,n.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},t)},p={toc:d,mark:m};function u(e){var t=e.components,a=(0,o.Z)(e,s);return(0,n.kt)("wrapper",(0,i.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"human-readable-glossary-generation-tool"},"Human Readable Glossary Generation Tool"),(0,n.kt)("p",null,"The ",(0,n.kt)("strong",{parentName:"p"},"Human Readable Glossary generation Tool (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT"),")")," generates a Human Readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"Glossary")," (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),") that consists of (a selection of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are part of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". "),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," takes one specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," as its input, and converts (a selection of) its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," into one of the supported output formats, e.g. HTML, or PDF. The file that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is named ",(0,n.kt)("inlineCode",{parentName:"p"},"mrg...yaml"),", where the combination of ",(0,n.kt)("inlineCode",{parentName:"p"},"")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"")," identify a particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". See the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg#mrg-file-naming"},"MRG file naming conventions")," for details."),(0,n.kt)("p",null,"The selection of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that are to be included in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),", as well as the specification of the output format, headers, footers, etc., can be configured as well as customized. Thus, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," provides a flexible means for creating all sorts of outputs that are either already human readable or can be processed further by third-party rendering tools, such as ",(0,n.kt)("a",{parentName:"p",href:"https://pages.github.com/"},"github pages")," or ",(0,n.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/docs-introduction"},"Docusaurus"),", etc. (see also: ",(0,n.kt)("a",{parentName:"p",href:"/docs/tev2-toolbox"},"Using the Tools"),")."),(0,n.kt)("p",null,"There is currently one implementation of the tool underway:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the repo in which the tool is being developed is ","[",(0,n.kt)("mark",null,"tbd"),"]","."),(0,n.kt)("li",{parentName:"ul"},"the documentation is ","[",(0,n.kt)("mark",null,"tbd"),"]",".")),(0,n.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,n.kt)("p",null,"The behavior of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," can be configured per call e.g. by a configuration file and/or command-line parameters. The command-line syntax is as follows:"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"hrgt [ ] [ ]\n")),(0,n.kt)("p",null,"where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," (optional) is a list of key-value pairs"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},(0,n.kt)("inlineCode",{parentName:"a"},"globpattern"))," (optional) specifies a set of (input) files that are to be processed. If a configuration file is used, its contents may specify an additional set of input files to be processed.")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("p",null,"The columns in the following table are defined as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,n.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"config")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter MUST NOT appear in the configuration file itself.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," from which the tool is called. It MUST contain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which we will refer to as the 'current scope' for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT"),". If omitted, the current directory is assumed to tbe the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"input")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{parentName:"td",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"Globpattern")," that specifies the set of (input) files (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),") that are to be processed. If omitted, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated for the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of the current scope (as specified in the ",(0,n.kt)("inlineCode",{parentName:"td"},"mrgfile")," field of the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section in its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"output")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"text that is used as the last part of the name of the file(s) that contain(s) the generated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG(s)"),". This text must specify an appropriate extension, such as HTML or PDF. The filename(s) will be of the form ",(0,n.kt)("inlineCode",{parentName:"td"},"hrg..."),", where ",(0,n.kt)("inlineCode",{parentName:"td"},"")," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated, and ",(0,n.kt)("inlineCode",{parentName:"td"},"")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," in that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". From this, it follows that an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-file exists named ",(0,n.kt)("inlineCode",{parentName:"td"},"mrg...yaml"),", which is used as the source for the entries in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"termselcrit")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"List of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," that are used to generate (this version of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". If omitted, all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from the source ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," will be selected. See ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-tools/terminology-construction"},"Terminology Construction")," for details.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"method")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("mark",null,"Text, the syntax and semantics of which remain to be specified (see also the Editor's note below).")," When this parameter is omitted, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated as an HTML file.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"license")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"File that contains the (default) licensing conditions. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"license"),". If not specified, its value defaults to the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"license")," field in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section (of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the current scope). The purpose of this field is to enable different ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRGs")," to have different licenses.")))),(0,n.kt)("admonition",{title:"Editor's Note:",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"We may want to consider:"),(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"changing the ",(0,n.kt)("inlineCode",{parentName:"li"},"input")," parameter from a globpattern to a list of versiontags for which the HRG is to be generated."),(0,n.kt)("li",{parentName:"ul"},"revising the spec of the ",(0,n.kt)("inlineCode",{parentName:"li"},"output")," parameter, depending on the kind of control that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," need."),(0,n.kt)("li",{parentName:"ul"},"add a ",(0,n.kt)("inlineCode",{parentName:"li"},"version")," parameter, the value of which is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag"),", and the meaning of which is that (a) the input file is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," associated with that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag"),", and (b) the output file will be registered in the ",(0,n.kt)("inlineCode",{parentName:"li"},"hrgfile")," entry of the appropriate element of the ",(0,n.kt)("inlineCode",{parentName:"li"},"versions")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", and also, if appropriate, in the ",(0,n.kt)("inlineCode",{parentName:"li"},"scope")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". Doing this requires additional texts in subsequent sections."))),(0,n.kt)("admonition",{title:"Editor's Note:",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"Various ",(0,n.kt)("inlineCode",{parentName:"p"},"method"),"s are envisaged, yet remain to be properly specified. A method may specify:"),(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"what a single entry contains"),(0,n.kt)("li",{parentName:"ul"},"that the contents of particular files are to be used as header or footer;"),(0,n.kt)("li",{parentName:"ul"},"that a particular kind of navigation bar is to be inserted at specific places (e.g. between two subsequent entries that start with a different character);"),(0,n.kt)("li",{parentName:"ul"},"..."))),(0,n.kt)("h2",{id:"processing-errors-and-warnings"},"Processing, Errors and Warnings"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," starts by reading its command-line and configuration file. If the command-line has a key that is also found in the configuration file, the command-line key-value pair takes precedence. The resulting set of key-value pairs is tested for proper syntax and validity. Every improper syntax and every invalidity found will be logged. Improper syntax may be e.g. an invalid ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"globpattern"),". Invalidities include non-existing directories or files, lack of write-permissions where needed, etc."),(0,n.kt)("p",null,"Then, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," reads the specified input files (in arbitrary order), and processes each of them, as follows:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"select the actual ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is to be used as an input;"),(0,n.kt)("li",{parentName:"ul"},"select the (subset of) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that must appear in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," - see ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-syntax/hrg-termselcrit"},"HRG Term Selection")," for details. Conceptually, this will result in an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that only contains ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that need to appear in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," as well;"),(0,n.kt)("li",{parentName:"ul"},"(alphabetically) sort these entries;"),(0,n.kt)("li",{parentName:"ul"},"convert each entry into a specific 'rendered' format (as specified by the user), thereby resolving any ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," (by appropriately calling the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),")",(0,n.kt)("sup",{parentName:"li",id:"fnref-1"},(0,n.kt)("a",{parentName:"sup",href:"#fn-1",className:"footnote-ref"},"1")),", adding hyperlinks to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that the entry relates to, 'meta-data' (e.g. the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags"),", contributors, etc.), and anything else, as required for the particular kind of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," that is being generated;",(0,n.kt)("admonition",{parentName:"li",title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/tno-terminology-design/trrt"},"TRRT")," has a nice setup for implementing ",(0,n.kt)("a",{parentName:"p",href:"/docs/overview/tev2-design-principles#text-conversion-steps"},"text conversion steps"),". We should check that out and adapt the specifications text in this section so that this stuff can be reused as much as possible."))),(0,n.kt)("li",{parentName:"ul"},"construct the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," by adding (rendered) header- and footer-material and (optionally) licensing information;"),(0,n.kt)("li",{parentName:"ul"},"write the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," to the designated output file.")),(0,n.kt)("admonition",{title:"Editor's Note:",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"A special case of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," generation is when the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is created for a particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", which typically consists of all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),". In that case, the contents of the ",(0,n.kt)("inlineCode",{parentName:"p"},"hrgfile")," field in ",(0,n.kt)("inlineCode",{parentName:"p"},"versions")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," whose ",(0,n.kt)("inlineCode",{parentName:"p"},"mrgfile")," field ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," should become the name of the file that contains the generated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),". Additionally, if the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," happens to be the default one for the scope (as can be seen by comparing its filename with the contents of the ",(0,n.kt)("inlineCode",{parentName:"p"},"mrgfile")," field in the ",(0,n.kt)("inlineCode",{parentName:"p"},"scope")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"), then the contents of the ",(0,n.kt)("inlineCode",{parentName:"p"},"hrgfile")," field in ",(0,n.kt)("inlineCode",{parentName:"p"},"scope")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," must also become the name of the file that contains the generated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),". Whether or not the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," is expected to operate in this mode is an option that can be provided at the commandline or in the configuration file.")),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," logs every error- and/or warning condition that it comes across while processing its configuration file, commandline parameters, and input files, in a way that helps tool-operators and document ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to identify and fix such conditions."),(0,n.kt)("h2",{id:"deploying-the-tool"},"Deploying the Tool"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and author/modify CI-pipes to use that deployment."),(0,n.kt)("h2",{id:"discussion-notes"},"Discussion Notes"),(0,n.kt)("p",null,"This section contains some notes of a discussion between Daniel and Rieks on these matters of some time ago, which pertains to glossaries in the context of ToIP."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"A ToIP ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary")," will be put by default at ",(0,n.kt)("inlineCode",{parentName:"li"},"http://trustoverip.github.io//glossary"),", where ",(0,n.kt)("inlineCode",{parentName:"li"},"")," is the name of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terms-community",hovertext:"Terms Community: a Community that maintains a Terminology for the purpose of avoiding misunderstandings between its members as they collaborate."},"terms-community"),". This allows every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terms-community",hovertext:"Terms Community: a Community that maintains a Terminology for the purpose of avoiding misunderstandings between its members as they collaborate."},"terms-community")," to have its own ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". However, the above specifications allow ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terms-community",hovertext:"Terms Community: a Community that maintains a Terminology for the purpose of avoiding misunderstandings between its members as they collaborate."},"terms-communities")," to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curate")," multiple ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes"),"."),(0,n.kt)("li",{parentName:"ul"},"Storing ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossaries")," elsewhere was seen to break the (basic workings of the postprocessing tool, but the above specifications would fix that."),(0,n.kt)("li",{parentName:"ul"},"Entries, e.g. 'foo' can be referenced as ",(0,n.kt)("inlineCode",{parentName:"li"},'http://trustoverip.github.io//glossary#foo')," (in case of a standalone glossary), and ",(0,n.kt)("inlineCode",{parentName:"li"},"http://trustoverip.github.io//document-that-includes-glossary-fragment#foo")," (in case of a fragmented glossary)."),(0,n.kt)("li",{parentName:"ul"},"We could also see GGT and TRRT to be extended, e.g. to work in conjunction with LaTeX or word-processor documents. This needs some looking into, but ",(0,n.kt)("a",{parentName:"li",href:"https://pandoc.org/"},"pandoc")," may be useful here.")),(0,n.kt)("div",{className:"footnotes"},(0,n.kt)("hr",{parentName:"div"}),(0,n.kt)("ol",{parentName:"div"},(0,n.kt)("li",{parentName:"ol",id:"fn-1"},"if the rendered output is such that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," can still be recognized by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),", it may be more efficient to defer the resolution of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," until after the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is completely generated.",(0,n.kt)("a",{parentName:"li",href:"#fnref-1",className:"footnote-backref"},"\u21a9")))))}u.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[7773],{3905:function(e,t,a){a.d(t,{Zo:function(){return h},kt:function(){return p}});var i=a(7294);function o(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function n(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,i)}return a}function s(e){for(var t=1;t=0||(o[a]=e[a]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(o[a]=e[a])}return o}var l=i.createContext({}),c=function(e){var t=i.useContext(l),a=t;return e&&(a="function"==typeof e?e(t):s(s({},t),e)),a},h=function(e){var t=c(e.components);return i.createElement(l.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var a=e.components,o=e.mdxType,n=e.originalType,l=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),m=c(a),p=o,u=m["".concat(l,".").concat(p)]||m[p]||d[p]||n;return a?i.createElement(u,s(s({ref:t},h),{},{components:a})):i.createElement(u,s({ref:t},h))}));function p(e,t){var a=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=a.length,s=new Array(n);s[0]=m;var r={};for(var l in t)hasOwnProperty.call(t,l)&&(r[l]=t[l]);r.originalType=e,r.mdxType="string"==typeof e?e:o,s[1]=r;for(var c=2;c child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:a.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function m(e){var t=e.values,a=e.children;return(0,o.useMemo)((function(){var e=null!=t?t:d(a);return function(e){var t=(0,c.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,a])}function p(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function u(e){var t=e.queryString,a=void 0!==t&&t,i=e.groupId,n=(0,r.k6)(),s=function(e){var t=e.queryString,a=void 0!==t&&t,i=e.groupId;if("string"==typeof a)return a;if(!1===a)return null;if(!0===a&&!i)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=i?i:null}({queryString:a,groupId:i});return[(0,l._X)(s),(0,o.useCallback)((function(e){if(s){var t=new URLSearchParams(n.location.search);t.set(s,e),n.replace(Object.assign({},n.location,{search:t.toString()}))}}),[s,n])]}function f(e){var t,a,i,n,s=e.defaultValue,r=e.queryString,l=void 0!==r&&r,c=e.groupId,d=m(e),f=(0,o.useState)((function(){return function(e){var t,a=e.defaultValue,i=e.tabValues;if(0===i.length)throw new Error("Docusaurus error: the component requires at least one children component");if(a){if(!p({value:a,tabValues:i}))throw new Error('Docusaurus error: The has a defaultValue "'+a+'" but none of its children has the corresponding value. Available values are: '+i.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return a}var o=null!=(t=i.find((function(e){return e.default})))?t:i[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:s,tabValues:d})})),g=f[0],y=f[1],b=u({queryString:l,groupId:c}),v=b[0],k=b[1],G=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:c}.groupId),a=(0,h.Nk)(t),i=a[0],n=a[1],[i,(0,o.useCallback)((function(e){t&&n.set(e)}),[t,n])]),T=G[0],w=G[1],R=function(){var e=null!=v?v:T;return p({value:e,tabValues:d})?e:null}();return(0,o.useLayoutEffect)((function(){R&&y(R)}),[R]),{selectedValue:g,selectValue:(0,o.useCallback)((function(e){if(!p({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);y(e),k(e),w(e)}),[k,w,d]),tabValues:d}}var g=a(2389),y="tabList__CuJ",b="tabItem_LNqP";function v(e){var t=e.className,a=e.block,r=e.selectedValue,l=e.selectValue,c=e.tabValues,h=[],d=(0,s.o5)().blockElementScrollPositionUntilNextRender,m=function(e){var t=e.currentTarget,a=h.indexOf(t),i=c[a].value;i!==r&&(d(t),l(i))},p=function(e){var t,a=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":var i,o=h.indexOf(e.currentTarget)+1;a=null!=(i=h[o])?i:h[0];break;case"ArrowLeft":var n,s=h.indexOf(e.currentTarget)-1;a=null!=(n=h[s])?n:h[h.length-1]}null==(t=a)||t.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":a},t)},c.map((function(e){var t=e.value,a=e.label,s=e.attributes;return o.createElement("li",(0,i.Z)({role:"tab",tabIndex:r===t?0:-1,"aria-selected":r===t,key:t,ref:function(e){return h.push(e)},onKeyDown:p,onClick:m},s,{className:(0,n.Z)("tabs__item",b,null==s?void 0:s.className,{"tabs__item--active":r===t})}),null!=a?a:t)})))}function k(e){var t=e.lazy,a=e.children,i=e.selectedValue,n=(Array.isArray(a)?a:[a]).filter(Boolean);if(t){var s=n.find((function(e){return e.props.value===i}));return s?(0,o.cloneElement)(s,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(e,t){return(0,o.cloneElement)(e,{key:t,hidden:e.props.value!==i})})))}function G(e){var t=f(e);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(v,(0,i.Z)({},e,t)),o.createElement(k,(0,i.Z)({},e,t)))}function T(e){var t=(0,g.Z)();return o.createElement(G,(0,i.Z)({key:String(t)},e))}},5557:function(e,t,a){a.r(t),a.d(t,{assets:function(){return h},contentTitle:function(){return l},default:function(){return u},frontMatter:function(){return r},mark:function(){return m},metadata:function(){return c},toc:function(){return d}});var i=a(7462),o=a(3366),n=(a(7294),a(3905)),s=(a(4996),a(4866),a(5162),["components"]),r={id:"hrgt",sidebar_label:"HR Glossary Generation",date:20230103},l="Human Readable Glossary Generation Tool",c={unversionedId:"spec-tools/hrgt",id:"spec-tools/hrgt",title:"Human Readable Glossary Generation Tool",description:"text to mark",source:"@site/docs/spec-tools/22-hrgt.md",sourceDirName:"spec-tools",slug:"/spec-tools/hrgt",permalink:"/tev2-specifications/docs/spec-tools/hrgt",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/22-hrgt.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:22,frontMatter:{id:"hrgt",sidebar_label:"HR Glossary Generation",date:20230103},sidebar:"tev2SideBar",previous:{title:"HR Glossary Generation (previous version)",permalink:"/tev2-specifications/docs/spec-tools/hrgt-old"},next:{title:"MR Dictionary Generation",permalink:"/tev2-specifications/docs/spec-tools/mrdt"}},h={},d=[{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Processing, Errors and Warnings",id:"processing-errors-and-warnings",level:2},{value:"Deploying the Tool",id:"deploying-the-tool",level:2},{value:"Discussion Notes",id:"discussion-notes",level:2}],m=function(e){var t=e.children;return(0,n.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},t)},p={toc:d,mark:m};function u(e){var t=e.components,a=(0,o.Z)(e,s);return(0,n.kt)("wrapper",(0,i.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"human-readable-glossary-generation-tool"},"Human Readable Glossary Generation Tool"),(0,n.kt)("p",null,"The ",(0,n.kt)("strong",{parentName:"p"},"Human Readable Glossary generation Tool (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT"),")")," generates a Human Readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"Glossary")," (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),") that consists of (a selection of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are part of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". "),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," takes one specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," as its input, and converts (a selection of) its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," into one of the supported output formats, e.g. HTML, or PDF. The file that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is named ",(0,n.kt)("inlineCode",{parentName:"p"},"mrg...yaml"),", where the combination of ",(0,n.kt)("inlineCode",{parentName:"p"},"")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"")," identify a particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". See the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg#mrg-file-naming"},"MRG file naming conventions")," for details."),(0,n.kt)("p",null,"The selection of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that are to be included in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),", as well as the specification of the output format, headers, footers, etc., can be configured as well as customized. Thus, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," provides a flexible means for creating all sorts of outputs that are either already human readable or can be processed further by third-party rendering tools, such as ",(0,n.kt)("a",{parentName:"p",href:"https://pages.github.com/"},"github pages")," or ",(0,n.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/docs-introduction"},"Docusaurus"),", etc. (see also: ",(0,n.kt)("a",{parentName:"p",href:"/docs/tev2-toolbox"},"Using the Tools"),")."),(0,n.kt)("p",null,"There is currently one implementation of the tool underway:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the repo in which the tool is being developed is ","[",(0,n.kt)("mark",null,"tbd"),"]","."),(0,n.kt)("li",{parentName:"ul"},"the documentation is ","[",(0,n.kt)("mark",null,"tbd"),"]",".")),(0,n.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,n.kt)("p",null,"The behavior of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," can be configured per call e.g. by a configuration file and/or command-line parameters. The command-line syntax is as follows:"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"hrgt [ ] [ ]\n")),(0,n.kt)("p",null,"where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," (optional) is a list of key-value pairs"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},(0,n.kt)("inlineCode",{parentName:"a"},"globpattern"))," (optional) specifies a set of (input) files that are to be processed. If a configuration file is used, its contents may specify an additional set of input files to be processed.")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("p",null,"The columns in the following table are defined as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,n.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"config")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter MUST NOT appear in the configuration file itself.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," from which the tool is called. It MUST contain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which we will refer to as the 'current scope' for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT"),". If omitted, the current directory is assumed to tbe the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"input")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{parentName:"td",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"Globpattern")," that specifies the set of (input) files (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),") that are to be processed. If omitted, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated for the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of the current scope (as specified in the ",(0,n.kt)("inlineCode",{parentName:"td"},"mrgfile")," field of the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section in its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"output")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"text that is used as the last part of the name of the file(s) that contain(s) the generated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG(s)"),". This text must specify an appropriate extension, such as HTML or PDF. The filename(s) will be of the form ",(0,n.kt)("inlineCode",{parentName:"td"},"hrg..."),", where ",(0,n.kt)("inlineCode",{parentName:"td"},"")," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated, and ",(0,n.kt)("inlineCode",{parentName:"td"},"")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," in that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". From this, it follows that an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-file exists named ",(0,n.kt)("inlineCode",{parentName:"td"},"mrg...yaml"),", which is used as the source for the entries in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"termselcrit")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"List of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," that are used to generate (this version of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". If omitted, all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from the source ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," will be selected. See ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-tools/terminology-construction"},"Terminology Construction")," for details.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"method")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("mark",null,"Text, the syntax and semantics of which remain to be specified (see also the Editor's note below).")," When this parameter is omitted, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated as an HTML file.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"license")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"File that contains the (default) licensing conditions. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"license"),". If not specified, its value defaults to the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"license")," field in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section (of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the current scope). The purpose of this field is to enable different ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRGs")," to have different licenses.")))),(0,n.kt)("admonition",{title:"Editor's Note:",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"We may want to consider:"),(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"changing the ",(0,n.kt)("inlineCode",{parentName:"li"},"input")," parameter from a globpattern to a list of versiontags for which the HRG is to be generated."),(0,n.kt)("li",{parentName:"ul"},"revising the spec of the ",(0,n.kt)("inlineCode",{parentName:"li"},"output")," parameter, depending on the kind of control that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," need."),(0,n.kt)("li",{parentName:"ul"},"add a ",(0,n.kt)("inlineCode",{parentName:"li"},"version")," parameter, the value of which is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag"),", and the meaning of which is that (a) the input file is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," associated with that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag"),", and (b) the output file will be registered in the ",(0,n.kt)("inlineCode",{parentName:"li"},"hrgfile")," entry of the appropriate element of the ",(0,n.kt)("inlineCode",{parentName:"li"},"versions")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", and also, if appropriate, in the ",(0,n.kt)("inlineCode",{parentName:"li"},"scope")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". Doing this requires additional texts in subsequent sections."))),(0,n.kt)("admonition",{title:"Editor's Note:",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"Various ",(0,n.kt)("inlineCode",{parentName:"p"},"method"),"s are envisaged, yet remain to be properly specified. A method may specify:"),(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"what a single entry contains"),(0,n.kt)("li",{parentName:"ul"},"that the contents of particular files are to be used as header or footer;"),(0,n.kt)("li",{parentName:"ul"},"that a particular kind of navigation bar is to be inserted at specific places (e.g. between two subsequent entries that start with a different character);"),(0,n.kt)("li",{parentName:"ul"},"..."))),(0,n.kt)("h2",{id:"processing-errors-and-warnings"},"Processing, Errors and Warnings"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," starts by reading its command-line and configuration file. If the command-line has a key that is also found in the configuration file, the command-line key-value pair takes precedence. The resulting set of key-value pairs is tested for proper syntax and validity. Every improper syntax and every invalidity found will be logged. Improper syntax may be e.g. an invalid ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"globpattern"),". Invalidities include non-existing directories or files, lack of write-permissions where needed, etc."),(0,n.kt)("p",null,"Then, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," reads the specified input files (in arbitrary order), and processes each of them, as follows:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"select the actual ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is to be used as an input;"),(0,n.kt)("li",{parentName:"ul"},"select the (subset of) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that must appear in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," - see ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-syntax/hrg-termselcrit"},"HRG Term Selection")," for details. Conceptually, this will result in an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that only contains ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that need to appear in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," as well;"),(0,n.kt)("li",{parentName:"ul"},"(alphabetically) sort these entries;"),(0,n.kt)("li",{parentName:"ul"},"convert each entry into a specific 'rendered' format (as specified by the user), thereby resolving any ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," (by appropriately calling the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),")",(0,n.kt)("sup",{parentName:"li",id:"fnref-1"},(0,n.kt)("a",{parentName:"sup",href:"#fn-1",className:"footnote-ref"},"1")),", adding hyperlinks to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that the entry relates to, 'meta-data' (e.g. the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags"),", contributors, etc.), and anything else, as required for the particular kind of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," that is being generated;",(0,n.kt)("admonition",{parentName:"li",title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/tno-terminology-design/trrt"},"TRRT")," has a nice setup for implementing ",(0,n.kt)("a",{parentName:"p",href:"/docs/overview/tev2-design-principles#text-conversion-steps"},"text conversion steps"),". We should check that out and adapt the specifications text in this section so that this stuff can be reused as much as possible."))),(0,n.kt)("li",{parentName:"ul"},"construct the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," by adding (rendered) header- and footer-material and (optionally) licensing information;"),(0,n.kt)("li",{parentName:"ul"},"write the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," to the designated output file.")),(0,n.kt)("admonition",{title:"Editor's Note:",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"A special case of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," generation is when the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is created for a particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", which typically consists of all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),". In that case, the contents of the ",(0,n.kt)("inlineCode",{parentName:"p"},"hrgfile")," field in ",(0,n.kt)("inlineCode",{parentName:"p"},"versions")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," whose ",(0,n.kt)("inlineCode",{parentName:"p"},"mrgfile")," field ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," should become the name of the file that contains the generated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),". Additionally, if the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," happens to be the default one for the scope (as can be seen by comparing its filename with the contents of the ",(0,n.kt)("inlineCode",{parentName:"p"},"mrgfile")," field in the ",(0,n.kt)("inlineCode",{parentName:"p"},"scope")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"), then the contents of the ",(0,n.kt)("inlineCode",{parentName:"p"},"hrgfile")," field in ",(0,n.kt)("inlineCode",{parentName:"p"},"scope")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," must also become the name of the file that contains the generated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),". Whether or not the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," is expected to operate in this mode is an option that can be provided at the commandline or in the configuration file.")),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," logs every error- and/or warning condition that it comes across while processing its configuration file, commandline parameters, and input files, in a way that helps tool-operators and document ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to identify and fix such conditions."),(0,n.kt)("h2",{id:"deploying-the-tool"},"Deploying the Tool"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and author/modify CI-pipes to use that deployment."),(0,n.kt)("h2",{id:"discussion-notes"},"Discussion Notes"),(0,n.kt)("p",null,"This section contains some notes of a discussion between Daniel and Rieks on these matters of some time ago, which pertains to glossaries in the context of ToIP."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"A ToIP ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary")," will be put by default at ",(0,n.kt)("inlineCode",{parentName:"li"},"http://trustoverip.github.io//glossary"),", where ",(0,n.kt)("inlineCode",{parentName:"li"},"")," is the name of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terms-community",hovertext:"Terms Community: a Community that maintains a Terminology for the purpose of avoiding misunderstandings between its members as they collaborate."},"terms-community"),". This allows every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terms-community",hovertext:"Terms Community: a Community that maintains a Terminology for the purpose of avoiding misunderstandings between its members as they collaborate."},"terms-community")," to have its own ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". However, the above specifications allow ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terms-community",hovertext:"Terms Community: a Community that maintains a Terminology for the purpose of avoiding misunderstandings between its members as they collaborate."},"terms-communities")," to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curate")," multiple ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes"),"."),(0,n.kt)("li",{parentName:"ul"},"Storing ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossaries")," elsewhere was seen to break the (basic workings of the postprocessing tool, but the above specifications would fix that."),(0,n.kt)("li",{parentName:"ul"},"Entries, e.g. 'foo' can be referenced as ",(0,n.kt)("inlineCode",{parentName:"li"},'http://trustoverip.github.io//glossary#foo')," (in case of a standalone glossary), and ",(0,n.kt)("inlineCode",{parentName:"li"},"http://trustoverip.github.io//document-that-includes-glossary-fragment#foo")," (in case of a fragmented glossary)."),(0,n.kt)("li",{parentName:"ul"},"We could also see GGT and TRRT to be extended, e.g. to work in conjunction with LaTeX or word-processor documents. This needs some looking into, but ",(0,n.kt)("a",{parentName:"li",href:"https://pandoc.org/"},"pandoc")," may be useful here.")),(0,n.kt)("div",{className:"footnotes"},(0,n.kt)("hr",{parentName:"div"}),(0,n.kt)("ol",{parentName:"div"},(0,n.kt)("li",{parentName:"ol",id:"fn-1"},"if the rendered output is such that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," can still be recognized by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),", it may be more efficient to defer the resolution of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," until after the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is completely generated.",(0,n.kt)("a",{parentName:"li",href:"#fnref-1",className:"footnote-backref"},"\u21a9")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/5ea46faf.46386de4.js b/assets/js/5ea46faf.bf60b71e.js similarity index 99% rename from assets/js/5ea46faf.46386de4.js rename to assets/js/5ea46faf.bf60b71e.js index fbb36a7857..6beaf48be0 100644 --- a/assets/js/5ea46faf.46386de4.js +++ b/assets/js/5ea46faf.bf60b71e.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[3504],{3905:function(e,t,r){r.d(t,{Zo:function(){return p},kt:function(){return l}});var i=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=i.createContext({}),u=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=u(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},h=i.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),h=u(r),l=o,f=h["".concat(c,".").concat(l)]||h[l]||d[l]||n;return r?i.createElement(f,a(a({ref:t},p),{},{components:r})):i.createElement(f,a({ref:t},p))}));function l(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,a=new Array(n);a[0]=h;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var u=2;u=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=i.createContext({}),u=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=u(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},h=i.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),h=u(r),l=o,f=h["".concat(c,".").concat(l)]||h[l]||d[l]||n;return r?i.createElement(f,a(a({ref:t},p),{},{components:r})):i.createElement(f,a({ref:t},p))}));function l(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,a=new Array(n);a[0]=h;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var u=2;u=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var h=o.createContext({}),c=function(e){var t=o.useContext(h),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},l=function(e){var t=c(e.components);return o.createElement(h.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},p=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,a=e.originalType,h=e.parentName,l=r(e,["components","mdxType","originalType","parentName"]),p=c(i),f=n,m=p["".concat(h,".").concat(f)]||p[f]||d[f]||a;return i?o.createElement(m,s(s({ref:t},l),{},{components:i})):o.createElement(m,s({ref:t},l))}));function f(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=i.length,s=new Array(a);s[0]=p;var r={};for(var h in t)hasOwnProperty.call(t,h)&&(r[h]=t[h]);r.originalType=e,r.mdxType="string"==typeof e?e:n,s[1]=r;for(var c=2;c=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var h=o.createContext({}),c=function(e){var t=o.useContext(h),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},l=function(e){var t=c(e.components);return o.createElement(h.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},p=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,a=e.originalType,h=e.parentName,l=r(e,["components","mdxType","originalType","parentName"]),p=c(i),f=n,m=p["".concat(h,".").concat(f)]||p[f]||d[f]||a;return i?o.createElement(m,s(s({ref:t},l),{},{components:i})):o.createElement(m,s({ref:t},l))}));function f(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=i.length,s=new Array(a);s[0]=p;var r={};for(var h in t)hasOwnProperty.call(t,h)&&(r[h]=t[h]);r.originalType=e,r.mdxType="string"==typeof e?e:n,s[1]=r;for(var c=2;c=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},u=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},h=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),h=c(n),m=i,p=h["".concat(l,".").concat(m)]||h[m]||d[m]||r;return n?a.createElement(p,o(o({ref:t},u),{},{components:n})):a.createElement(p,o({ref:t},u))}));function m(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,o=new Array(r);o[0]=h;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:i,o[1]=s;for(var c=2;c child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:n.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function h(e){var t=e.values,n=e.children;return(0,i.useMemo)((function(){var e=null!=t?t:d(n);return function(e){var t=(0,c.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,n])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function p(e){var t=e.queryString,n=void 0!==t&&t,a=e.groupId,r=(0,s.k6)(),o=function(e){var t=e.queryString,n=void 0!==t&&t,a=e.groupId;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:n,groupId:a});return[(0,l._X)(o),(0,i.useCallback)((function(e){if(o){var t=new URLSearchParams(r.location.search);t.set(o,e),r.replace(Object.assign({},r.location,{search:t.toString()}))}}),[o,r])]}function f(e){var t,n,a,r,o=e.defaultValue,s=e.queryString,l=void 0!==s&&s,c=e.groupId,d=h(e),f=(0,i.useState)((function(){return function(e){var t,n=e.defaultValue,a=e.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!m({value:n,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+n+'" but none of its children has the corresponding value. Available values are: '+a.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return n}var i=null!=(t=a.find((function(e){return e.default})))?t:a[0];if(!i)throw new Error("Unexpected error: 0 tabValues");return i.value}({defaultValue:o,tabValues:d})})),g=f[0],b=f[1],y=p({queryString:l,groupId:c}),v=y[0],G=y[1],R=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:c}.groupId),n=(0,u.Nk)(t),a=n[0],r=n[1],[a,(0,i.useCallback)((function(e){t&&r.set(e)}),[t,r])]),w=R[0],k=R[1],H=function(){var e=null!=v?v:w;return m({value:e,tabValues:d})?e:null}();return(0,i.useLayoutEffect)((function(){H&&b(H)}),[H]),{selectedValue:g,selectValue:(0,i.useCallback)((function(e){if(!m({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);b(e),G(e),k(e)}),[G,k,d]),tabValues:d}}var g=n(2389),b="tabList__CuJ",y="tabItem_LNqP";function v(e){var t=e.className,n=e.block,s=e.selectedValue,l=e.selectValue,c=e.tabValues,u=[],d=(0,o.o5)().blockElementScrollPositionUntilNextRender,h=function(e){var t=e.currentTarget,n=u.indexOf(t),a=c[n].value;a!==s&&(d(t),l(a))},m=function(e){var t,n=null;switch(e.key){case"Enter":h(e);break;case"ArrowRight":var a,i=u.indexOf(e.currentTarget)+1;n=null!=(a=u[i])?a:u[0];break;case"ArrowLeft":var r,o=u.indexOf(e.currentTarget)-1;n=null!=(r=u[o])?r:u[u.length-1]}null==(t=n)||t.focus()};return i.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,r.Z)("tabs",{"tabs--block":n},t)},c.map((function(e){var t=e.value,n=e.label,o=e.attributes;return i.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:function(e){return u.push(e)},onKeyDown:m,onClick:h},o,{className:(0,r.Z)("tabs__item",y,null==o?void 0:o.className,{"tabs__item--active":s===t})}),null!=n?n:t)})))}function G(e){var t=e.lazy,n=e.children,a=e.selectedValue,r=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){var o=r.find((function(e){return e.props.value===a}));return o?(0,i.cloneElement)(o,{className:"margin-top--md"}):null}return i.createElement("div",{className:"margin-top--md"},r.map((function(e,t){return(0,i.cloneElement)(e,{key:t,hidden:e.props.value!==a})})))}function R(e){var t=f(e);return i.createElement("div",{className:(0,r.Z)("tabs-container",b)},i.createElement(v,(0,a.Z)({},e,t)),i.createElement(G,(0,a.Z)({},e,t)))}function w(e){var t=(0,g.Z)();return i.createElement(R,(0,a.Z)({key:String(t)},e))}},6286:function(e,t,n){n.r(t),n.d(t,{assets:function(){return d},contentTitle:function(){return c},default:function(){return p},frontMatter:function(){return l},metadata:function(){return u},toc:function(){return h}});var a=n(7462),i=n(3366),r=(n(7294),n(3905)),o=n(4996),s=(n(4866),n(5162),["components"]),l={id:"hrg",sidebar_label:"HRG (Human Readable Glossary)",date:20220503},c="Human Readable Glossary (HRG)",u={unversionedId:"spec-files/hrg",id:"spec-files/hrg",title:"Human Readable Glossary (HRG)",description:".."))," is the name of a file that contains an actual ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),", or it is a file that links (references) such a file, where:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},(0,r.kt)("inlineCode",{parentName:"strong"},"."))," is taken from the ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-file from which the ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated. See ",(0,r.kt)("a",{parentName:"li",href:"/docs/spec-files/mrg#mrg-file-naming"},"MRG file naming")," for details."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},(0,r.kt)("inlineCode",{parentName:"strong"},""))," is a text that has been provided by the user that generated the ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),". It includes the file extension (e.g., PDF, HTML, etc.) that is appropriate for its contents. See ",(0,r.kt)("a",{parentName:"li",href:"/docs/spec-tools/hrgt#calling-the-tool"},"HRG generation")," for details.")),(0,r.kt)("p",null,"This naming convention enables tools (as well as ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," and others) that operate within a particular ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", to quickly find a particular ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," that is relevant for that ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,r.kt)("admonition",{title:"Editor's note",type:"info"},(0,r.kt)("p",{parentName:"admonition"},"We need to decide whether this document actually describes "),(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},"(the possible structures of) HRGs, or"),(0,r.kt)("li",{parentName:"ul"},"the ways in hwich the generation of an HRG can be specified"))))}p.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[6214],{3905:function(e,t,n){n.d(t,{Zo:function(){return u},kt:function(){return m}});var a=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},u=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},h=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),h=c(n),m=i,p=h["".concat(l,".").concat(m)]||h[m]||d[m]||r;return n?a.createElement(p,o(o({ref:t},u),{},{components:n})):a.createElement(p,o({ref:t},u))}));function m(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,o=new Array(r);o[0]=h;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s.mdxType="string"==typeof e?e:i,o[1]=s;for(var c=2;c child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:n.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function h(e){var t=e.values,n=e.children;return(0,i.useMemo)((function(){var e=null!=t?t:d(n);return function(e){var t=(0,c.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,n])}function m(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function p(e){var t=e.queryString,n=void 0!==t&&t,a=e.groupId,r=(0,s.k6)(),o=function(e){var t=e.queryString,n=void 0!==t&&t,a=e.groupId;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:n,groupId:a});return[(0,l._X)(o),(0,i.useCallback)((function(e){if(o){var t=new URLSearchParams(r.location.search);t.set(o,e),r.replace(Object.assign({},r.location,{search:t.toString()}))}}),[o,r])]}function f(e){var t,n,a,r,o=e.defaultValue,s=e.queryString,l=void 0!==s&&s,c=e.groupId,d=h(e),f=(0,i.useState)((function(){return function(e){var t,n=e.defaultValue,a=e.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!m({value:n,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+n+'" but none of its children has the corresponding value. Available values are: '+a.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return n}var i=null!=(t=a.find((function(e){return e.default})))?t:a[0];if(!i)throw new Error("Unexpected error: 0 tabValues");return i.value}({defaultValue:o,tabValues:d})})),g=f[0],b=f[1],y=p({queryString:l,groupId:c}),v=y[0],G=y[1],R=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:c}.groupId),n=(0,u.Nk)(t),a=n[0],r=n[1],[a,(0,i.useCallback)((function(e){t&&r.set(e)}),[t,r])]),w=R[0],k=R[1],H=function(){var e=null!=v?v:w;return m({value:e,tabValues:d})?e:null}();return(0,i.useLayoutEffect)((function(){H&&b(H)}),[H]),{selectedValue:g,selectValue:(0,i.useCallback)((function(e){if(!m({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);b(e),G(e),k(e)}),[G,k,d]),tabValues:d}}var g=n(2389),b="tabList__CuJ",y="tabItem_LNqP";function v(e){var t=e.className,n=e.block,s=e.selectedValue,l=e.selectValue,c=e.tabValues,u=[],d=(0,o.o5)().blockElementScrollPositionUntilNextRender,h=function(e){var t=e.currentTarget,n=u.indexOf(t),a=c[n].value;a!==s&&(d(t),l(a))},m=function(e){var t,n=null;switch(e.key){case"Enter":h(e);break;case"ArrowRight":var a,i=u.indexOf(e.currentTarget)+1;n=null!=(a=u[i])?a:u[0];break;case"ArrowLeft":var r,o=u.indexOf(e.currentTarget)-1;n=null!=(r=u[o])?r:u[u.length-1]}null==(t=n)||t.focus()};return i.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,r.Z)("tabs",{"tabs--block":n},t)},c.map((function(e){var t=e.value,n=e.label,o=e.attributes;return i.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:function(e){return u.push(e)},onKeyDown:m,onClick:h},o,{className:(0,r.Z)("tabs__item",y,null==o?void 0:o.className,{"tabs__item--active":s===t})}),null!=n?n:t)})))}function G(e){var t=e.lazy,n=e.children,a=e.selectedValue,r=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){var o=r.find((function(e){return e.props.value===a}));return o?(0,i.cloneElement)(o,{className:"margin-top--md"}):null}return i.createElement("div",{className:"margin-top--md"},r.map((function(e,t){return(0,i.cloneElement)(e,{key:t,hidden:e.props.value!==a})})))}function R(e){var t=f(e);return i.createElement("div",{className:(0,r.Z)("tabs-container",b)},i.createElement(v,(0,a.Z)({},e,t)),i.createElement(G,(0,a.Z)({},e,t)))}function w(e){var t=(0,g.Z)();return i.createElement(R,(0,a.Z)({key:String(t)},e))}},6286:function(e,t,n){n.r(t),n.d(t,{assets:function(){return d},contentTitle:function(){return c},default:function(){return p},frontMatter:function(){return l},metadata:function(){return u},toc:function(){return h}});var a=n(7462),i=n(3366),r=(n(7294),n(3905)),o=n(4996),s=(n(4866),n(5162),["components"]),l={id:"hrg",sidebar_label:"HRG (Human Readable Glossary)",date:20220503},c="Human Readable Glossary (HRG)",u={unversionedId:"spec-files/hrg",id:"spec-files/hrg",title:"Human Readable Glossary (HRG)",description:".."))," is the name of a file that contains an actual ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),", or it is a file that links (references) such a file, where:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},(0,r.kt)("inlineCode",{parentName:"strong"},"."))," is taken from the ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-file from which the ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated. See ",(0,r.kt)("a",{parentName:"li",href:"/docs/spec-files/mrg#mrg-file-naming"},"MRG file naming")," for details."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},(0,r.kt)("inlineCode",{parentName:"strong"},""))," is a text that has been provided by the user that generated the ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),". It includes the file extension (e.g., PDF, HTML, etc.) that is appropriate for its contents. See ",(0,r.kt)("a",{parentName:"li",href:"/docs/spec-tools/hrgt#calling-the-tool"},"HRG generation")," for details.")),(0,r.kt)("p",null,"This naming convention enables tools (as well as ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," and others) that operate within a particular ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", to quickly find a particular ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," that is relevant for that ",(0,r.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,r.kt)("admonition",{title:"Editor's note",type:"info"},(0,r.kt)("p",{parentName:"admonition"},"We need to decide whether this document actually describes "),(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},"(the possible structures of) HRGs, or"),(0,r.kt)("li",{parentName:"ul"},"the ways in hwich the generation of an HRG can be specified"))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/65f59a55.6fdb0c0a.js b/assets/js/65f59a55.1ed03a89.js similarity index 99% rename from assets/js/65f59a55.6fdb0c0a.js rename to assets/js/65f59a55.1ed03a89.js index e904821bdc..09936dfa8d 100644 --- a/assets/js/65f59a55.6fdb0c0a.js +++ b/assets/js/65f59a55.1ed03a89.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[328],{3905:function(e,t,n){n.d(t,{Zo:function(){return d},kt:function(){return p}});var r=n(7294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),l=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,s=e.originalType,c=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),u=l(n),p=a,h=u["".concat(c,".").concat(p)]||u[p]||m[p]||s;return n?r.createElement(h,i(i({ref:t},d),{},{components:n})):r.createElement(h,i({ref:t},d))}));function p(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var s=n.length,i=new Array(s);i[0]=u;var o={};for(var c in t)hasOwnProperty.call(t,c)&&(o[c]=t[c]);o.originalType=e,o.mdxType="string"==typeof e?e:a,i[1]=o;for(var l=2;l=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),l=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,s=e.originalType,c=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),u=l(n),p=a,h=u["".concat(c,".").concat(p)]||u[p]||m[p]||s;return n?r.createElement(h,i(i({ref:t},d),{},{components:n})):r.createElement(h,i({ref:t},d))}));function p(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var s=n.length,i=new Array(s);i[0]=u;var o={};for(var c in t)hasOwnProperty.call(t,c)&&(o[c]=t[c]);o.originalType=e,o.mdxType="string"==typeof e?e:a,i[1]=o;for(var l=2;l=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var c=n.createContext({}),h=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},d=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var i=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=h(i),f=o,l=p["".concat(c,".").concat(f)]||p[f]||m[f]||a;return i?n.createElement(l,r(r({ref:t},d),{},{components:i})):n.createElement(l,r({ref:t},d))}));function f(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=i.length,r=new Array(a);r[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var h=2;h@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier")," are: "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"term")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"term"),"@",(0,a.kt)("inlineCode",{parentName:"li"},"terminology-identifier"))),(0,a.kt)("p",null,"where"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"term"))," is the value of the ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," field in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," by ",(0,a.kt)("inlineCode",{parentName:"p"},"terminology-identifier"),". This value can also be found in the ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," field of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that documents the associated ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),".")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"terminology-identifier"))," is the combination of a ",(0,a.kt)("inlineCode",{parentName:"p"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"p"},"vsntag"),", where"),(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"scopetag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". If ",(0,a.kt)("inlineCode",{parentName:"li"},"scopetag")," is omitted, the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," defaults to the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"vsntag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," to be used. If ",(0,a.kt)("inlineCode",{parentName:"li"},":vsntag")," (including the ",(0,a.kt)("inlineCode",{parentName:"li"},":"),") is omitted, the default version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is assumed, as specified in the ",(0,a.kt)("inlineCode",{parentName:"li"},"defaultvsn")," field in the ",(0,a.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#terminology"},"scope section")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is maintained.")))),(0,a.kt)("h2",{id:"examples"},"Examples"),(0,a.kt)("p",null,"In the following examples, we assume that "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"tev2")," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")," ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is being ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated"),". "),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"terms")," is a ",(0,a.kt)("a",{parentName:"li",href:"@"},"vsntag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that consists of all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/define",hovertext:"Define: to provide a criterion and a Term, where the criterion can be used by people to determine whether or not something is an instance/example of a Concept (or other Terminological Artifact), and the Term is used to refer to that Concept, or an arbitrary instance thereof."},"defined")," within the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," identified by ",(0,a.kt)("inlineCode",{parentName:"li"},"tev2"),"."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"myscope")," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"terminology-identifier"),(0,a.kt)("th",{parentName:"tr",align:"left"},"refers to"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"scope")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,a.kt)("inlineCode",{parentName:"td"},"scope"),", as defined in the default ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the current scope (i.e., ",(0,a.kt)("inlineCode",{parentName:"td"},"myscope"),").")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"concept@tev2")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,a.kt)("inlineCode",{parentName:"td"},"concept"),", as defined in the default ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the scope ",(0,a.kt)("inlineCode",{parentName:"td"},"tev2"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"pic@tev2:terms")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,a.kt)("inlineCode",{parentName:"td"},"pic"),", as defined in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that contains all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are defined within the scope ",(0,a.kt)("inlineCode",{parentName:"td"},"tev2"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"atjar@:terms")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,a.kt)("inlineCode",{parentName:"td"},"atjar"),", as defined in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that contains all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are defined within the current scope (i.e.: ",(0,a.kt)("inlineCode",{parentName:"td"},"myscope"),").")))))}f.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[8830],{3905:function(e,t,i){i.d(t,{Zo:function(){return d},kt:function(){return f}});var n=i(7294);function o(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,n)}return i}function r(e){for(var t=1;t=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var c=n.createContext({}),h=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},d=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var i=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=h(i),f=o,l=p["".concat(c,".").concat(f)]||p[f]||m[f]||a;return i?n.createElement(l,r(r({ref:t},d),{},{components:i})):n.createElement(l,r({ref:t},d))}));function f(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=i.length,r=new Array(a);r[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var h=2;h@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier")," are: "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"term")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"term"),"@",(0,a.kt)("inlineCode",{parentName:"li"},"terminology-identifier"))),(0,a.kt)("p",null,"where"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"term"))," is the value of the ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," field in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," by ",(0,a.kt)("inlineCode",{parentName:"p"},"terminology-identifier"),". This value can also be found in the ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," field of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that documents the associated ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),".")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"terminology-identifier"))," is the combination of a ",(0,a.kt)("inlineCode",{parentName:"p"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"p"},"vsntag"),", where"),(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"scopetag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". If ",(0,a.kt)("inlineCode",{parentName:"li"},"scopetag")," is omitted, the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," defaults to the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("strong",{parentName:"li"},(0,a.kt)("inlineCode",{parentName:"strong"},"vsntag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," to be used. If ",(0,a.kt)("inlineCode",{parentName:"li"},":vsntag")," (including the ",(0,a.kt)("inlineCode",{parentName:"li"},":"),") is omitted, the default version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is assumed, as specified in the ",(0,a.kt)("inlineCode",{parentName:"li"},"defaultvsn")," field in the ",(0,a.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#terminology"},"scope section")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is maintained.")))),(0,a.kt)("h2",{id:"examples"},"Examples"),(0,a.kt)("p",null,"In the following examples, we assume that "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"tev2")," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")," ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is being ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated"),". "),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"terms")," is a ",(0,a.kt)("a",{parentName:"li",href:"@"},"vsntag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that consists of all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/define",hovertext:"Define: to provide a criterion and a Term, where the criterion can be used by people to determine whether or not something is an instance/example of a Concept (or other Terminological Artifact), and the Term is used to refer to that Concept, or an arbitrary instance thereof."},"defined")," within the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," identified by ",(0,a.kt)("inlineCode",{parentName:"li"},"tev2"),"."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"myscope")," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"terminology-identifier"),(0,a.kt)("th",{parentName:"tr",align:"left"},"refers to"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"scope")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,a.kt)("inlineCode",{parentName:"td"},"scope"),", as defined in the default ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the current scope (i.e., ",(0,a.kt)("inlineCode",{parentName:"td"},"myscope"),").")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"concept@tev2")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,a.kt)("inlineCode",{parentName:"td"},"concept"),", as defined in the default ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the scope ",(0,a.kt)("inlineCode",{parentName:"td"},"tev2"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"pic@tev2:terms")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,a.kt)("inlineCode",{parentName:"td"},"pic"),", as defined in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that contains all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are defined within the scope ",(0,a.kt)("inlineCode",{parentName:"td"},"tev2"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"atjar@:terms")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,a.kt)("inlineCode",{parentName:"td"},"atjar"),", as defined in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that contains all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are defined within the current scope (i.e.: ",(0,a.kt)("inlineCode",{parentName:"td"},"myscope"),").")))))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/67283e50.491ca205.js b/assets/js/67283e50.9b244c71.js similarity index 99% rename from assets/js/67283e50.491ca205.js rename to assets/js/67283e50.9b244c71.js index 913d3ccf16..626e8324b9 100644 --- a/assets/js/67283e50.491ca205.js +++ b/assets/js/67283e50.9b244c71.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[991],{3905:function(e,t,r){r.d(t,{Zo:function(){return d},kt:function(){return u}});var a=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function o(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=a.createContext({}),l=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},d=function(e){var t=l(e.components);return a.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,i=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=l(r),u=n,f=p["".concat(c,".").concat(u)]||p[u]||m[u]||i;return r?a.createElement(f,o(o({ref:t},d),{},{components:r})):a.createElement(f,o({ref:t},d))}));function u(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var i=r.length,o=new Array(i);o[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,o[1]=s;for(var l=2;l=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=a.createContext({}),l=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},d=function(e){var t=l(e.components);return a.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,i=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=l(r),u=n,f=p["".concat(c,".").concat(u)]||p[u]||m[u]||i;return r?a.createElement(f,o(o({ref:t},d),{},{components:r})):a.createElement(f,o({ref:t},d))}));function u(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var i=r.length,o=new Array(i);o[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,o[1]=s;for(var l=2;l=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),l=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):r(r({},e),t)),i},m=function(t){var e=l(t.components);return a.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},d=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,m=s(t,["components","mdxType","originalType","parentName"]),d=l(i),p=o,u=d["".concat(c,".").concat(p)]||d[p]||h[p]||n;return i?a.createElement(u,r(r({ref:e},m),{},{components:i})):a.createElement(u,r({ref:e},m))}));function p(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,r=new Array(n);r[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:o,r[1]=s;for(var l=2;l child <"+("string"==typeof t.type?t.type:t.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?e:[]}(t).map((function(t){var e=t.props;return{value:e.value,label:e.label,attributes:e.attributes,default:e.default}}))}function d(t){var e=t.values,i=t.children;return(0,o.useMemo)((function(){var t=null!=e?e:h(i);return function(t){var e=(0,l.l)(t,(function(t,e){return t.value===e.value}));if(e.length>0)throw new Error('Docusaurus error: Duplicate values "'+e.map((function(t){return t.value})).join(", ")+'" found in . Every value needs to be unique.')}(t),t}),[e,i])}function p(t){var e=t.value;return t.tabValues.some((function(t){return t.value===e}))}function u(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId,n=(0,s.k6)(),r=function(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,c._X)(r),(0,o.useCallback)((function(t){if(r){var e=new URLSearchParams(n.location.search);e.set(r,t),n.replace(Object.assign({},n.location,{search:e.toString()}))}}),[r,n])]}function f(t){var e,i,a,n,r=t.defaultValue,s=t.queryString,c=void 0!==s&&s,l=t.groupId,h=d(t),f=(0,o.useState)((function(){return function(t){var e,i=t.defaultValue,a=t.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!p({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(t){return t.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var o=null!=(e=a.find((function(t){return t.default})))?e:a[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:r,tabValues:h})})),g=f[0],y=f[1],v=u({queryString:c,groupId:l}),b=v[0],k=v[1],w=(e=function(t){return t?"docusaurus.tab."+t:null}({groupId:l}.groupId),i=(0,m.Nk)(e),a=i[0],n=i[1],[a,(0,o.useCallback)((function(t){e&&n.set(t)}),[e,n])]),T=w[0],x=w[1],C=function(){var t=null!=b?b:T;return p({value:t,tabValues:h})?t:null}();return(0,o.useLayoutEffect)((function(){C&&y(C)}),[C]),{selectedValue:g,selectValue:(0,o.useCallback)((function(t){if(!p({value:t,tabValues:h}))throw new Error("Can't select invalid tab value="+t);y(t),k(t),x(t)}),[k,x,h]),tabValues:h}}var g=i(2389),y="tabList__CuJ",v="tabItem_LNqP";function b(t){var e=t.className,i=t.block,s=t.selectedValue,c=t.selectValue,l=t.tabValues,m=[],h=(0,r.o5)().blockElementScrollPositionUntilNextRender,d=function(t){var e=t.currentTarget,i=m.indexOf(e),a=l[i].value;a!==s&&(h(e),c(a))},p=function(t){var e,i=null;switch(t.key){case"Enter":d(t);break;case"ArrowRight":var a,o=m.indexOf(t.currentTarget)+1;i=null!=(a=m[o])?a:m[0];break;case"ArrowLeft":var n,r=m.indexOf(t.currentTarget)-1;i=null!=(n=m[r])?n:m[m.length-1]}null==(e=i)||e.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},e)},l.map((function(t){var e=t.value,i=t.label,r=t.attributes;return o.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===e?0:-1,"aria-selected":s===e,key:e,ref:function(t){return m.push(t)},onKeyDown:p,onClick:d},r,{className:(0,n.Z)("tabs__item",v,null==r?void 0:r.className,{"tabs__item--active":s===e})}),null!=i?i:e)})))}function k(t){var e=t.lazy,i=t.children,a=t.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(e){var r=n.find((function(t){return t.props.value===a}));return r?(0,o.cloneElement)(r,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(t,e){return(0,o.cloneElement)(t,{key:e,hidden:t.props.value!==a})})))}function w(t){var e=f(t);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(b,(0,a.Z)({},t,e)),o.createElement(k,(0,a.Z)({},t,e)))}function T(t){var e=(0,g.Z)();return o.createElement(w,(0,a.Z)({key:String(e)},t))}},6273:function(t,e,i){i.r(e),i.d(e,{assets:function(){return h},contentTitle:function(){return l},default:function(){return u},frontMatter:function(){return c},metadata:function(){return m},toc:function(){return d}});var a=i(7462),o=i(3366),n=(i(7294),i(3905)),r=i(4996),s=(i(4866),i(5162),["components"]),c={id:"terminology-construction",toc_min_heading_level:2,toc_max_heading_level:2,date:20231002},l="Terminology Construction",m={unversionedId:"spec-tools/terminology-construction",id:"spec-tools/terminology-construction",title:"Terminology Construction",description:"Curators need the ability to construct (different versions of) the terminology for any scope they curate. This page documents",source:"@site/docs/spec-tools/20-terminology-construction.md",sourceDirName:"spec-tools",slug:"/spec-tools/terminology-construction",permalink:"/tev2-specifications/docs/spec-tools/terminology-construction",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/20-terminology-construction.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:20,frontMatter:{id:"terminology-construction",toc_min_heading_level:2,toc_max_heading_level:2,date:20231002},sidebar:"tev2SideBar",previous:{title:"HRG Selection Criteria",permalink:"/tev2-specifications/docs/spec-syntax/hrg-termselcrit"},next:{title:"TEv2 Terminology Toolbox",permalink:"/tev2-specifications/docs/tev2-toolbox"}},h={},d=[{value:"Specifying the contents of a terminology",id:"specifying-terminology",level:2},{value:"Process for creating a terminology",id:"process-for-creating-a-terminology",level:2},{value:"Prerequisites",id:"prerequisites",level:2},{value:"Adding Terms",id:"syntax-add",level:2},{value:"* <source>",id:"-source",level:3},{value:"<key> [ <value1>, <value2>, ... ] <source>",id:"key--value1-value2---source",level:3},{value:"Removing Terms",id:"syntax-remove",level:2},{value:"-<key> [ <value1>, <value2>, ... ]",id:"-key--value1-value2--",level:3},{value:"Rename/rewrite Term Attributes",id:"syntax-rename",level:2},{value:"rename <term> [ <fieldmodifierlist> ].",id:"rename-term--fieldmodifierlist-",level:3}],p={toc:d};function u(t){var e=t.components,i=(0,o.Z)(t,s);return(0,n.kt)("wrapper",(0,a.Z)({},p,i,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"terminology-construction"},"Terminology Construction"),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"Curators")," need the ability to construct (different versions of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," for any ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," they ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curate"),". This page documents 1. the way in which a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curator")," can specify this for a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that (s)he ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curates"),", and 2. how that specification is used to create the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),".",(0,n.kt)("p",null,"The actual creation of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),", and the subsequent generation of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that contains it, is done by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT"),"."),(0,n.kt)("h2",{id:"specifying-terminology"},"Specifying the contents of a terminology"),(0,n.kt)("p",null,"A ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curator")," specifies a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," by creating a new entry in the ",(0,n.kt)("a",{parentName:"p",href:"tev2-specifications/docs/spec-files/saf#versions"},(0,n.kt)("inlineCode",{parentName:"a"},"versions")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is to reside). This entry will contain "),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"one or more ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," that allow the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," to be ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," (within its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"), "),(0,n.kt)("li",{parentName:"ul"},"the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," that specify the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are to be included (or removed) from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology as it is being constructed"),", and"),(0,n.kt)("li",{parentName:"ul"},"some meta-data (see the ",(0,n.kt)("a",{parentName:"li",href:"tev2-specifications/docs/spec-files/saf#versions"},"documentation"),".")),(0,n.kt)("h2",{id:"process-for-creating-a-terminology"},"Process for creating a terminology"),(0,n.kt)("p",null,"The creation of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is equivalent with the creation of the set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that document each of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," therein. Thus, the process for creating a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," can be described as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"start with an empty set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),' - we use the term "',(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),'" to refer to this set.'),(0,n.kt)("li",{parentName:"ol"},"sequentially process the list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," as specified in the appropriate entry of the ",(0,n.kt)("a",{parentName:"li",href:"tev2-specifications/docs/spec-files/saf#versions"},(0,n.kt)("inlineCode",{parentName:"a"},"versions")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", i.e. instructions which allow for")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"#syntax-add"},"adding")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),"; these can either be ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," that have been created from ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),", or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," whose contents is obtained from an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," other than the one that is being created."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"#syntax-remove"},"removing")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),";"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"#syntax-rename"},"modifying attributes")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),", e.g. for renaming a term that originated from another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,n.kt)("p",null,"In this text, we will use the terms:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"current scope")," for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is being created and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"current version")," for the ",(0,n.kt)("a",{parentName:"li",href:"@"},"version")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is being created.")),(0,n.kt)("p",null,"In the syntax specification for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria"),", we use the following symbols:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Symbol"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a text that corresponds with a field name in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," or the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," (front-matter) of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", e.g., ",(0,n.kt)("inlineCode",{parentName:"td"},"term"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"grouptags"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"status"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a text that is used to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," or a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"an (",(0,n.kt)("strong",{parentName:"td"},"optional"),") text of the form ",(0,n.kt)("inlineCode",{parentName:"td"},"@"),", that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the source from where ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," are to be selected.",(0,n.kt)("br",null)," If omitted, the source is the set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," that are maintained within the current scope. .",(0,n.kt)("br",null),"If specified, the source is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," identified by ",(0,n.kt)("inlineCode",{parentName:"td"},"")," (where ",(0,n.kt)("inlineCode",{parentName:"td"},"")," is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/13-terminology-identifier-syntax",hovertext:"a [text](identifier@), of the form @`:`, that [identifies](@) a [terminology](@) from within a particular [scope](@). If `` or `:` is omitted, their values are taken be the current (or default) ones."},"terminology-identifier"),"). Note that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is expected to have been ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"made available")," within the current scope.")))),(0,n.kt)("h2",{id:"syntax-add"},"Adding Terms"),(0,n.kt)("p",null,"Adding terms is done using instructions that identify one or more ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," that are not in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology-under-construction"),"."),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"")," parameter, if it is provided, specifies the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," within which ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," are to be searched. If the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," parameter is not provided, the set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," in the current scope are used for searching. Both ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"headers")," of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," contain fields that are examined to determine whether or not the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," are to be used for inclusing in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology-under-construction"),"."),(0,n.kt)("h3",{id:"-source"},(0,n.kt)("inlineCode",{parentName:"h3"},"* ")),(0,n.kt)("p",null,"Add all terms from the source specified by ",(0,n.kt)("inlineCode",{parentName:"p"},""),". If ",(0,n.kt)("inlineCode",{parentName:"p"},"")," is omitted, all terms are added that have a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," in the current ","[scope]","."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Examples:"),(0,n.kt)("th",{parentName:"tr",align:"left"},"The syntax is an instruction to add all terms:"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"*"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that have a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," in the current scope.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"* @"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that are in the default version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the current scope.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"* @tev2"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that are in the default version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," identified by ",(0,n.kt)("inlineCode",{parentName:"td"},"tev2"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"*","\xa0","@tev2:latest"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that are in the latest version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," identified by ",(0,n.kt)("inlineCode",{parentName:"td"},"tev2"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"* @:latest"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that are in the latest version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the current scope.")))),(0,n.kt)("p",null,"The difference between ",(0,n.kt)("inlineCode",{parentName:"p"},"*")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"* @")," is that the first takes ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," as source, whereas the latter takes an existing ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," as source, being the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that contains the default version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the current scope. This allows ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," to be defined in terms of their predecessors.")),(0,n.kt)("h3",{id:"key--value1-value2---source"},(0,n.kt)("inlineCode",{parentName:"h3"}," [ , , ... ] ")),(0,n.kt)("p",null,"Add every term from the designated ",(0,n.kt)("inlineCode",{parentName:"p"},""),", whose specification contains a field named ",(0,n.kt)("inlineCode",{parentName:"p"},""),", and (one of) the value(s) of that field matches with at least one of the values in ",(0,n.kt)("inlineCode",{parentName:"p"},"[ , , ... ]"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Syntax:"),(0,n.kt)("th",{parentName:"tr",align:"left"},"The syntax is an instruction to add all terms:"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"term ","[actor]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the current scope, that have a ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"actor"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"term ","[actor,party]","@tev2"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the latest ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," ",(0,n.kt)("inlineCode",{parentName:"td"},"tev2"),", that have a ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"actor")," or ",(0,n.kt)("inlineCode",{parentName:"td"},"party"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"status","[proposed,approved]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the current scope, that have a ",(0,n.kt)("inlineCode",{parentName:"td"},"status")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"proposed")," or ",(0,n.kt)("inlineCode",{parentName:"td"},"approved"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"grouptags","[x,y,z]","@essif-lab"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the latest ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," ",(0,n.kt)("inlineCode",{parentName:"td"},"essif-lab"),", that have a ",(0,n.kt)("inlineCode",{parentName:"td"},"grouptags")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"x"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"y"),", or ",(0,n.kt)("inlineCode",{parentName:"td"},"z"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"somefield []"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the current scope, that have a field ",(0,n.kt)("inlineCode",{parentName:"td"},"somefield")," that has no value specified."))))),(0,n.kt)("h2",{id:"syntax-remove"},"Removing Terms"),(0,n.kt)("p",null,"Removing terms is equivalent to removing selected ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),". The syntax is similar to one that is used for adding terms, but it is preceeded with a ",(0,n.kt)("inlineCode",{parentName:"p"},"-"),"sign, and a source may not be specified, as it is always the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),"."),(0,n.kt)("h3",{id:"-key--value1-value2--"},(0,n.kt)("inlineCode",{parentName:"h3"},"- [ , , ... ]")),(0,n.kt)("p",null,"Remove all terms from ","[terminology-under-construction]",", whose ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," contains a field named ",(0,n.kt)("inlineCode",{parentName:"p"},""),", and (one of) the value(s) of that field matches with at least one of the values in ",(0,n.kt)("inlineCode",{parentName:"p"},"[ , , ... ]"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Syntax:"),(0,n.kt)("th",{parentName:"tr",align:"left"},"The syntax is an instruction to remove all terms from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction")," that have:"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"-term ","[actor]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"actor"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"-status","[proposed,approved]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},"status")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"proposed")," or ",(0,n.kt)("inlineCode",{parentName:"td"},"approved"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"-grouptags","[x,y,z]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},"grouptags")," field of which one of the listed ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags")," is ",(0,n.kt)("inlineCode",{parentName:"td"},"x"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"y"),", or ",(0,n.kt)("inlineCode",{parentName:"td"},"z"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"-somefield []"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},"somefield")," field that has no value specified."))))),(0,n.kt)("h2",{id:"syntax-rename"},"Rename/rewrite Term Attributes"),(0,n.kt)("img",{alt:"From this point onward, texts are under construction",src:(0,r.Z)("images/wip/wip-under-construction-from-here-onward.png")}),(0,n.kt)("br",null),(0,n.kt)("br",null),(0,n.kt)("p",null,"In analogy with ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Namespace"},"namespaces"),", we accommodate for the renaming of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," as they are 'imported' from ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," other than the one that we are constructing. However, the analogy breaks down in the sense that it is not only a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that should be renameable (which is sufficient for ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Namespace"},"namespaces"),"), but also certain attributes may need to be changed."),(0,n.kt)("h3",{id:"rename-term--fieldmodifierlist-"},(0,n.kt)("inlineCode",{parentName:"h3"},"rename [ ]"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Syntax examples"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,n.kt)("th",{parentName:"tr",align:"left"},"What it does when it is processed"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"rename party partij")),(0,n.kt)("td",{parentName:"tr",align:"left"},"renames the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is currently associated with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,n.kt)("inlineCode",{parentName:"td"},"party")," into ",(0,n.kt)("inlineCode",{parentName:"td"},"partij"),"."))))),(0,n.kt)("p",null,"where:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"symbol"),(0,n.kt)("th",{parentName:"tr",align:"left"},"description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," of the tuple that will be selected for renaming.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a (non-empty) comma-separated list of ",(0,n.kt)("inlineCode",{parentName:"td"},""),"s.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},":")," pair.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a text that identifies a field in an ","[MRG entry]",", the value of which is to be changed, e.g. ",(0,n.kt)("inlineCode",{parentName:"td"},"formphrases"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"grouptags"),", etc.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a text that will replace the existing text of the field identified by ",(0,n.kt)("inlineCode",{parentName:"td"},""),".")))),(0,n.kt)("p",null,"This syntax is processed by first selecting the tuple (in the tuple set that is being constructed) that has the specified ",(0,n.kt)("inlineCode",{parentName:"p"},"")," as its ",(0,n.kt)("inlineCode",{parentName:"p"},"term"),"-field, and then sequentially processing the ",(0,n.kt)("inlineCode",{parentName:"p"},""),"s in the ",(0,n.kt)("inlineCode",{parentName:"p"},""),", which means that the existing text of the field that is identified by the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," element of the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," is replaced by the text specified by the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," element of that ",(0,n.kt)("inlineCode",{parentName:"p"},""),"."),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The ability to rename terms as they are imported may introduce some issues related to other field-names, such as ",(0,n.kt)("inlineCode",{parentName:"p"},"term"),", ",(0,n.kt)("inlineCode",{parentName:"p"},"formphrases"),", ",(0,n.kt)("inlineCode",{parentName:"p"},"synonyms"),", ",(0,n.kt)("inlineCode",{parentName:"p"},"glossaryText"),"s and possibly some others. Perhaps this syntax should therefore be extended, enabling ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," to simultaneously change these (and other) fields in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),".")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/68543202.5606828d.js b/assets/js/68543202.5606828d.js deleted file mode 100644 index 70aa97c822..0000000000 --- a/assets/js/68543202.5606828d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[2938],{3905:function(t,e,i){i.d(e,{Zo:function(){return m},kt:function(){return p}});var a=i(7294);function o(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function n(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function r(t){for(var e=1;e=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),l=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):r(r({},e),t)),i},m=function(t){var e=l(t.components);return a.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},d=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,m=s(t,["components","mdxType","originalType","parentName"]),d=l(i),p=o,u=d["".concat(c,".").concat(p)]||d[p]||h[p]||n;return i?a.createElement(u,r(r({ref:e},m),{},{components:i})):a.createElement(u,r({ref:e},m))}));function p(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,r=new Array(n);r[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:o,r[1]=s;for(var l=2;l child <"+("string"==typeof t.type?t.type:t.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?e:[]}(t).map((function(t){var e=t.props;return{value:e.value,label:e.label,attributes:e.attributes,default:e.default}}))}function d(t){var e=t.values,i=t.children;return(0,o.useMemo)((function(){var t=null!=e?e:h(i);return function(t){var e=(0,l.l)(t,(function(t,e){return t.value===e.value}));if(e.length>0)throw new Error('Docusaurus error: Duplicate values "'+e.map((function(t){return t.value})).join(", ")+'" found in . Every value needs to be unique.')}(t),t}),[e,i])}function p(t){var e=t.value;return t.tabValues.some((function(t){return t.value===e}))}function u(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId,n=(0,s.k6)(),r=function(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,c._X)(r),(0,o.useCallback)((function(t){if(r){var e=new URLSearchParams(n.location.search);e.set(r,t),n.replace(Object.assign({},n.location,{search:e.toString()}))}}),[r,n])]}function f(t){var e,i,a,n,r=t.defaultValue,s=t.queryString,c=void 0!==s&&s,l=t.groupId,h=d(t),f=(0,o.useState)((function(){return function(t){var e,i=t.defaultValue,a=t.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!p({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(t){return t.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var o=null!=(e=a.find((function(t){return t.default})))?e:a[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:r,tabValues:h})})),g=f[0],y=f[1],v=u({queryString:c,groupId:l}),b=v[0],k=v[1],w=(e=function(t){return t?"docusaurus.tab."+t:null}({groupId:l}.groupId),i=(0,m.Nk)(e),a=i[0],n=i[1],[a,(0,o.useCallback)((function(t){e&&n.set(t)}),[e,n])]),T=w[0],x=w[1],C=function(){var t=null!=b?b:T;return p({value:t,tabValues:h})?t:null}();return(0,o.useLayoutEffect)((function(){C&&y(C)}),[C]),{selectedValue:g,selectValue:(0,o.useCallback)((function(t){if(!p({value:t,tabValues:h}))throw new Error("Can't select invalid tab value="+t);y(t),k(t),x(t)}),[k,x,h]),tabValues:h}}var g=i(2389),y="tabList__CuJ",v="tabItem_LNqP";function b(t){var e=t.className,i=t.block,s=t.selectedValue,c=t.selectValue,l=t.tabValues,m=[],h=(0,r.o5)().blockElementScrollPositionUntilNextRender,d=function(t){var e=t.currentTarget,i=m.indexOf(e),a=l[i].value;a!==s&&(h(e),c(a))},p=function(t){var e,i=null;switch(t.key){case"Enter":d(t);break;case"ArrowRight":var a,o=m.indexOf(t.currentTarget)+1;i=null!=(a=m[o])?a:m[0];break;case"ArrowLeft":var n,r=m.indexOf(t.currentTarget)-1;i=null!=(n=m[r])?n:m[m.length-1]}null==(e=i)||e.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},e)},l.map((function(t){var e=t.value,i=t.label,r=t.attributes;return o.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===e?0:-1,"aria-selected":s===e,key:e,ref:function(t){return m.push(t)},onKeyDown:p,onClick:d},r,{className:(0,n.Z)("tabs__item",v,null==r?void 0:r.className,{"tabs__item--active":s===e})}),null!=i?i:e)})))}function k(t){var e=t.lazy,i=t.children,a=t.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(e){var r=n.find((function(t){return t.props.value===a}));return r?(0,o.cloneElement)(r,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(t,e){return(0,o.cloneElement)(t,{key:e,hidden:t.props.value!==a})})))}function w(t){var e=f(t);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(b,(0,a.Z)({},t,e)),o.createElement(k,(0,a.Z)({},t,e)))}function T(t){var e=(0,g.Z)();return o.createElement(w,(0,a.Z)({key:String(e)},t))}},6273:function(t,e,i){i.r(e),i.d(e,{assets:function(){return h},contentTitle:function(){return l},default:function(){return u},frontMatter:function(){return c},metadata:function(){return m},toc:function(){return d}});var a=i(7462),o=i(3366),n=(i(7294),i(3905)),r=i(4996),s=(i(4866),i(5162),["components"]),c={id:"terminology-construction",date:20231002},l="Terminology Construction",m={unversionedId:"spec-tools/terminology-construction",id:"spec-tools/terminology-construction",title:"Terminology Construction",description:"Curators need the ability to construct (different versions of) the terminology for any scope they curate. This page documents",source:"@site/docs/spec-tools/20-terminology-construction.md",sourceDirName:"spec-tools",slug:"/spec-tools/terminology-construction",permalink:"/tev2-specifications/docs/spec-tools/terminology-construction",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/20-terminology-construction.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:20,frontMatter:{id:"terminology-construction",date:20231002},sidebar:"tev2SideBar",previous:{title:"HRG Selection Criteria",permalink:"/tev2-specifications/docs/spec-syntax/hrg-termselcrit"},next:{title:"TEv2 Terminology Toolbox",permalink:"/tev2-specifications/docs/tev2-toolbox"}},h={},d=[{value:"Specifying the contents of a terminology",id:"specifying-terminology",level:2},{value:"Process for creating a terminology",id:"process-for-creating-a-terminology",level:2},{value:"Prerequisites",id:"prerequisites",level:2},{value:"Adding Terms",id:"syntax-add",level:2},{value:"* <source>",id:"-source",level:3},{value:"<key> [ <value1>, <value2>, ... ] <source>",id:"key--value1-value2---source",level:3},{value:"Removing Terms",id:"syntax-remove",level:2},{value:"-<key> [ <value1>, <value2>, ... ]",id:"-key--value1-value2--",level:3},{value:"Rename/rewrite Term Attributes",id:"syntax-rename",level:2},{value:"rename <term> [ <fieldmodifierlist> ].",id:"rename-term--fieldmodifierlist-",level:2}],p={toc:d};function u(t){var e=t.components,i=(0,o.Z)(t,s);return(0,n.kt)("wrapper",(0,a.Z)({},p,i,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"terminology-construction"},"Terminology Construction"),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"Curators")," need the ability to construct (different versions of) the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," for any ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," they ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curate"),". This page documents 1. the way in which a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curator")," can specify this for a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that (s)he ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curates"),", and 2. how that specification is used to create the associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),".",(0,n.kt)("p",null,"The actual creation of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),", and the subsequent generation of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that contains it, is done by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT"),"."),(0,n.kt)("h2",{id:"specifying-terminology"},"Specifying the contents of a terminology"),(0,n.kt)("p",null,"A ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curator")," specifies a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," by creating a new entry in the ",(0,n.kt)("a",{parentName:"p",href:"tev2-specifications/docs/spec-files/saf#versions"},(0,n.kt)("inlineCode",{parentName:"a"},"versions")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is to reside). This entry will contain "),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"one or more ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," that allow the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," to be ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," (within its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"), "),(0,n.kt)("li",{parentName:"ul"},"the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," that specify the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are to be included (or removed) from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology as it is being constructed"),", and"),(0,n.kt)("li",{parentName:"ul"},"some meta-data (see the ",(0,n.kt)("a",{parentName:"li",href:"tev2-specifications/docs/spec-files/saf#versions"},"documentation"),".")),(0,n.kt)("h2",{id:"process-for-creating-a-terminology"},"Process for creating a terminology"),(0,n.kt)("p",null,"The creation of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is equivalent with the creation of the set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that document each of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," therein. Thus, the process for creating a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," can be described as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"start with an empty set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),' - we use the term "',(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),'" to refer to this set.'),(0,n.kt)("li",{parentName:"ol"},"sequentially process the list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria")," as specified in the appropriate entry of the ",(0,n.kt)("a",{parentName:"li",href:"tev2-specifications/docs/spec-files/saf#versions"},(0,n.kt)("inlineCode",{parentName:"a"},"versions")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", i.e. instructions which allow for")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"#syntax-add"},"adding")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),"; these can either be ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," that have been created from ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),", or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," whose contents is obtained from an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," other than the one that is being created."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"#syntax-remove"},"removing")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),";"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"#syntax-rename"},"modifying attributes")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),", e.g. for renaming a term that originated from another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,n.kt)("p",null,"In this text, we will use the terms:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"current scope")," for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is being created and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},"current version")," for the ",(0,n.kt)("a",{parentName:"li",href:"@"},"version")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is being created.")),(0,n.kt)("p",null,"In the syntax specification for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-selection-criteria",hovertext:"Term Selection Criteria: criteria that are used within a particular Scope for the selection of Terms that are part of a particular Terminology."},"term selection criteria"),", we use the following symbols:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Symbol"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a text that corresponds with a field name in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," or the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," (front-matter) of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", e.g., ",(0,n.kt)("inlineCode",{parentName:"td"},"term"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"grouptags"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"status"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a text that is used to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," or a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"an (",(0,n.kt)("strong",{parentName:"td"},"optional"),") text of the form ",(0,n.kt)("inlineCode",{parentName:"td"},"@"),", that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the source from where ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," are to be selected.",(0,n.kt)("br",null)," If omitted, the source is the set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," that are maintained within the current scope. .",(0,n.kt)("br",null),"If specified, the source is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," identified by ",(0,n.kt)("inlineCode",{parentName:"td"},"")," (where ",(0,n.kt)("inlineCode",{parentName:"td"},"")," is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/13-terminology-identifier-syntax",hovertext:"a [text](identifier@), of the form @`:`, that [identifies](@) a [terminology](@) from within a particular [scope](@). If `` or `:` is omitted, their values are taken be the current (or default) ones."},"terminology-identifier"),"). Note that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is expected to have been ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-importer",hovertext:"MRG Importer: is a tool in the TEv2 toolbox that is run within a particular Scope for the purpose of obtaining MRGs from other Scopes, as specified in the Scope's SAF, and putting them in the Scope's Glossarydir."},"made available")," within the current scope.")))),(0,n.kt)("h2",{id:"syntax-add"},"Adding Terms"),(0,n.kt)("p",null,"Adding terms is done using instructions that identify one or more ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," that are not in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology-under-construction"),"."),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"")," parameter, if it is provided, specifies the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," within which ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," are to be searched. If the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," parameter is not provided, the set of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," in the current scope are used for searching. Both ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"headers")," of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," contain fields that are examined to determine whether or not the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," are to be used for inclusing in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology-under-construction"),"."),(0,n.kt)("h3",{id:"-source"},(0,n.kt)("inlineCode",{parentName:"h3"},"* ")),(0,n.kt)("p",null,"Add all terms from the source specified by ",(0,n.kt)("inlineCode",{parentName:"p"},""),". If ",(0,n.kt)("inlineCode",{parentName:"p"},"")," is omitted, all terms are added that have a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," in the current ","[scope]","."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Examples:"),(0,n.kt)("th",{parentName:"tr",align:"left"},"The syntax is an instruction to add all terms:"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"*"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that have a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," in the current scope.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"* @"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that are in the default version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the current scope.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"* @tev2"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that are in the default version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," identified by ",(0,n.kt)("inlineCode",{parentName:"td"},"tev2"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"*","\xa0","@tev2:latest"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that are in the latest version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," identified by ",(0,n.kt)("inlineCode",{parentName:"td"},"tev2"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"* @:latest"),(0,n.kt)("td",{parentName:"tr",align:"left"},"that are in the latest version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the current scope.")))),(0,n.kt)("p",null,"The difference between ",(0,n.kt)("inlineCode",{parentName:"p"},"*")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"* @")," is that the first takes ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," as source, whereas the latter takes an existing ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," as source, being the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that contains the default version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the current scope. This allows ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," to be defined in terms of their predecessors.")),(0,n.kt)("h3",{id:"key--value1-value2---source"},(0,n.kt)("inlineCode",{parentName:"h3"}," [ , , ... ] ")),(0,n.kt)("p",null,"Add every term from the designated ",(0,n.kt)("inlineCode",{parentName:"p"},""),", whose specification contains a field named ",(0,n.kt)("inlineCode",{parentName:"p"},""),", and (one of) the value(s) of that field matches with at least one of the values in ",(0,n.kt)("inlineCode",{parentName:"p"},"[ , , ... ]"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Syntax:"),(0,n.kt)("th",{parentName:"tr",align:"left"},"The syntax is an instruction to add all terms:"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"term ","[actor]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the current scope, that have a ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"actor"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"term ","[actor,party]","@tev2"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the latest ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," ",(0,n.kt)("inlineCode",{parentName:"td"},"tev2"),", that have a ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"actor")," or ",(0,n.kt)("inlineCode",{parentName:"td"},"party"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"status","[proposed,approved]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the current scope, that have a ",(0,n.kt)("inlineCode",{parentName:"td"},"status")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"proposed")," or ",(0,n.kt)("inlineCode",{parentName:"td"},"approved"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"grouptags","[x,y,z]","@essif-lab"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the latest ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," ",(0,n.kt)("inlineCode",{parentName:"td"},"essif-lab"),", that have a ",(0,n.kt)("inlineCode",{parentName:"td"},"grouptags")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"x"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"y"),", or ",(0,n.kt)("inlineCode",{parentName:"td"},"z"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"somefield []"),(0,n.kt)("td",{parentName:"tr",align:"left"},"from the current scope, that have a field ",(0,n.kt)("inlineCode",{parentName:"td"},"somefield")," that has no value specified."))))),(0,n.kt)("h2",{id:"syntax-remove"},"Removing Terms"),(0,n.kt)("p",null,"Removing terms is equivalent to removing selected ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),". The syntax is similar to one that is used for adding terms, but it is preceeded with a ",(0,n.kt)("inlineCode",{parentName:"p"},"-"),"sign, and a source may not be specified, as it is always the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction"),"."),(0,n.kt)("h3",{id:"-key--value1-value2--"},(0,n.kt)("inlineCode",{parentName:"h3"},"- [ , , ... ]")),(0,n.kt)("p",null,"Remove all terms from ","[terminology-under-construction]",", whose ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," contains a field named ",(0,n.kt)("inlineCode",{parentName:"p"},""),", and (one of) the value(s) of that field matches with at least one of the values in ",(0,n.kt)("inlineCode",{parentName:"p"},"[ , , ... ]"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Syntax:"),(0,n.kt)("th",{parentName:"tr",align:"left"},"The syntax is an instruction to remove all terms from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction")," that have:"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"-term ","[actor]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"actor"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"-status","[proposed,approved]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},"status")," field whose value is ",(0,n.kt)("inlineCode",{parentName:"td"},"proposed")," or ",(0,n.kt)("inlineCode",{parentName:"td"},"approved"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"-grouptags","[x,y,z]"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},"grouptags")," field of which one of the listed ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags")," is ",(0,n.kt)("inlineCode",{parentName:"td"},"x"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"y"),", or ",(0,n.kt)("inlineCode",{parentName:"td"},"z"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},"-somefield []"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},"somefield")," field that has no value specified."))))),(0,n.kt)("h2",{id:"syntax-rename"},"Rename/rewrite Term Attributes"),(0,n.kt)("img",{alt:"From this point onward, texts are under construction",src:(0,r.Z)("images/wip/wip-under-construction-from-here-onward.png")}),(0,n.kt)("br",null),(0,n.kt)("br",null),(0,n.kt)("p",null,"In analogy with ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Namespace"},"namespaces"),", we accommodate for the renaming of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," as they are 'imported' from ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminologies")," other than the one that we are constructing. However, the analogy breaks down in the sense that it is not only a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that should be renameable (which is sufficient for ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Namespace"},"namespaces"),"), but also certain attributes may need to be changed."),(0,n.kt)("h2",{id:"rename-term--fieldmodifierlist-"},(0,n.kt)("inlineCode",{parentName:"h2"},"rename [ ]"),"."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Syntax examples"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,n.kt)("th",{parentName:"tr",align:"left"},"What it does when it is processed"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"rename party partij")),(0,n.kt)("td",{parentName:"tr",align:"left"},"renames the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is currently associated with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,n.kt)("inlineCode",{parentName:"td"},"party")," into ",(0,n.kt)("inlineCode",{parentName:"td"},"partij"),"."))))),(0,n.kt)("p",null,"where:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"symbol"),(0,n.kt)("th",{parentName:"tr",align:"left"},"description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," of the tuple that will be selected for renaming.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a (non-empty) comma-separated list of ",(0,n.kt)("inlineCode",{parentName:"td"},""),"s.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a ",(0,n.kt)("inlineCode",{parentName:"td"},":")," pair.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a text that identifies a field in an ","[MRG entry]",", the value of which is to be changed, e.g. ",(0,n.kt)("inlineCode",{parentName:"td"},"formphrases"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"grouptags"),", etc.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a text that will replace the existing text of the field identified by ",(0,n.kt)("inlineCode",{parentName:"td"},""),".")))),(0,n.kt)("p",null,"This syntax is processed by first selecting the tuple (in the tuple set that is being constructed) that has the specified ",(0,n.kt)("inlineCode",{parentName:"p"},"")," as its ",(0,n.kt)("inlineCode",{parentName:"p"},"term"),"-field, and then sequentially processing the ",(0,n.kt)("inlineCode",{parentName:"p"},""),"s in the ",(0,n.kt)("inlineCode",{parentName:"p"},""),", which means that the existing text of the field that is identified by the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," element of the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," is replaced by the text specified by the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," element of that ",(0,n.kt)("inlineCode",{parentName:"p"},""),"."),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The ability to rename terms as they are imported may introduce some issues related to other field-names, such as ",(0,n.kt)("inlineCode",{parentName:"p"},"term"),", ",(0,n.kt)("inlineCode",{parentName:"p"},"formphrases"),", ",(0,n.kt)("inlineCode",{parentName:"p"},"synonyms"),", ",(0,n.kt)("inlineCode",{parentName:"p"},"glossaryText"),"s and possibly some others. Perhaps this syntax should therefore be extended, enabling ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," to simultaneously change these (and other) fields in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),".")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6b1e0334.14c08e05.js b/assets/js/6b1e0334.d0742110.js similarity index 99% rename from assets/js/6b1e0334.14c08e05.js rename to assets/js/6b1e0334.d0742110.js index 52e8aaa629..2afc57b12f 100644 --- a/assets/js/6b1e0334.14c08e05.js +++ b/assets/js/6b1e0334.d0742110.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[1521],{3905:function(e,t,o){o.d(t,{Zo:function(){return h},kt:function(){return p}});var i=o(7294);function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function s(e){for(var t=1;t=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),d=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},h=function(e){var t=d(e.components);return i.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),m=d(o),p=n,u=m["".concat(c,".").concat(p)]||m[p]||l[p]||a;return o?i.createElement(u,s(s({ref:t},h),{},{components:o})):i.createElement(u,s({ref:t},h))}));function p(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,s=new Array(a);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,s[1]=r;for(var d=2;d=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),d=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},h=function(e){var t=d(e.components);return i.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),m=d(o),p=n,u=m["".concat(c,".").concat(p)]||m[p]||l[p]||a;return o?i.createElement(u,s(s({ref:t},h),{},{components:o})):i.createElement(u,s({ref:t},h))}));function p(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,s=new Array(a);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,s[1]=r;for(var d=2;d=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var c=o.createContext({}),p=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},h=function(e){var t=p(e.components);return o.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},l=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),l=p(i),d=n,m=l["".concat(c,".").concat(d)]||l[d]||f[d]||s;return i?o.createElement(m,a(a({ref:t},h),{},{components:i})):o.createElement(m,a({ref:t},h))}));function d(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=i.length,a=new Array(s);a[0]=l;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,a[1]=r;for(var p=2;p=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var c=o.createContext({}),p=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},h=function(e){var t=p(e.components);return o.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},l=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),l=p(i),d=n,m=l["".concat(c,".").concat(d)]||l[d]||f[d]||s;return i?o.createElement(m,a(a({ref:t},h),{},{components:i})):o.createElement(m,a({ref:t},h))}));function d(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=i.length,a=new Array(s);a[0]=l;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:n,a[1]=r;for(var p=2;p=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=n.createContext({}),h=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},d=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,d=a(e,["components","mdxType","originalType","parentName"]),p=h(r),f=i,l=p["".concat(c,".").concat(f)]||p[f]||m[f]||o;return r?n.createElement(l,s(s({ref:t},d),{},{components:r})):n.createElement(l,s({ref:t},d))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,s=new Array(o);s[0]=p;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:i,s[1]=a;for(var h=2;h=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=n.createContext({}),h=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},d=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,d=a(e,["components","mdxType","originalType","parentName"]),p=h(r),f=i,l=p["".concat(c,".").concat(f)]||p[f]||m[f]||o;return r?n.createElement(l,s(s({ref:t},d),{},{components:r})):n.createElement(l,s({ref:t},d))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,s=new Array(o);s[0]=p;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:i,s[1]=a;for(var h=2;h=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),h=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):r(r({},e),t)),i},d=function(t){var e=h(t.components);return a.createElement(c.Provider,{value:e},t.children)},m={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},l=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),l=h(i),p=o,u=l["".concat(c,".").concat(p)]||l[p]||m[p]||n;return i?a.createElement(u,r(r({ref:e},d),{},{components:i})):a.createElement(u,r({ref:e},d))}));function p(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,r=new Array(n);r[0]=l;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:o,r[1]=s;for(var h=2;hconcept or other semantic unit of a specific [community](@) or other [party](@), and is located within a scope that is owned by that [community](@)/[party](@).\nsynonymOf:\ngrouptags:\nformPhrases: curated-text{ss}, ctext{ss}\n# TEv2 Curation status\nstatus: proposed\ncreated: 2022-06-02\nupdated: 2023-08-14\n# Origins/Acknowledgements\ncontributors: RieksJ\nattribution: "[eSSIF-Lab](https://essif-lab.github.io/framework)"\noriginalLicense: "[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"\n---\n\n# Curated Text\nA curated text starts with three dashes `---`.\nThis indicates the start of its (YAML) header.\nTypically, the header consists of a sequence of key-value pairs.\nThe header is terminated with onother three dashes and a new line.\n\nThe body of the curated text typically starts behind the header block,\nbut it can also be placed in another file within the `scopedir`.\nThe body is typically markdown, but other constructs may be inserted\nthat contribute to the rendering of these texts in a (static) website.\nAn example of this is [MDX](https://mdxjs.com/).\nA discussion on these other constructs is outside the scope of this document.\n')))),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"Headers")," of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," are used by ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")," tools, but may also contain entries that are used by other tools, such as static site generators. The example above shows some entries that are used by (the static site generator) Docusaurus. In order to avoid confusion about which entries serve what purposes, it is advised to mark them as separate sections, as shown in the example.",(0,n.kt)("h2",{id:"header-fields"},"Header Fields"),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")," requires a number of fields to exist, to ensure its correct functioning. However, for specific features of different tools, additional fields may be specified. Here is a list of the fields that are are available for genenic use across the tools:",(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:null},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"term")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Text")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and hence also the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that describes it, which includes its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition"),". Its value is typically the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"glossaryTerm")," field, where all characters are made lower-case, any text between parentheses is discarded, and any (sequences of) spaces (or other special characters) are replaced with a ",(0,n.kt)("inlineCode",{parentName:"td"},"-"),"character.",(0,n.kt)("br",null),"The ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-syntax/term-ref-syntax#term"},(0,n.kt)("inlineCode",{parentName:"a"},"term"),"-field")," of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," that refers to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," must match this value.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"termType")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-type",hovertext:"Term Type: a Text that Identifies a particular *kind* of Semantic Unit within a particular Scope. Examples include `concept`, `relation`, `pattern` (or `mental-model`)."},"Text")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the kind of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," describes. Typical values would be ",(0,n.kt)("inlineCode",{parentName:"td"},"concept"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"relation"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"pattern")," (or ",(0,n.kt)("inlineCode",{parentName:"td"},"mental-model"),"), ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," (or ",(0,n.kt)("inlineCode",{parentName:"td"},"alias"),"), or ",(0,n.kt)("inlineCode",{parentName:"td"},"usecase"),".",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"isa")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," of which this is a specialization.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"bodyFile")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Path, relative to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),", that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),". If not specified, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," in this file serves as the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"glossaryTerm")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that is used for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in a human readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". For example, for a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," called ",(0,n.kt)("inlineCode",{parentName:"td"},"member"),", you may want to specify a glossaryTerm ",(0,n.kt)("inlineCode",{parentName:"td"},"member (of a [community](@))"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"glossaryText")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that is used as the (raw) contents for the entry of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in a human readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". This text MUST be expected to contain ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"synonymOf")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the defined ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminological-artifact",hovertext:"Terminological Artifact: a basic building block of meaning or representation, i.e., a 'semantic unit' within the 'mind' of a Scope, such as a Concept, a Relation, or a Property."},"terminological artifact")," for which this is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/synonym",hovertext:"Synonym: a Term that has the same (or similar) meaning as another Term."},"synonym"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"grouptags")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"List of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags"),", each of which signifies that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," documents, is part of the group of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that it represents.",(0,n.kt)("br",null),"Example: ",(0,n.kt)("inlineCode",{parentName:"td"},"[tev2, management]"),".",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("a",{parentName:"td",href:"https://www.debuggex.com/r/a51CXl1NzR3kwihT"},(0,n.kt)("inlineCode",{parentName:"a"},"(?:\\[\\s*([a-z0-9_-]+)\\s*(?:,\\s*([a-z0-9_-]+))*\\s*\\])?")),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"formPhrases")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"List of ",(0,n.kt)("a",{parentName:"td",href:"formphrase@"},"texts")," that are ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-tools/trrt#id"},"used to convert")," the ",(0,n.kt)("inlineCode",{parentName:"td"},"show text")," parts of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," into ",(0,n.kt)("inlineCode",{parentName:"td"},"term"),"s, for the purpose of accommodating plural forms (for nouns) or conjugate forms (for verbs). For details, see ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-syntax/form-phrase-syntax"},"'Syntax Specs - Form Phrases"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"status")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that identifies the status of the term. (",(0,n.kt)("a",{parentName:"td",href:"@"},"Communities")," of) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," may specify values for this field. An example is the ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/trustoverip/concepts-and-terminology-wg/blob/master/docs/status-tags.md"},"status tags used by ToIP"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"created")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Date at which of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," was created, in the date format as used within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"updated")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Date at which of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," was last modified, in the date format as used within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"contributors")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that shows (or refers to) the people that have contributed to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"attribution")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that credits the original creation of the texts in the document.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"originalLicense")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Reference to the license of the work from which the texts were derived.")))),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"Do we need to provide more guidance, e.g., regarding the front matter fields that may be used by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," for converting ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),", e.g. with popovers (for which it is known that the ",(0,n.kt)("inlineCode",{parentName:"p"},"hoverText")," field is used)?")),(0,n.kt)("div",{className:"footnotes"},(0,n.kt)("hr",{parentName:"div"}),(0,n.kt)("ol",{parentName:"div"},(0,n.kt)("li",{parentName:"ol",id:"fn-1"},"There are exceptions. In some contexts, documentation files may already exist that would properly describe a particular term. For ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2"),", the documentation of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is an example: it specifies everything you might want to know about machine readable glossary files. If we could use that file to provide the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),", that would be very convenient. Since ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," consist of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," and a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body"),", instead of stuffing them both in a single ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", we have the possibility to have only the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", and leave the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," in the existing document.",(0,n.kt)("a",{parentName:"li",href:"#fnref-1",className:"footnote-backref"},"\u21a9")))))}p.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[2468],{3905:function(t,e,i){i.d(e,{Zo:function(){return d},kt:function(){return p}});var a=i(7294);function o(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function n(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function r(t){for(var e=1;e=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),h=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):r(r({},e),t)),i},d=function(t){var e=h(t.components);return a.createElement(c.Provider,{value:e},t.children)},m={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},l=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),l=h(i),p=o,u=l["".concat(c,".").concat(p)]||l[p]||m[p]||n;return i?a.createElement(u,r(r({ref:e},d),{},{components:i})):a.createElement(u,r({ref:e},d))}));function p(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,r=new Array(n);r[0]=l;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:o,r[1]=s;for(var h=2;hconcept or other semantic unit of a specific [community](@) or other [party](@), and is located within a scope that is owned by that [community](@)/[party](@).\nsynonymOf:\ngrouptags:\nformPhrases: curated-text{ss}, ctext{ss}\n# TEv2 Curation status\nstatus: proposed\ncreated: 2022-06-02\nupdated: 2023-08-14\n# Origins/Acknowledgements\ncontributors: RieksJ\nattribution: "[eSSIF-Lab](https://essif-lab.github.io/framework)"\noriginalLicense: "[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"\n---\n\n# Curated Text\nA curated text starts with three dashes `---`.\nThis indicates the start of its (YAML) header.\nTypically, the header consists of a sequence of key-value pairs.\nThe header is terminated with onother three dashes and a new line.\n\nThe body of the curated text typically starts behind the header block,\nbut it can also be placed in another file within the `scopedir`.\nThe body is typically markdown, but other constructs may be inserted\nthat contribute to the rendering of these texts in a (static) website.\nAn example of this is [MDX](https://mdxjs.com/).\nA discussion on these other constructs is outside the scope of this document.\n')))),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"Headers")," of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," are used by ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")," tools, but may also contain entries that are used by other tools, such as static site generators. The example above shows some entries that are used by (the static site generator) Docusaurus. In order to avoid confusion about which entries serve what purposes, it is advised to mark them as separate sections, as shown in the example.",(0,n.kt)("h2",{id:"header-fields"},"Header Fields"),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")," requires a number of fields to exist, to ensure its correct functioning. However, for specific features of different tools, additional fields may be specified. Here is a list of the fields that are are available for genenic use across the tools:",(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:null},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"term")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Text")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and hence also the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that describes it, which includes its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition"),". Its value is typically the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"glossaryTerm")," field, where all characters are made lower-case, any text between parentheses is discarded, and any (sequences of) spaces (or other special characters) are replaced with a ",(0,n.kt)("inlineCode",{parentName:"td"},"-"),"character.",(0,n.kt)("br",null),"The ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-syntax/term-ref-syntax#term"},(0,n.kt)("inlineCode",{parentName:"a"},"term"),"-field")," of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," that refers to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," must match this value.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"termType")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-type",hovertext:"Term Type: a Text that Identifies a particular *kind* of Semantic Unit within a particular Scope. Examples include `concept`, `relation`, `pattern` (or `mental-model`)."},"Text")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the kind of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," describes. Typical values would be ",(0,n.kt)("inlineCode",{parentName:"td"},"concept"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"relation"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"pattern")," (or ",(0,n.kt)("inlineCode",{parentName:"td"},"mental-model"),"), ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," (or ",(0,n.kt)("inlineCode",{parentName:"td"},"alias"),"), or ",(0,n.kt)("inlineCode",{parentName:"td"},"usecase"),".",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"isa")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," of which this is a specialization.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"bodyFile")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Path, relative to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),", that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),". If not specified, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," in this file serves as the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"glossaryTerm")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that is used for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in a human readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". For example, for a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," called ",(0,n.kt)("inlineCode",{parentName:"td"},"member"),", you may want to specify a glossaryTerm ",(0,n.kt)("inlineCode",{parentName:"td"},"member (of a [community](@))"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"glossaryText")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that is used as the (raw) contents for the entry of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in a human readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". This text MUST be expected to contain ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"synonymOf")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the defined ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminological-artifact",hovertext:"Terminological Artifact: a basic building block of meaning or representation, i.e., a 'semantic unit' within the 'mind' of a Scope, such as a Concept, a Relation, or a Property."},"terminological artifact")," for which this is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/synonym",hovertext:"Synonym: a Term that has the same (or similar) meaning as another Term."},"synonym"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"grouptags")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"List of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags"),", each of which signifies that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," documents, is part of the group of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that it represents.",(0,n.kt)("br",null),"Example: ",(0,n.kt)("inlineCode",{parentName:"td"},"[tev2, management]"),".",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("a",{parentName:"td",href:"https://www.debuggex.com/r/a51CXl1NzR3kwihT"},(0,n.kt)("inlineCode",{parentName:"a"},"(?:\\[\\s*([a-z0-9_-]+)\\s*(?:,\\s*([a-z0-9_-]+))*\\s*\\])?")),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"formPhrases")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"List of ",(0,n.kt)("a",{parentName:"td",href:"formphrase@"},"texts")," that are ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-tools/trrt#id"},"used to convert")," the ",(0,n.kt)("inlineCode",{parentName:"td"},"show text")," parts of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," into ",(0,n.kt)("inlineCode",{parentName:"td"},"term"),"s, for the purpose of accommodating plural forms (for nouns) or conjugate forms (for verbs). For details, see ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-syntax/form-phrase-syntax"},"'Syntax Specs - Form Phrases"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"status")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that identifies the status of the term. (",(0,n.kt)("a",{parentName:"td",href:"@"},"Communities")," of) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," may specify values for this field. An example is the ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/trustoverip/concepts-and-terminology-wg/blob/master/docs/status-tags.md"},"status tags used by ToIP"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"created")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Date at which of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," was created, in the date format as used within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"updated")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Date at which of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," was last modified, in the date format as used within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"contributors")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that shows (or refers to) the people that have contributed to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"attribution")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Text that credits the original creation of the texts in the document.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"originalLicense")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:null},"Reference to the license of the work from which the texts were derived.")))),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"Do we need to provide more guidance, e.g., regarding the front matter fields that may be used by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," for converting ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),", e.g. with popovers (for which it is known that the ",(0,n.kt)("inlineCode",{parentName:"p"},"hoverText")," field is used)?")),(0,n.kt)("div",{className:"footnotes"},(0,n.kt)("hr",{parentName:"div"}),(0,n.kt)("ol",{parentName:"div"},(0,n.kt)("li",{parentName:"ol",id:"fn-1"},"There are exceptions. In some contexts, documentation files may already exist that would properly describe a particular term. For ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2"),", the documentation of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is an example: it specifies everything you might want to know about machine readable glossary files. If we could use that file to provide the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),", that would be very convenient. Since ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," consist of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," and a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body"),", instead of stuffing them both in a single ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", we have the possibility to have only the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/header",hovertext:"Header (of a Curated Text): the part at the beginning of that curated text, that starts with a line that (only) contains three subsequent '-'characters, and that ends with a second occurrance of such a line."},"header")," in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file"),", and leave the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," in the existing document.",(0,n.kt)("a",{parentName:"li",href:"#fnref-1",className:"footnote-backref"},"\u21a9")))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/7567abf2.ee8721ef.js b/assets/js/7567abf2.e3f49b62.js similarity index 99% rename from assets/js/7567abf2.ee8721ef.js rename to assets/js/7567abf2.e3f49b62.js index 50bbbbbff6..fa6086018f 100644 --- a/assets/js/7567abf2.ee8721ef.js +++ b/assets/js/7567abf2.e3f49b62.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[8948],{3905:function(t,e,i){i.d(e,{Zo:function(){return m},kt:function(){return p}});var a=i(7294);function o(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function n(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function s(t){for(var e=1;e=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),h=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):s(s({},e),t)),i},m=function(t){var e=h(t.components);return a.createElement(c.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},l=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,m=r(t,["components","mdxType","originalType","parentName"]),l=h(i),p=o,u=l["".concat(c,".").concat(p)]||l[p]||d[p]||n;return i?a.createElement(u,s(s({ref:e},m),{},{components:i})):a.createElement(u,s({ref:e},m))}));function p(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,s=new Array(n);s[0]=l;var r={};for(var c in e)hasOwnProperty.call(e,c)&&(r[c]=e[c]);r.originalType=t,r.mdxType="string"==typeof t?t:o,s[1]=r;for(var h=2;h=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),h=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):s(s({},e),t)),i},m=function(t){var e=h(t.components);return a.createElement(c.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},l=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,m=r(t,["components","mdxType","originalType","parentName"]),l=h(i),p=o,u=l["".concat(c,".").concat(p)]||l[p]||d[p]||n;return i?a.createElement(u,s(s({ref:e},m),{},{components:i})):a.createElement(u,s({ref:e},m))}));function p(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,s=new Array(n);s[0]=l;var r={};for(var c in e)hasOwnProperty.call(e,c)&&(r[c]=e[c]);r.originalType=t,r.mdxType="string"==typeof t?t:o,s[1]=r;for(var h=2;h=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=r.createContext({}),u=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},l=function(e){var t=u(e.components);return r.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=u(n),p=o,h=d["".concat(c,".").concat(p)]||d[p]||m[p]||i;return n?r.createElement(h,a(a({ref:t},l),{},{components:n})):r.createElement(h,a({ref:t},l))}));function p(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var u=2;u=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=r.createContext({}),u=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},l=function(e){var t=u(e.components);return r.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=u(n),p=o,h=d["".concat(c,".").concat(p)]||d[p]||m[p]||i;return n?r.createElement(h,a(a({ref:t},l),{},{components:n})):r.createElement(h,a({ref:t},l))}));function p(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var u=2;u=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=a.createContext({}),h=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},c=function(e){var t=h(e.components);return a.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,l=e.parentName,c=r(e,["components","mdxType","originalType","parentName"]),m=h(n),d=i,u=m["".concat(l,".").concat(d)]||m[d]||p[d]||o;return n?a.createElement(u,s(s({ref:t},c),{},{components:n})):a.createElement(u,s({ref:t},c))}));function d(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,s=new Array(o);s[0]=m;var r={};for(var l in t)hasOwnProperty.call(t,l)&&(r[l]=t[l]);r.originalType=e,r.mdxType="string"==typeof e?e:i,s[1]=r;for(var h=2;h ")," (Person owns House) suggests the phrase that describes the intension(al definition) of that relation. The (operational) extension of a relation embraces all pairs (SRC,TGT) for which the relation holds. In the example, it consists of all pairs (P,H), where P is a Person and H is a House, such that the phrase 'P owns H' is true."),(0,o.kt)("p",null,"A ",(0,o.kt)("strong",{parentName:"p"},"green name")," at either ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/association.html#association-end"},"end of a relation/association")," is what UML calls 'role'; this name may be used to refer to (an instance of) the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concept")," at which the name is placed as it performs its/this role in this relation. In the figure, ",(0,o.kt)("inlineCode",{parentName:"p"},"owner")," is the role that a Person fulfills in the relation 'owns'. If we assert that a Person (P) is the owner of a specific House (H), or that House H is owned by Person P, this means that (P,H) is an element of the extension of the relation 'owns'."),(0,o.kt)("p",null,"A ",(0,o.kt)("strong",{parentName:"p"},"solid line with an open arrowhead"),", represents a ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/generalization.html"},"generalization relation"),". It can be read as ",(0,o.kt)("inlineCode",{parentName:"p"}," is a "),", and is therefore also referred to as an ISA-relation. The SRC of the relation is the specialization (subclass) of the TGT (which in turn is a generalization of SRC). This means that SRC satisfies all constraints that TGT satisfies, and also that SRC has all attributes (properties, characteristics) that TGT has. The figure shows 'Self Employed Retailer is a Person' as an example."),(0,o.kt)("p",null,"A ",(0,o.kt)("strong",{parentName:"p"},"line with a solid diamond")," at one end represents a ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/composition.html"},"composition")," relation. The element at the 'diamond-end' is called the 'parent', or the 'whole'. The other element is called the 'child' or the 'part'. A 'part' in a composition relation cannot be part of more than one 'whole'. Normally, if a 'whole' in a composition relation ceases to exist, then so do all of its composite parts. In the figure, at least one Bedroom and precisely one Living Room are parts of a (every) House. Obviously, if a House ceases to exist, then so do these rooms."),(0,o.kt)("p",null,"A ",(0,o.kt)("strong",{parentName:"p"},"line with a hollow diamond")," at one end represents an ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/aggregation.html"},"aggregation")," relation. The element at the 'diamond-end' is called the 'parent', or the 'whole'. The other element is called the 'child' or the 'part'. A 'part' can be a part in multiple aggregation relations, and hence be part of multiple 'wholes'. If a 'whole' in an aggregation relation ceases to exist, the parts typically continue their existence. In the figure, 'Documentation' (about a Building Type) is an aggregation of a 'User Manual' and at least one 'Technical Document'. Obviously, if the Documentation ceases to exist, then the 'User Manual' and 'Technical Documents' typically continue to exist."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},"A ",(0,o.kt)("strong",{parentName:"p"},"dashed line")," with a pointed arrow (",(0,o.kt)("inlineCode",{parentName:"p"},">"),") represents a ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/dependency.html"},"dependency"),", where the SRC concept somehow depends on the TGT concept. The kind of dependency is specified by a ",(0,o.kt)("inlineCode",{parentName:"p"},"<>"),". In the figure, we see a dependency relation relation ",(0,o.kt)("inlineCode",{parentName:"p"},"<>"),", indicating that 'House' is a specific instance of 'Building Type'.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},"A ",(0,o.kt)("strong",{parentName:"p"},"[n..m]")," structure represents a ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/multiplicity.html"},"multiplicity"),". When it appears"),(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"at the TGT end of a relation"),", it means that for every SRC element there must be at least ",(0,o.kt)("em",{parentName:"li"},"n")," and at most ",(0,o.kt)("em",{parentName:"li"},"m")," TGT elements in the relation. For example, the ","[0..n]"," multiplicity in the 'owns' relation in the figure means that for every 'Person' element, there must be at least 0 and at most ",(0,o.kt)("em",{parentName:"li"},"n")," (i.e. any number) 'House' elements. Effectively, this says that every Person can own any number of Houses."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"at the SRC end of a relation"),", it means that for every TGT element there must be at least ",(0,o.kt)("em",{parentName:"li"},"n")," and at most ",(0,o.kt)("em",{parentName:"li"},"m")," SRC elements in the relation. For example, the ","[0..1]"," multiplicity in the 'owns' relation in the figure means that for every 'House' element, there must be at least 0 and at most 1 'Person' elements. Effectively, this means that every House can be owned by at most 1 Person."),(0,o.kt)("li",{parentName:"ul"},"is typically of any of the following forms (although there may be others, e.g. ","[1..2]","):\n","[0..1]",": at most one;\n","[1..1]",": precisely one;\n","[0..n]",": any number - as this is not a constraint, this is the default multiplicity and may be omitted;\n","[1..n]",": at least one.\nNote that the term ",(0,o.kt)("em",{parentName:"li"},"multiplicity")," is distinct from ",(0,o.kt)("em",{parentName:"li"},"cardinality"),", the difference being that a cardinality states the ",(0,o.kt)("em",{parentName:"li"},"actual")," number of SRC/TGT elements that a specific TGT/SRC element has in a relation, whereas a multiplicity states the ",(0,o.kt)("em",{parentName:"li"},"possible")," number of such elements. In short, the multiplicity is the set of all possible cardinalities in a relation. We note this becaus it is common practice for people to use the term 'cardinality' where 'multiplicity' is intended."))),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},"a ",(0,o.kt)("strong",{parentName:"p"},"named and coloured area"),", e.g. the green area named ",(0,o.kt)("inlineCode",{parentName:"p"},"House Ownership")," is the aggregate (Parent/Whole) of all concepts (rectangular elements) therein, which are its children/parts. This aggregate can be linked/associated with any other concept, including its children/parts."))),(0,o.kt)("h3",{id:"notational-exceptions"},"Notational Exceptions"),(0,o.kt)("p",null,"The following notational conventions are not used by ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/"},"UML"),", but are specific to our use."),(0,o.kt)("p",null,"We use a ",(0,o.kt)("strong",{parentName:"p"},"coloring convention")," to distinguish between what is 'officially' part of the eSSIF-Lab models, and parts that are not."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"blue")," is used to color the lines and other symbols that are part of the 'official' models. Typically, they are explicitly defined or otherwise explained, e.g. in a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mental-model",hovertext:"Mental Model: A Semantic Unit that relates a set of Concepts (ideas), Relations between them, and constraints about a certain topic, into a coherent and consistent whole (sometimes called 'viewpoint', or 'way of thinking')."},"mental model"),". Their definitions/meanings may differ from 'common knowledge'."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"red")," is used to color the lines and other symbols that are part of our 'common knowledge', and hence need not be explicitly defined. They appear to explain where eSSIF-Lab models link to these commonly known/used concepts. We think of them as necessary in order to bridge possible gaps between 'common understanding' and the eSSIF-Lab ways of thinking. Whenever a 'red concept' is nevertheless defined, this is for the purpose of conveying what we conceive the 'common knowledge' to be.")),(0,o.kt)("p",null,"We use a ",(0,o.kt)("strong",{parentName:"p"},"line typing convention")," within a diagram, as follows:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"solid lines")," are used for lines and other symbols that are part of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mental-model",hovertext:"Mental Model: A Semantic Unit that relates a set of Concepts (ideas), Relations between them, and constraints about a certain topic, into a coherent and consistent whole (sometimes called 'viewpoint', or 'way of thinking')."},"mental model")," that is represented by the diagram;"),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"dashed lines")," are used for lines and other symbols that are (authoritatively) defined elsewhere.\nFor example, the concept ",(0,o.kt)("a",{parentName:"li",href:"@"},"party")," is authoritatively defined in the ",(0,o.kt)("a",{parentName:"li",href:"pattern-party-actor-action@essif-lab"},"party, actor and action pattern"),", so the diagram there shows a solid (blue) line for that concept. It also appears in other diagrams, e.g. in the ",(0,o.kt)("a",{parentName:"li",href:"pattern-jurisdiction@essif-lab"},"jurisdiction pattern"),", where the concept is represented with a (blue) dashed line.")))}u.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[1789],{3905:function(e,t,n){n.d(t,{Zo:function(){return c},kt:function(){return d}});var a=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function s(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=a.createContext({}),h=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},c=function(e){var t=h(e.components);return a.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,l=e.parentName,c=r(e,["components","mdxType","originalType","parentName"]),m=h(n),d=i,u=m["".concat(l,".").concat(d)]||m[d]||p[d]||o;return n?a.createElement(u,s(s({ref:t},c),{},{components:n})):a.createElement(u,s({ref:t},c))}));function d(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,s=new Array(o);s[0]=m;var r={};for(var l in t)hasOwnProperty.call(t,l)&&(r[l]=t[l]);r.originalType=e,r.mdxType="string"==typeof e?e:i,s[1]=r;for(var h=2;h ")," (Person owns House) suggests the phrase that describes the intension(al definition) of that relation. The (operational) extension of a relation embraces all pairs (SRC,TGT) for which the relation holds. In the example, it consists of all pairs (P,H), where P is a Person and H is a House, such that the phrase 'P owns H' is true."),(0,o.kt)("p",null,"A ",(0,o.kt)("strong",{parentName:"p"},"green name")," at either ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/association.html#association-end"},"end of a relation/association")," is what UML calls 'role'; this name may be used to refer to (an instance of) the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concept")," at which the name is placed as it performs its/this role in this relation. In the figure, ",(0,o.kt)("inlineCode",{parentName:"p"},"owner")," is the role that a Person fulfills in the relation 'owns'. If we assert that a Person (P) is the owner of a specific House (H), or that House H is owned by Person P, this means that (P,H) is an element of the extension of the relation 'owns'."),(0,o.kt)("p",null,"A ",(0,o.kt)("strong",{parentName:"p"},"solid line with an open arrowhead"),", represents a ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/generalization.html"},"generalization relation"),". It can be read as ",(0,o.kt)("inlineCode",{parentName:"p"}," is a "),", and is therefore also referred to as an ISA-relation. The SRC of the relation is the specialization (subclass) of the TGT (which in turn is a generalization of SRC). This means that SRC satisfies all constraints that TGT satisfies, and also that SRC has all attributes (properties, characteristics) that TGT has. The figure shows 'Self Employed Retailer is a Person' as an example."),(0,o.kt)("p",null,"A ",(0,o.kt)("strong",{parentName:"p"},"line with a solid diamond")," at one end represents a ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/composition.html"},"composition")," relation. The element at the 'diamond-end' is called the 'parent', or the 'whole'. The other element is called the 'child' or the 'part'. A 'part' in a composition relation cannot be part of more than one 'whole'. Normally, if a 'whole' in a composition relation ceases to exist, then so do all of its composite parts. In the figure, at least one Bedroom and precisely one Living Room are parts of a (every) House. Obviously, if a House ceases to exist, then so do these rooms."),(0,o.kt)("p",null,"A ",(0,o.kt)("strong",{parentName:"p"},"line with a hollow diamond")," at one end represents an ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/aggregation.html"},"aggregation")," relation. The element at the 'diamond-end' is called the 'parent', or the 'whole'. The other element is called the 'child' or the 'part'. A 'part' can be a part in multiple aggregation relations, and hence be part of multiple 'wholes'. If a 'whole' in an aggregation relation ceases to exist, the parts typically continue their existence. In the figure, 'Documentation' (about a Building Type) is an aggregation of a 'User Manual' and at least one 'Technical Document'. Obviously, if the Documentation ceases to exist, then the 'User Manual' and 'Technical Documents' typically continue to exist."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},"A ",(0,o.kt)("strong",{parentName:"p"},"dashed line")," with a pointed arrow (",(0,o.kt)("inlineCode",{parentName:"p"},">"),") represents a ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/dependency.html"},"dependency"),", where the SRC concept somehow depends on the TGT concept. The kind of dependency is specified by a ",(0,o.kt)("inlineCode",{parentName:"p"},"<>"),". In the figure, we see a dependency relation relation ",(0,o.kt)("inlineCode",{parentName:"p"},"<>"),", indicating that 'House' is a specific instance of 'Building Type'.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},"A ",(0,o.kt)("strong",{parentName:"p"},"[n..m]")," structure represents a ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/multiplicity.html"},"multiplicity"),". When it appears"),(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"at the TGT end of a relation"),", it means that for every SRC element there must be at least ",(0,o.kt)("em",{parentName:"li"},"n")," and at most ",(0,o.kt)("em",{parentName:"li"},"m")," TGT elements in the relation. For example, the ","[0..n]"," multiplicity in the 'owns' relation in the figure means that for every 'Person' element, there must be at least 0 and at most ",(0,o.kt)("em",{parentName:"li"},"n")," (i.e. any number) 'House' elements. Effectively, this says that every Person can own any number of Houses."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"at the SRC end of a relation"),", it means that for every TGT element there must be at least ",(0,o.kt)("em",{parentName:"li"},"n")," and at most ",(0,o.kt)("em",{parentName:"li"},"m")," SRC elements in the relation. For example, the ","[0..1]"," multiplicity in the 'owns' relation in the figure means that for every 'House' element, there must be at least 0 and at most 1 'Person' elements. Effectively, this means that every House can be owned by at most 1 Person."),(0,o.kt)("li",{parentName:"ul"},"is typically of any of the following forms (although there may be others, e.g. ","[1..2]","):\n","[0..1]",": at most one;\n","[1..1]",": precisely one;\n","[0..n]",": any number - as this is not a constraint, this is the default multiplicity and may be omitted;\n","[1..n]",": at least one.\nNote that the term ",(0,o.kt)("em",{parentName:"li"},"multiplicity")," is distinct from ",(0,o.kt)("em",{parentName:"li"},"cardinality"),", the difference being that a cardinality states the ",(0,o.kt)("em",{parentName:"li"},"actual")," number of SRC/TGT elements that a specific TGT/SRC element has in a relation, whereas a multiplicity states the ",(0,o.kt)("em",{parentName:"li"},"possible")," number of such elements. In short, the multiplicity is the set of all possible cardinalities in a relation. We note this becaus it is common practice for people to use the term 'cardinality' where 'multiplicity' is intended."))),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},"a ",(0,o.kt)("strong",{parentName:"p"},"named and coloured area"),", e.g. the green area named ",(0,o.kt)("inlineCode",{parentName:"p"},"House Ownership")," is the aggregate (Parent/Whole) of all concepts (rectangular elements) therein, which are its children/parts. This aggregate can be linked/associated with any other concept, including its children/parts."))),(0,o.kt)("h3",{id:"notational-exceptions"},"Notational Exceptions"),(0,o.kt)("p",null,"The following notational conventions are not used by ",(0,o.kt)("a",{parentName:"p",href:"https://www.uml-diagrams.org/"},"UML"),", but are specific to our use."),(0,o.kt)("p",null,"We use a ",(0,o.kt)("strong",{parentName:"p"},"coloring convention")," to distinguish between what is 'officially' part of the eSSIF-Lab models, and parts that are not."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"blue")," is used to color the lines and other symbols that are part of the 'official' models. Typically, they are explicitly defined or otherwise explained, e.g. in a ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mental-model",hovertext:"Mental Model: A Semantic Unit that relates a set of Concepts (ideas), Relations between them, and constraints about a certain topic, into a coherent and consistent whole (sometimes called 'viewpoint', or 'way of thinking')."},"mental model"),". Their definitions/meanings may differ from 'common knowledge'."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"red")," is used to color the lines and other symbols that are part of our 'common knowledge', and hence need not be explicitly defined. They appear to explain where eSSIF-Lab models link to these commonly known/used concepts. We think of them as necessary in order to bridge possible gaps between 'common understanding' and the eSSIF-Lab ways of thinking. Whenever a 'red concept' is nevertheless defined, this is for the purpose of conveying what we conceive the 'common knowledge' to be.")),(0,o.kt)("p",null,"We use a ",(0,o.kt)("strong",{parentName:"p"},"line typing convention")," within a diagram, as follows:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"solid lines")," are used for lines and other symbols that are part of the ",(0,o.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mental-model",hovertext:"Mental Model: A Semantic Unit that relates a set of Concepts (ideas), Relations between them, and constraints about a certain topic, into a coherent and consistent whole (sometimes called 'viewpoint', or 'way of thinking')."},"mental model")," that is represented by the diagram;"),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"dashed lines")," are used for lines and other symbols that are (authoritatively) defined elsewhere.\nFor example, the concept ",(0,o.kt)("a",{parentName:"li",href:"@"},"party")," is authoritatively defined in the ",(0,o.kt)("a",{parentName:"li",href:"pattern-party-actor-action@essif-lab"},"party, actor and action pattern"),", so the diagram there shows a solid (blue) line for that concept. It also appears in other diagrams, e.g. in the ",(0,o.kt)("a",{parentName:"li",href:"pattern-jurisdiction@essif-lab"},"jurisdiction pattern"),", where the concept is represented with a (blue) dashed line.")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/79495b8c.4152c82d.js b/assets/js/79495b8c.d022a8e7.js similarity index 99% rename from assets/js/79495b8c.4152c82d.js rename to assets/js/79495b8c.d022a8e7.js index f8280c5877..bb80cf8293 100644 --- a/assets/js/79495b8c.4152c82d.js +++ b/assets/js/79495b8c.d022a8e7.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[6122],{3905:function(e,t,n){n.d(t,{Zo:function(){return h},kt:function(){return d}});var o=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function a(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=o.createContext({}),m=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},h=function(e){var t=m(e.components);return o.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},l=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),l=m(n),d=i,p=l["".concat(c,".").concat(d)]||l[d]||u[d]||r;return n?o.createElement(p,a(a({ref:t},h),{},{components:n})):o.createElement(p,a({ref:t},h))}));function d(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,a=new Array(r);a[0]=l;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var m=2;m=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=o.createContext({}),m=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},h=function(e){var t=m(e.components);return o.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},l=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),l=m(n),d=i,p=l["".concat(c,".").concat(d)]||l[d]||u[d]||r;return n?o.createElement(p,a(a({ref:t},h),{},{components:n})):o.createElement(p,a({ref:t},h))}));function d(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,a=new Array(r);a[0]=l;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var m=2;m=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},u=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),f=l(r),m=o,d=f["".concat(s,".").concat(m)]||f[m]||p[m]||i;return r?n.createElement(d,a(a({ref:t},u),{},{components:r})):n.createElement(d,a({ref:t},u))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=f;var c={};for(var s in t)hasOwnProperty.call(t,s)&&(c[s]=t[s]);c.originalType=e,c.mdxType="string"==typeof e?e:o,a[1]=c;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},u=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),f=l(r),m=o,d=f["".concat(s,".").concat(m)]||f[m]||p[m]||i;return r?n.createElement(d,a(a({ref:t},u),{},{components:r})):n.createElement(d,a({ref:t},u))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=f;var c={};for(var s in t)hasOwnProperty.call(t,s)&&(c[s]=t[s]);c.originalType=e,c.mdxType="string"==typeof e?e:o,a[1]=c;for(var l=2;l=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var h=a.createContext({}),c=function(e){var t=a.useContext(h),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},l=function(e){var t=c(e.components);return a.createElement(h.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var i=e.components,o=e.mdxType,n=e.originalType,h=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=c(i),f=o,m=p["".concat(h,".").concat(f)]||p[f]||d[f]||n;return i?a.createElement(m,r(r({ref:t},l),{},{components:i})):a.createElement(m,r({ref:t},l))}));function f(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=i.length,r=new Array(n);r[0]=p;var s={};for(var h in t)hasOwnProperty.call(t,h)&&(s[h]=t[h]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var c=2;c child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function p(e){var t=e.values,i=e.children;return(0,o.useMemo)((function(){var e=null!=t?t:d(i);return function(e){var t=(0,c.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,i])}function f(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function m(e){var t=e.queryString,i=void 0!==t&&t,a=e.groupId,n=(0,s.k6)(),r=function(e){var t=e.queryString,i=void 0!==t&&t,a=e.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,h._X)(r),(0,o.useCallback)((function(e){if(r){var t=new URLSearchParams(n.location.search);t.set(r,e),n.replace(Object.assign({},n.location,{search:t.toString()}))}}),[r,n])]}function u(e){var t,i,a,n,r=e.defaultValue,s=e.queryString,h=void 0!==s&&s,c=e.groupId,d=p(e),u=(0,o.useState)((function(){return function(e){var t,i=e.defaultValue,a=e.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!f({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var o=null!=(t=a.find((function(e){return e.default})))?t:a[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:r,tabValues:d})})),g=u[0],y=u[1],v=m({queryString:h,groupId:c}),b=v[0],k=v[1],w=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:c}.groupId),i=(0,l.Nk)(t),a=i[0],n=i[1],[a,(0,o.useCallback)((function(e){t&&n.set(e)}),[t,n])]),T=w[0],x=w[1],R=function(){var e=null!=b?b:T;return f({value:e,tabValues:d})?e:null}();return(0,o.useLayoutEffect)((function(){R&&y(R)}),[R]),{selectedValue:g,selectValue:(0,o.useCallback)((function(e){if(!f({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);y(e),k(e),x(e)}),[k,x,d]),tabValues:d}}var g=i(2389),y="tabList__CuJ",v="tabItem_LNqP";function b(e){var t=e.className,i=e.block,s=e.selectedValue,h=e.selectValue,c=e.tabValues,l=[],d=(0,r.o5)().blockElementScrollPositionUntilNextRender,p=function(e){var t=e.currentTarget,i=l.indexOf(t),a=c[i].value;a!==s&&(d(t),h(a))},f=function(e){var t,i=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":var a,o=l.indexOf(e.currentTarget)+1;i=null!=(a=l[o])?a:l[0];break;case"ArrowLeft":var n,r=l.indexOf(e.currentTarget)-1;i=null!=(n=l[r])?n:l[l.length-1]}null==(t=i)||t.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},t)},c.map((function(e){var t=e.value,i=e.label,r=e.attributes;return o.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:function(e){return l.push(e)},onKeyDown:f,onClick:p},r,{className:(0,n.Z)("tabs__item",v,null==r?void 0:r.className,{"tabs__item--active":s===t})}),null!=i?i:t)})))}function k(e){var t=e.lazy,i=e.children,a=e.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(t){var r=n.find((function(e){return e.props.value===a}));return r?(0,o.cloneElement)(r,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(e,t){return(0,o.cloneElement)(e,{key:t,hidden:e.props.value!==a})})))}function w(e){var t=u(e);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(b,(0,a.Z)({},e,t)),o.createElement(k,(0,a.Z)({},e,t)))}function T(e){var t=(0,g.Z)();return o.createElement(w,(0,a.Z)({key:String(t)},e))}},9257:function(e,t,i){i.r(t),i.d(t,{assets:function(){return f},contentTitle:function(){return d},default:function(){return y},frontMatter:function(){return l},mark:function(){return u},metadata:function(){return p},toc:function(){return m}});var a=i(7462),o=i(3366),n=(i(7294),i(3905)),r=i(4996),s=i(4866),h=i(5162),c=["components"],l={id:"trrt",sidebar_label:"Term Ref Resolution",date:20220421},d="Term Reference Resolution Tool",p={unversionedId:"spec-tools/trrt",id:"spec-tools/trrt",title:"Term Reference Resolution Tool",description:"text to mark",source:"@site/docs/spec-tools/13-trrt.md",sourceDirName:"spec-tools",slug:"/spec-tools/trrt",permalink:"/tev2-specifications/docs/spec-tools/trrt",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/13-trrt.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:13,frontMatter:{id:"trrt",sidebar_label:"Term Ref Resolution",date:20220421},sidebar:"tev2SideBar",previous:{title:"MRG Importer",permalink:"/tev2-specifications/docs/spec-tools/mrg-importer"},next:{title:"Terminology Construction",permalink:"/tev2-specifications/docs/spec-tools/terminology-construction"}},f={},m=[{value:"Installing the Tool",id:"installing-the-tool",level:2},{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Term Ref Resolution",id:"term-ref-resolution",level:2},{value:"Interpretation of the Term Ref",id:"interpretation-of-the-term-ref",level:3},{value:"showtext (required)",id:"showtext",level:4},{value:"scopetag (optional)",id:"scopetag",level:4},{value:"vsntag (optional)",id:"vsntag",level:4},{value:"term (optional)",id:"id",level:4},{value:"trait (optional)",id:"trait",level:4},{value:"Locating the identified MRG Entry",id:"locating-the-identified-mrg-entry",level:3},{value:"Rewriting the Term Ref with a Renderable Ref",id:"rewriting-the-term-ref-with-a-renderable-ref",level:3},{value:"Processing, Errors and Warnings",id:"processing-errors-and-warnings",level:2},{value:"Deploying the Tool",id:"deploying-the-tool",level:2}],u=function(e){var t=e.children;return(0,n.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},t)},g={toc:m,mark:u};function y(e){var t=e.components,i=(0,o.Z)(e,c);return(0,n.kt)("wrapper",(0,a.Z)({},g,i,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"term-reference-resolution-tool"},"Term Reference Resolution Tool"),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"Term ref resolution is the same process as we use for ingestion, and other conversions, as (will be) explained in the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/profile-templates"},"profiles template section"),". When that 'conversion pattern' is stable and properly documented, we need to revise this section to align with those descriptions.")),(0,n.kt)("p",null,"The ",(0,n.kt)("strong",{parentName:"p"},"Term Ref(erence) Resolution Tool (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),")")," takes files that contain so-called ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," and outputs a copy of these files in which these ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," are converted into so-called ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable refs"),", i.e. texts that can be further processed by tools such as GitHub pages, Docusaurus, etc. The result of this is that the rendered document contains markups that help ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"readers")," to quickly find more explanations of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concept")," or other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that is being referenced."),(0,n.kt)("p",null,"There is currently one implementation of the tool:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the repo is ",(0,n.kt)("a",{parentName:"li",href:"https://github.com/tno-terminology-design/trrt"},"here"),"."),(0,n.kt)("li",{parentName:"ul"},"the documentation is ",(0,n.kt)("a",{parentName:"li",href:"https://tno-terminology-design.github.io/trrt"},"here"),".")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples"),(0,n.kt)("p",null,"Consider the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," ",(0,n.kt)("inlineCode",{parentName:"p"},"[the purpose of actors](actor#purpose@essif-lab)"),". Here are a number of ways that it can be converted into:"),(0,n.kt)(s.Z,{defaultValue:"markdown",values:[{label:"Markdown",value:"markdown"},{label:"HTML",value:"html"},{label:"eSSIF-Lab Style",value:"essiflab-style"}],mdxType:"Tabs"},(0,n.kt)(h.Z,{value:"markdown",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-markdown"}," [the purpose of actors](/framework/docs/terms/actor#purpose)\n")),(0,n.kt)("p",null,"which is text that a markdown interpreter will render into a text ",(0,n.kt)("inlineCode",{parentName:"p"},"the purpose of actors")," that hyperlinks to the (relative) path ",(0,n.kt)("inlineCode",{parentName:"p"},"/framework/docs/terms/actor#purpose"),".")),(0,n.kt)(h.Z,{value:"html",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-html"},' \n the purpose of actors\n ,\n')),(0,n.kt)("p",null,"which is code that will render the text ",(0,n.kt)("inlineCode",{parentName:"p"},"the purpose of actors")," as a (boldface) hyperlink, that, when clicked, will navigate to the ",(0,n.kt)("inlineCode",{parentName:"p"},"purpose")," section of the page that documents (the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," called ",(0,n.kt)("inlineCode",{parentName:"p"},"actor"),".")),(0,n.kt)(h.Z,{value:"essiflab-style",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-html"},' the purpose of actors\n \n')),(0,n.kt)("p",null,"Note that this text is not readily renderable in a browser. ",(0,n.kt)("inlineCode",{parentName:"p"},"")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"")," represent a React component that supports linking and tooltip functionality, so that users hovering over the link will see a popup/tooltip with the text ",(0,n.kt)("inlineCode",{parentName:"p"},""),". This functionality is expected to be provided by an appropriate plugin in the static website generator.")))),(0,n.kt)("p",null,"Conceptually, ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," conversion is a simple two-step process:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is interpreted, the result of which is a set of variables (or if regexes are used: ",(0,n.kt)("a",{parentName:"li",href:"https://riptutorial.com/regex/example/2479/named-capture-groups"},"named capturing groups"),") whose contents ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," from a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"."),(0,n.kt)("li",{parentName:"ol"},"Then, using the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is replaced by a converter with a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref"),", of the kind as specified by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT's")," command line arguments or configuration file. Through the use of converters, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref")," may include all sorts of code that is processed further by other, third party rendering tools.")),(0,n.kt)("p",null,"By cleanly separating ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," interpretation from the part where it is overwritten with a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref"),", it becomes easy to extend the capabilities of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," to include ways for rendering ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),", e.g. for LaTeX, PDF, docx, odt and other formats, as well as for formats that we currently do not even know we would like to have."),(0,n.kt)("p",null,"In order to convert ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," into ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable refs"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," expects the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," and the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from within which it is being called, to be available. The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is used to resolve all links to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are part of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," is used to locate the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," of any (other) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," whose ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," is used as part of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," that needs to be resolved."),(0,n.kt)("h2",{id:"installing-the-tool"},"Installing the Tool"),(0,n.kt)("p",null,"The tool can be installed from the command line and made globally available by executing"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"npm install tno-terminology-design/trrt -g\n")),(0,n.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,n.kt)("p",null,"The behavior of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," can be configured per call e.g. by a configuration file and/or command-line parameters. The command-line syntax is as follows:"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"trrt [ ] [ ]\n")),(0,n.kt)("p",null,"where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," (optional) is a list of key-value pairs"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},(0,n.kt)("inlineCode",{parentName:"a"},"globpattern"))," (optional) specifies a set of (input) files that are to be processed. If a configuration file is used, its contents may specify an additional set of input files to be processed.")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("p",null,"The columns in the following table are defined as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,n.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"config")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter MUST NOT appear in the configuration file itself.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"input")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{parentName:"td",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"Globpattern")," that specifies the set of (input) files that are to be processed.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"output")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"(Root) directory where output files are to be written. This directory is specified as an absolute or relative path.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," from which the tool is called. It MUST contain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which we will refer to as the 'current scope' for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"version")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is to be used to resolve ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," for which neither a ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," nor a ",(0,n.kt)("inlineCode",{parentName:"td"},"version")," part has been specified (which is the most common case). It MUST match either the ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," field, or an element of the ",(0,n.kt)("inlineCode",{parentName:"td"},"altvsntags")," field as specified in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#versions"},(0,n.kt)("inlineCode",{parentName:"a"},"versions")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". When not specified, its value is taken from the ",(0,n.kt)("inlineCode",{parentName:"td"},"defaultvsn")," field in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/mrg#mrg-terminology"},"terminology section")," of the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," (which is ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," by the contents of the ",(0,n.kt)("inlineCode",{parentName:"td"},"mrgfile")," field (in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"scope")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),").")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"interpreter")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Allows for the switching between interpreter types. By default the ",(0,n.kt)("inlineCode",{parentName:"td"},"AltInterpreter")," and ",(0,n.kt)("inlineCode",{parentName:"td"},"StandardInterpreter")," are available. When this parameter is omitted, the basic ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," syntax is used.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"converter")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"The type of converter which creates the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable refs"),". When this parameter is omitted, the Markdown converter is used.")))),(0,n.kt)("h2",{id:"term-ref-resolution"},"Term Ref Resolution"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," resolution process has three steps:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Interpretation of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," into variables that can be used to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),";"),(0,n.kt)("li",{parentName:"ol"},"Locating the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG Entry"),";"),(0,n.kt)("li",{parentName:"ol"},"Rewriting the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," with a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref"),".")),(0,n.kt)("h3",{id:"interpretation-of-the-term-ref"},"Interpretation of the Term Ref"),(0,n.kt)("p",null,"The following kinds of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," syntaxes are (to be) supported:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-syntax/term-ref-syntax#basic-syntax"},"basic syntax"),", i.e. ","[",(0,n.kt)("inlineCode",{parentName:"li"},"show text"),"]","(",(0,n.kt)("inlineCode",{parentName:"li"},"term"),"#",(0,n.kt)("inlineCode",{parentName:"li"},"trait"),"@",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag"),":",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag"),");"),(0,n.kt)("li",{parentName:"ul"},"the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-syntax/term-ref-syntax#alternative-syntax"},"alternative syntax"),", e.g. ","[",(0,n.kt)("inlineCode",{parentName:"li"},"show text"),"@","]",", which basically moves the ",(0,n.kt)("inlineCode",{parentName:"li"},"@"),"-character from the basic syntax within the square brackets, which in many (if not most) cases is more convenient for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors"),", but has the drawback that the rendering of the plain markdown text would be rendered as ","[show text@]",", which may be inconvenient.")),(0,n.kt)("p",null,"Interpretation of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," leads to the population of the following variables (or, in case regexes are used, named capturing groups):"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Using regexes to find the values for the variables"),(0,n.kt)("p",null,"Finding a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," in the file can be done by using a regular expressions (regexes - you can use ",(0,n.kt)("a",{parentName:"p",href:"https://www.debuggex.com/"},"debuggex")," to see what these regexps do (make sure you choose PCRE as the regex flavor to work with))."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"For the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-syntax/term-ref-syntax#basic-syntax"},"basic syntax"),", you can use the PCRE regex"),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.debuggex.com/r/G1uvznpNG1mhqEx5"},(0,n.kt)("inlineCode",{parentName:"a"},"(?:(?<=[^`\\\\])|^)\\[(?=[^@\\]]+\\]\\([#a-z0-9_-]*@[:a-z0-9_-]*\\))"))," to find the ",(0,n.kt)("inlineCode",{parentName:"li"},"[")," that starts a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),", and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.debuggex.com/r/36D57uOvsnyPehh3"},(0,n.kt)("inlineCode",{parentName:"a"},"(?[^\\n\\]@]+)\\]\\((?:(?[a-z0-9_-]*)?(?:#(?[a-z0-9_-]+))?)?@(?[a-z0-9_-]*)(?::(?[a-z0-9_-]+))?\\)"))," to find the various parts of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," as (named) capturing groups."))),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"For the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-syntax/term-ref-syntax#alternative-syntax"},"alternative syntax"),", you can use the PCRE regex"),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.debuggex.com/r/7dEYEdoc52QeIxf4"},(0,n.kt)("inlineCode",{parentName:"a"},"(?:(?<=[^`\\\\])|^)\\[(?=[^@\\]]+@[:a-z0-9_-]*\\](?:\\([#a-z0-9_-]+\\))?)"))," to find the ",(0,n.kt)("inlineCode",{parentName:"li"},"[")," that starts a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),", and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.debuggex.com/r/tMBiAk_W9ipNc9Mm"},(0,n.kt)("inlineCode",{parentName:"a"},"(?[^\\n\\]@]+?)@(?[a-z0-9_-]*)(?::(?[a-z0-9_-]+?))?\\](?:\\((?[a-z0-9_-]*)(?:#(?[a-z0-9_-]+?))?\\))?"))," to subsequently obtain the various fields as (named) capturing groups from the PCRE regex.")))),(0,n.kt)("p",null,"Note that when a value of a named capturing group is empty, it is filled by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," with (default) values according to the specifications below.")),(0,n.kt)("h4",{id:"showtext"},(0,n.kt)("inlineCode",{parentName:"h4"},"showtext")," (required)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," is a (non-empty) text that will be highlighed/enhanced, and will become clickable and/or receive other features when rendered. It MUST NOT be empty, and it MUST NOT contain the characters ",(0,n.kt)("inlineCode",{parentName:"p"},"@")," or ",(0,n.kt)("inlineCode",{parentName:"p"},"]")," (which we need to be able to distinguish between ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," and other links)."),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The alternative notation assumes that the ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," part of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," won't contain the ",(0,n.kt)("inlineCode",{parentName:"p"},"@")," character. However, it is likely that some ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," will want to use an email address as the ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," part of a ",(0,n.kt)("em",{parentName:"p"},"regular")," link, e.g. as in ",(0,n.kt)("inlineCode",{parentName:"p"},"[rieks.joosten@tno.nl](mailto:rieks.joosten@tno.nl)"),". However, since ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," should not contain ",(0,n.kt)("inlineCode",{parentName:"p"},"."),"-characters, ",(0,n.kt)("inlineCode",{parentName:"p"},"[rieks.joosten@tno.nl]")," does not qualify as a ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," in our syntax. Also, it would be detectable if such syntax is followed by ",(0,n.kt)("inlineCode",{parentName:"p"},"(mailto:"),". Any detected problems must result in a proper warning, and the suggestion that email addresses can be used in a ",(0,n.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#urls-and-email-addresses"},"link with angle brackets"),", e.g. ",(0,n.kt)("inlineCode",{parentName:"p"},""),".")),(0,n.kt)("h4",{id:"scopetag"},(0,n.kt)("inlineCode",{parentName:"h4"},"scopetag")," (optional)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"scopetag")," is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is to be resolved."),(0,n.kt)("p",null,"If specified, it MUST appear in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," is called), as an element of the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetags")," field of one of elements in the list of ",(0,n.kt)("inlineCode",{parentName:"p"},"scopes"),". That element also contains a ",(0,n.kt)("inlineCode",{parentName:"p"},"scopedir")," field, that can subsequently be used to obtain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("p",null,"If not specified, the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," is being called) will be used. This SHOULD be the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the document containing the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is being maintained. Note that the preceding ",(0,n.kt)("inlineCode",{parentName:"p"},"@")," sign may never be omitted because as it serves the purpose to distinguish ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," from other ",(0,n.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"Markdown links"),". A ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag")," shall only contain characters in regex ",(0,n.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-]"),"."),(0,n.kt)("h4",{id:"vsntag"},(0,n.kt)("inlineCode",{parentName:"h4"},"vsntag")," (optional)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (as ","[identified]"," by the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag"),"). It MUST appear either in the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field, or as one of the elements in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," that contains the administration of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("p",null,"If omitted (in which case the preceding ",(0,n.kt)("inlineCode",{parentName:"p"},":"),"-character may also be omitted from the syntax), its value will ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (as ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#terminology"},"specified")," in the ",(0,n.kt)("inlineCode",{parentName:"p"},"mrgfile")," field os the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),")."),(0,n.kt)("h4",{id:"id"},(0,n.kt)("inlineCode",{parentName:"h4"},"term")," (optional)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"term")," is a text that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),", and is specified in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that documents that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," (in a specific version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"). It will be matched against the ",(0,n.kt)("inlineCode",{parentName:"p"},"term")," fields of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that documents said ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),"."),(0,n.kt)("p",null,"If omitted, "," it is generated as follows (assuming the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," to be used has already been ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified"),"):"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"set ",(0,n.kt)("inlineCode",{parentName:"li"},"term"),":=",(0,n.kt)("inlineCode",{parentName:"li"},"showtext"),";"),(0,n.kt)("li",{parentName:"ul"},"convert every character in the (regex) range ",(0,n.kt)("inlineCode",{parentName:"li"},"[A-Z]")," to lower-case;"),(0,n.kt)("li",{parentName:"ul"},"convert every sequence of characters ",(0,n.kt)("inlineCode",{parentName:"li"},"[^A-Za-z_-]+")," to (a single) ",(0,n.kt)("inlineCode",{parentName:"li"},"-")," character;"),(0,n.kt)("li",{parentName:"ul"},"if the resulting ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-syntax/form-phrase-syntax"},"matches an element in the list of texts")," in the ",(0,n.kt)("inlineCode",{parentName:"li"},"formphrases")," field of an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", then replace ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," with the contents of the ",(0,n.kt)("inlineCode",{parentName:"li"},"term"),"-field of that same ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),".")),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"We should clarify the extent to which this ",(0,n.kt)("inlineCode",{parentName:"p"},"matching")," supports formphrase macro's, Currently, this is documented as part of the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-syntax/form-phrase-syntax"},"form-phrase syntax")," which doesn't seem right.")),(0,n.kt)("p",null,"It is an error if the resulting ",(0,n.kt)("inlineCode",{parentName:"p"},"term")," does not ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," in the selected ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),". This may mean that the ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," has misspellings, the ",(0,n.kt)("inlineCode",{parentName:"p"},"term")," field was not specified where it had to, or the list of ",(0,n.kt)("inlineCode",{parentName:"p"},"formphrases")," in some ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," should have included more elements."),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},(0,n.kt)("a",{parentName:"p",href:"https://tartarus.org/martin/PorterStemmer/"},"The Porter Stemming Algorithm")," is a process for removing the commoner morphological and inflexional endings from words in English. Its main use is as part of a term normalisation process that is usually done when setting up Information Retrieval systems. The mentioned site links to lots of freely useable code that the TRRT might want to consider using."),(0,n.kt)("p",{parentName:"admonition"},"Perhaps the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," may use this tool as a means for generating the ",(0,n.kt)("inlineCode",{parentName:"p"},"term")," field from the ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," if necessary. However, we would need to first experiment with that to see whether or not, c.q. to what extent this conversion does what it is expected to do.")),(0,n.kt)("h4",{id:"trait"},(0,n.kt)("inlineCode",{parentName:"h4"},"trait")," (optional)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"trait")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a particular kind of descriptive text that is associated with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),". If specified, it must be one of the elements in the list of headingid's as specified in ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg#mrg-entries"},"the ",(0,n.kt)("inlineCode",{parentName:"a"},"headingids")," field")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),". If omitted, the preceding ",(0,n.kt)("inlineCode",{parentName:"p"},"#"),"-character should also be omitted."),(0,n.kt)("h3",{id:"locating-the-identified-mrg-entry"},"Locating the identified MRG Entry"),(0,n.kt)("p",null,"As soon as the variables have been provided with a value, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," can be found by following a sequence of steps:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"get the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," associated with the ",(0,n.kt)("inlineCode",{parentName:"strong"},"scope")," variable of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")),". If the value of the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag")," variable is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," of the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (as specified when the ",(0,n.kt)("a",{parentName:"p",href:"#calling-the-tool"},"tool was called"),"), then use the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),". Otherwise, look up the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," from the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#scopes"},(0,n.kt)("inlineCode",{parentName:"a"},"scopes")," section")," of the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". From the resulting ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),", read the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (i.e. the ",(0,n.kt)("inlineCode",{parentName:"p"},"saf.yaml")," file in the root of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),").")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"get the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," associated with the ",(0,n.kt)("inlineCode",{parentName:"strong"},"vsntag")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")),". Search the element in the ",(0,n.kt)("a",{parentName:"p",href:"docs/spec-files/mrg#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," where the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," variable is either the value of the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field, or appears as one of the elements in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags")," field. Then, obtain the filename of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from the ",(0,n.kt)("inlineCode",{parentName:"p"},"mrgfile")," field of that element.")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"identify the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," associated with the ",(0,n.kt)("inlineCode",{parentName:"strong"},"id")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")),". Get the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from the location specified by the URL ",(0,n.kt)("inlineCode",{parentName:"p"},""),"/",(0,n.kt)("inlineCode",{parentName:"p"},""),"/",(0,n.kt)("inlineCode",{parentName:"p"},"")," (which are all in the context of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," as identified by the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag")," variable). The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," will be ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," by a process that starts with the set of all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," that exist in the selected ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", and then weeding out any non-matching ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," by applying the following steps:"),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"since ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," must be present, all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," are removed whose ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," field differs from the ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," variable;"),(0,n.kt)("li",{parentName:"ul"},"then, if the variable ",(0,n.kt)("inlineCode",{parentName:"li"},"termtype")," is present, all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," whose ",(0,n.kt)("inlineCode",{parentName:"li"},"termtype")," field has a different value from what that variable holds, are removed from the set;"),(0,n.kt)("li",{parentName:"ul"},"If the resulting set contains exactly one ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", this is the one that is selected; otherwise, a warning is raised.")))),(0,n.kt)("h3",{id:"rewriting-the-term-ref-with-a-renderable-ref"},"Rewriting the Term Ref with a Renderable Ref"),(0,n.kt)("img",{alt:"From this point onward, texts are under construction",src:(0,r.Z)("images/wip/wip-under-construction-from-here-onward.png")}),(0,n.kt)("br",null),(0,n.kt)("br",null),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," will by default dereference to a human readable, rendered version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," associated with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", which can be obtained through the URL located in the ",(0,n.kt)("inlineCode",{parentName:"p"},"navurl")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", which the text ",(0,n.kt)("inlineCode",{parentName:"p"},"#")," is appended if a ",(0,n.kt)("inlineCode",{parentName:"p"},"trait")," was specified."),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"We should think about how to document ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable refs")," in such a way that they can easily be found and used for different roles (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors"),", curators, developers) and purposes (writing a trrt-config file, adding a new type of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref"),", etc.).")),(0,n.kt)("p",null,"The text with which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is to be replaced can have various formats. This enables the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," to be used in different contexts, and its results to be further processed by a variety of third-party rendering tools."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples of term-ref replacements"),(0,n.kt)(s.Z,{defaultValue:"simple",values:[{label:"ToIP Style",value:"simple"},{label:"eSSIF-Lab Style",value:"complex"}],mdxType:"Tabs"},(0,n.kt)(h.Z,{value:"simple",mdxType:"TabItem"},(0,n.kt)("p",null,"The simplest example is where a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is replaced with a regular ",(0,n.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown link")),(0,n.kt)("p",null,"In this case, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," ",(0,n.kt)("inlineCode",{parentName:"p"},"[Actions](@)")," is replaced with ",(0,n.kt)("inlineCode",{parentName:"p"},"[Actions](/#action)"),"\nwhere:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"hrgfile")," is the contents of the field ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".",(0,n.kt)("inlineCode",{parentName:"li"},"scope.hrgfile"),".")),(0,n.kt)("p",null,"Note that if the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," refers to a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that differs from the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", then the URL should be preceeded by the text specified in the ",(0,n.kt)("inlineCode",{parentName:"p"},"website")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", because it would not be a relative (local) hyperlink.")),(0,n.kt)(h.Z,{value:"complex",mdxType:"TabItem"},(0,n.kt)("p",null,"A more complex example is what is done within eSSIF-Lab, where the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," not only want ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," to be linked to their (rendered) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),", but also want them to be provided with a tooltip that states their ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definitions"),"."),(0,n.kt)("p",null,"In this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," ",(0,n.kt)("inlineCode",{parentName:"p"},"[Actions](@)")," is replaced with ",(0,n.kt)("inlineCode",{parentName:"p"},'Actions'),"\nwhere:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the text provided in the ",(0,n.kt)("inlineCode",{parentName:"li"},"hoverText")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," whose ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," field is ",(0,n.kt)("inlineCode",{parentName:"li"},"action"),", and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," and ",(0,n.kt)("inlineCode",{parentName:"li"},"")," represent a React component that supports linking and tooltip functionality, so that users hovering over the link will see a popup/tooltip with the text ",(0,n.kt)("inlineCode",{parentName:"li"},""),", and will navigate to the location of the (human readable, i.e. rendered) file that contains details and further explanations, as specified in the ",(0,n.kt)("inlineCode",{parentName:"li"},"navurl")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),".")),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The implementation of the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," ... ",(0,n.kt)("inlineCode",{parentName:"p"},"")," construct will differ from that which is used by eSSIF-Lab, because a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is defined in this, or another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", lives in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file")," at ",(0,n.kt)("inlineCode",{parentName:"p"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"p"},"curatedir"),"/",(0,n.kt)("inlineCode",{parentName:"p"},"locator"),", where"),(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"scopedir")," is the URL that locates the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),";"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"curatedir")," is the directory in that ",(0,n.kt)("inlineCode",{parentName:"li"},"scopedir")," where ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic units")," (c.q. ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),") live; its value is found both in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," and in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),";"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"locator")," is the path (including filename), relative to ",(0,n.kt)("inlineCode",{parentName:"li"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"li"},"curatedir"),"/, of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file")," that describes the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that is being referred to.")))))),(0,n.kt)("p",null,"The essentials of the rewriting start with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," is called, and proceed as follows:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"access the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", and in case the ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag")," is not of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", look up the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," associated with that ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag")," and obtain its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),";"),(0,n.kt)("li",{parentName:"ul"},"using the ",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag"),", locate the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," (or if ",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag")," isn't specified, use the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-file as specified in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),");"),(0,n.kt)("li",{parentName:"ul"},"Find the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," that has a ",(0,n.kt)("inlineCode",{parentName:"li"},"term"),"-field that is the same as ",(0,n.kt)("inlineCode",{parentName:"li"},"term"),";")),(0,n.kt)("p",null,"At this point, all data is available for constructing the replacement text. As we have seen, it depends on the situation that need to be supported how the actual construction needs to be done."),(0,n.kt)("h2",{id:"processing-errors-and-warnings"},"Processing, Errors and Warnings"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," starts by reading its command-line and configuration file. If the command-line has a key that is also found in the configuration file, the command-line key-value pair takes precedence. The resulting set of key-value pairs is tested for proper syntax and validity. Every improper syntax and every invalidity found will be logged. Improper syntax may be e.g. an invalid ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"globpattern"),". Invalidities include non-existing directories or files, lack of write-permissions where needed, etc."),(0,n.kt)("p",null,"Then, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," reads the specified input files (in arbitrary order), and for each of them, produces an output file that is the same as the input file except for the fact that all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," have been replaced with regular ",(0,n.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown links"),", and (optionally) with additional texts that are to be used by third-party rendering tools for enhanced rendering of such links. An example of this would be text that can be used to enhance a link with a popup that contains the definition, or a description of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is being referenced."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," logs every error- and/or warning condition that it comes across while processing its configuration file, commandline parameters, and input files, in a way that helps tool-operators and document ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to identify and fix such conditions."),(0,n.kt)("h2",{id:"deploying-the-tool"},"Deploying the Tool"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and author/modify CI-pipes to use that deployment."))}y.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[3991],{3905:function(e,t,i){i.d(t,{Zo:function(){return l},kt:function(){return f}});var a=i(7294);function o(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function n(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,a)}return i}function r(e){for(var t=1;t=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var h=a.createContext({}),c=function(e){var t=a.useContext(h),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},l=function(e){var t=c(e.components);return a.createElement(h.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var i=e.components,o=e.mdxType,n=e.originalType,h=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),p=c(i),f=o,m=p["".concat(h,".").concat(f)]||p[f]||d[f]||n;return i?a.createElement(m,r(r({ref:t},l),{},{components:i})):a.createElement(m,r({ref:t},l))}));function f(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=i.length,r=new Array(n);r[0]=p;var s={};for(var h in t)hasOwnProperty.call(t,h)&&(s[h]=t[h]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var c=2;c child <"+("string"==typeof e.type?e.type:e.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?t:[]}(e).map((function(e){var t=e.props;return{value:t.value,label:t.label,attributes:t.attributes,default:t.default}}))}function p(e){var t=e.values,i=e.children;return(0,o.useMemo)((function(){var e=null!=t?t:d(i);return function(e){var t=(0,c.l)(e,(function(e,t){return e.value===t.value}));if(t.length>0)throw new Error('Docusaurus error: Duplicate values "'+t.map((function(e){return e.value})).join(", ")+'" found in . Every value needs to be unique.')}(e),e}),[t,i])}function f(e){var t=e.value;return e.tabValues.some((function(e){return e.value===t}))}function m(e){var t=e.queryString,i=void 0!==t&&t,a=e.groupId,n=(0,s.k6)(),r=function(e){var t=e.queryString,i=void 0!==t&&t,a=e.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,h._X)(r),(0,o.useCallback)((function(e){if(r){var t=new URLSearchParams(n.location.search);t.set(r,e),n.replace(Object.assign({},n.location,{search:t.toString()}))}}),[r,n])]}function u(e){var t,i,a,n,r=e.defaultValue,s=e.queryString,h=void 0!==s&&s,c=e.groupId,d=p(e),u=(0,o.useState)((function(){return function(e){var t,i=e.defaultValue,a=e.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!f({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(e){return e.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var o=null!=(t=a.find((function(e){return e.default})))?t:a[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:r,tabValues:d})})),g=u[0],y=u[1],v=m({queryString:h,groupId:c}),b=v[0],k=v[1],w=(t=function(e){return e?"docusaurus.tab."+e:null}({groupId:c}.groupId),i=(0,l.Nk)(t),a=i[0],n=i[1],[a,(0,o.useCallback)((function(e){t&&n.set(e)}),[t,n])]),T=w[0],x=w[1],R=function(){var e=null!=b?b:T;return f({value:e,tabValues:d})?e:null}();return(0,o.useLayoutEffect)((function(){R&&y(R)}),[R]),{selectedValue:g,selectValue:(0,o.useCallback)((function(e){if(!f({value:e,tabValues:d}))throw new Error("Can't select invalid tab value="+e);y(e),k(e),x(e)}),[k,x,d]),tabValues:d}}var g=i(2389),y="tabList__CuJ",v="tabItem_LNqP";function b(e){var t=e.className,i=e.block,s=e.selectedValue,h=e.selectValue,c=e.tabValues,l=[],d=(0,r.o5)().blockElementScrollPositionUntilNextRender,p=function(e){var t=e.currentTarget,i=l.indexOf(t),a=c[i].value;a!==s&&(d(t),h(a))},f=function(e){var t,i=null;switch(e.key){case"Enter":p(e);break;case"ArrowRight":var a,o=l.indexOf(e.currentTarget)+1;i=null!=(a=l[o])?a:l[0];break;case"ArrowLeft":var n,r=l.indexOf(e.currentTarget)-1;i=null!=(n=l[r])?n:l[l.length-1]}null==(t=i)||t.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},t)},c.map((function(e){var t=e.value,i=e.label,r=e.attributes;return o.createElement("li",(0,a.Z)({role:"tab",tabIndex:s===t?0:-1,"aria-selected":s===t,key:t,ref:function(e){return l.push(e)},onKeyDown:f,onClick:p},r,{className:(0,n.Z)("tabs__item",v,null==r?void 0:r.className,{"tabs__item--active":s===t})}),null!=i?i:t)})))}function k(e){var t=e.lazy,i=e.children,a=e.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(t){var r=n.find((function(e){return e.props.value===a}));return r?(0,o.cloneElement)(r,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(e,t){return(0,o.cloneElement)(e,{key:t,hidden:e.props.value!==a})})))}function w(e){var t=u(e);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(b,(0,a.Z)({},e,t)),o.createElement(k,(0,a.Z)({},e,t)))}function T(e){var t=(0,g.Z)();return o.createElement(w,(0,a.Z)({key:String(t)},e))}},9257:function(e,t,i){i.r(t),i.d(t,{assets:function(){return f},contentTitle:function(){return d},default:function(){return y},frontMatter:function(){return l},mark:function(){return u},metadata:function(){return p},toc:function(){return m}});var a=i(7462),o=i(3366),n=(i(7294),i(3905)),r=i(4996),s=i(4866),h=i(5162),c=["components"],l={id:"trrt",sidebar_label:"Term Ref Resolution",date:20220421},d="Term Reference Resolution Tool",p={unversionedId:"spec-tools/trrt",id:"spec-tools/trrt",title:"Term Reference Resolution Tool",description:"text to mark",source:"@site/docs/spec-tools/13-trrt.md",sourceDirName:"spec-tools",slug:"/spec-tools/trrt",permalink:"/tev2-specifications/docs/spec-tools/trrt",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-tools/13-trrt.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:13,frontMatter:{id:"trrt",sidebar_label:"Term Ref Resolution",date:20220421},sidebar:"tev2SideBar",previous:{title:"MRG Importer",permalink:"/tev2-specifications/docs/spec-tools/mrg-importer"},next:{title:"Terminology Construction",permalink:"/tev2-specifications/docs/spec-tools/terminology-construction"}},f={},m=[{value:"Installing the Tool",id:"installing-the-tool",level:2},{value:"Calling the Tool",id:"calling-the-tool",level:2},{value:"Term Ref Resolution",id:"term-ref-resolution",level:2},{value:"Interpretation of the Term Ref",id:"interpretation-of-the-term-ref",level:3},{value:"showtext (required)",id:"showtext",level:4},{value:"scopetag (optional)",id:"scopetag",level:4},{value:"vsntag (optional)",id:"vsntag",level:4},{value:"term (optional)",id:"id",level:4},{value:"trait (optional)",id:"trait",level:4},{value:"Locating the identified MRG Entry",id:"locating-the-identified-mrg-entry",level:3},{value:"Rewriting the Term Ref with a Renderable Ref",id:"rewriting-the-term-ref-with-a-renderable-ref",level:3},{value:"Processing, Errors and Warnings",id:"processing-errors-and-warnings",level:2},{value:"Deploying the Tool",id:"deploying-the-tool",level:2}],u=function(e){var t=e.children;return(0,n.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},t)},g={toc:m,mark:u};function y(e){var t=e.components,i=(0,o.Z)(e,c);return(0,n.kt)("wrapper",(0,a.Z)({},g,i,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"term-reference-resolution-tool"},"Term Reference Resolution Tool"),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"Term ref resolution is the same process as we use for ingestion, and other conversions, as (will be) explained in the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/profile-templates"},"profiles template section"),". When that 'conversion pattern' is stable and properly documented, we need to revise this section to align with those descriptions.")),(0,n.kt)("p",null,"The ",(0,n.kt)("strong",{parentName:"p"},"Term Ref(erence) Resolution Tool (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),")")," takes files that contain so-called ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," and outputs a copy of these files in which these ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," are converted into so-called ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable refs"),", i.e. texts that can be further processed by tools such as GitHub pages, Docusaurus, etc. The result of this is that the rendered document contains markups that help ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"readers")," to quickly find more explanations of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concept")," or other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that is being referenced."),(0,n.kt)("p",null,"There is currently one implementation of the tool:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the repo is ",(0,n.kt)("a",{parentName:"li",href:"https://github.com/tno-terminology-design/trrt"},"here"),"."),(0,n.kt)("li",{parentName:"ul"},"the documentation is ",(0,n.kt)("a",{parentName:"li",href:"https://tno-terminology-design.github.io/trrt"},"here"),".")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples"),(0,n.kt)("p",null,"Consider the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," ",(0,n.kt)("inlineCode",{parentName:"p"},"[the purpose of actors](actor#purpose@essif-lab)"),". Here are a number of ways that it can be converted into:"),(0,n.kt)(s.Z,{defaultValue:"markdown",values:[{label:"Markdown",value:"markdown"},{label:"HTML",value:"html"},{label:"eSSIF-Lab Style",value:"essiflab-style"}],mdxType:"Tabs"},(0,n.kt)(h.Z,{value:"markdown",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-markdown"}," [the purpose of actors](/framework/docs/terms/actor#purpose)\n")),(0,n.kt)("p",null,"which is text that a markdown interpreter will render into a text ",(0,n.kt)("inlineCode",{parentName:"p"},"the purpose of actors")," that hyperlinks to the (relative) path ",(0,n.kt)("inlineCode",{parentName:"p"},"/framework/docs/terms/actor#purpose"),".")),(0,n.kt)(h.Z,{value:"html",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-html"},' \n the purpose of actors\n ,\n')),(0,n.kt)("p",null,"which is code that will render the text ",(0,n.kt)("inlineCode",{parentName:"p"},"the purpose of actors")," as a (boldface) hyperlink, that, when clicked, will navigate to the ",(0,n.kt)("inlineCode",{parentName:"p"},"purpose")," section of the page that documents (the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," called ",(0,n.kt)("inlineCode",{parentName:"p"},"actor"),".")),(0,n.kt)(h.Z,{value:"essiflab-style",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-html"},' the purpose of actors\n \n')),(0,n.kt)("p",null,"Note that this text is not readily renderable in a browser. ",(0,n.kt)("inlineCode",{parentName:"p"},"")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"")," represent a React component that supports linking and tooltip functionality, so that users hovering over the link will see a popup/tooltip with the text ",(0,n.kt)("inlineCode",{parentName:"p"},""),". This functionality is expected to be provided by an appropriate plugin in the static website generator.")))),(0,n.kt)("p",null,"Conceptually, ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," conversion is a simple two-step process:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is interpreted, the result of which is a set of variables (or if regexes are used: ",(0,n.kt)("a",{parentName:"li",href:"https://riptutorial.com/regex/example/2479/named-capture-groups"},"named capturing groups"),") whose contents ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," from a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"."),(0,n.kt)("li",{parentName:"ol"},"Then, using the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is replaced by a converter with a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref"),", of the kind as specified by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT's")," command line arguments or configuration file. Through the use of converters, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref")," may include all sorts of code that is processed further by other, third party rendering tools.")),(0,n.kt)("p",null,"By cleanly separating ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," interpretation from the part where it is overwritten with a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref"),", it becomes easy to extend the capabilities of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," to include ways for rendering ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),", e.g. for LaTeX, PDF, docx, odt and other formats, as well as for formats that we currently do not even know we would like to have."),(0,n.kt)("p",null,"In order to convert ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," into ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable refs"),", ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," expects the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," and the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from within which it is being called, to be available. The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is used to resolve all links to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are part of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," is used to locate the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs")," of any (other) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," whose ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," is used as part of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," that needs to be resolved."),(0,n.kt)("h2",{id:"installing-the-tool"},"Installing the Tool"),(0,n.kt)("p",null,"The tool can be installed from the command line and made globally available by executing"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"npm install tno-terminology-design/trrt -g\n")),(0,n.kt)("h2",{id:"calling-the-tool"},"Calling the Tool"),(0,n.kt)("p",null,"The behavior of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," can be configured per call e.g. by a configuration file and/or command-line parameters. The command-line syntax is as follows:"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"trrt [ ] [ ]\n")),(0,n.kt)("p",null,"where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," (optional) is a list of key-value pairs"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},(0,n.kt)("inlineCode",{parentName:"a"},"globpattern"))," (optional) specifies a set of (input) files that are to be processed. If a configuration file is used, its contents may specify an additional set of input files to be processed.")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("p",null,"The columns in the following table are defined as follows:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Key"))," is the text to be used as a key."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Value"))," represents the kind of value to be used."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),") the field is required to be present when the tool is being called. If required, it MUST either be present in the configuration file, or as a command-line parameter."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the ",(0,n.kt)("inlineCode",{parentName:"li"},"Value")," field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"left"},"Key"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Value"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"config")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path (including the filename) of the tool's (YAML) configuration file. This file contains the default key-value pairs to be used. Allowed keys (and the associated values) are documented in this table. Command-line arguments override key-value pairs specified in the configuration file. This parameter MUST NOT appear in the configuration file itself.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"input")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{parentName:"td",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"Globpattern")," that specifies the set of (input) files that are to be processed.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"output")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"(Root) directory where output files are to be written. This directory is specified as an absolute or relative path.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," from which the tool is called. It MUST contain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which we will refer to as the 'current scope' for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"version")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is to be used to resolve ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," for which neither a ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," nor a ",(0,n.kt)("inlineCode",{parentName:"td"},"version")," part has been specified (which is the most common case). It MUST match either the ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," field, or an element of the ",(0,n.kt)("inlineCode",{parentName:"td"},"altvsntags")," field as specified in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#versions"},(0,n.kt)("inlineCode",{parentName:"a"},"versions")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". When not specified, its value is taken from the ",(0,n.kt)("inlineCode",{parentName:"td"},"defaultvsn")," field in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/mrg#mrg-terminology"},"terminology section")," of the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," (which is ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," by the contents of the ",(0,n.kt)("inlineCode",{parentName:"td"},"mrgfile")," field (in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"scope")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),").")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"interpreter")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Allows for the switching between interpreter types. By default the ",(0,n.kt)("inlineCode",{parentName:"td"},"AltInterpreter")," and ",(0,n.kt)("inlineCode",{parentName:"td"},"StandardInterpreter")," are available. When this parameter is omitted, the basic ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," syntax is used.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"converter")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("inlineCode",{parentName:"td"},"")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"The type of converter which creates the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable refs"),". When this parameter is omitted, the Markdown converter is used.")))),(0,n.kt)("h2",{id:"term-ref-resolution"},"Term Ref Resolution"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," resolution process has three steps:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Interpretation of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," into variables that can be used to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),";"),(0,n.kt)("li",{parentName:"ol"},"Locating the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG Entry"),";"),(0,n.kt)("li",{parentName:"ol"},"Rewriting the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," with a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref"),".")),(0,n.kt)("h3",{id:"interpretation-of-the-term-ref"},"Interpretation of the Term Ref"),(0,n.kt)("p",null,"The following kinds of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," syntaxes are (to be) supported:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-syntax/term-ref-syntax#basic-syntax"},"basic syntax"),", i.e. ","[",(0,n.kt)("inlineCode",{parentName:"li"},"show text"),"]","(",(0,n.kt)("inlineCode",{parentName:"li"},"term"),"#",(0,n.kt)("inlineCode",{parentName:"li"},"trait"),"@",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag"),":",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag"),");"),(0,n.kt)("li",{parentName:"ul"},"the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-syntax/term-ref-syntax#alternative-syntax"},"alternative syntax"),", e.g. ","[",(0,n.kt)("inlineCode",{parentName:"li"},"show text"),"@","]",", which basically moves the ",(0,n.kt)("inlineCode",{parentName:"li"},"@"),"-character from the basic syntax within the square brackets, which in many (if not most) cases is more convenient for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors"),", but has the drawback that the rendering of the plain markdown text would be rendered as ","[show text@]",", which may be inconvenient.")),(0,n.kt)("p",null,"Interpretation of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," leads to the population of the following variables (or, in case regexes are used, named capturing groups):"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Using regexes to find the values for the variables"),(0,n.kt)("p",null,"Finding a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," in the file can be done by using a regular expressions (regexes - you can use ",(0,n.kt)("a",{parentName:"p",href:"https://www.debuggex.com/"},"debuggex")," to see what these regexps do (make sure you choose PCRE as the regex flavor to work with))."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"For the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-syntax/term-ref-syntax#basic-syntax"},"basic syntax"),", you can use the PCRE regex"),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.debuggex.com/r/G1uvznpNG1mhqEx5"},(0,n.kt)("inlineCode",{parentName:"a"},"(?:(?<=[^`\\\\])|^)\\[(?=[^@\\]]+\\]\\([#a-z0-9_-]*@[:a-z0-9_-]*\\))"))," to find the ",(0,n.kt)("inlineCode",{parentName:"li"},"[")," that starts a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),", and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.debuggex.com/r/36D57uOvsnyPehh3"},(0,n.kt)("inlineCode",{parentName:"a"},"(?[^\\n\\]@]+)\\]\\((?:(?[a-z0-9_-]*)?(?:#(?[a-z0-9_-]+))?)?@(?[a-z0-9_-]*)(?::(?[a-z0-9_-]+))?\\)"))," to find the various parts of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," as (named) capturing groups."))),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"For the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-syntax/term-ref-syntax#alternative-syntax"},"alternative syntax"),", you can use the PCRE regex"),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.debuggex.com/r/7dEYEdoc52QeIxf4"},(0,n.kt)("inlineCode",{parentName:"a"},"(?:(?<=[^`\\\\])|^)\\[(?=[^@\\]]+@[:a-z0-9_-]*\\](?:\\([#a-z0-9_-]+\\))?)"))," to find the ",(0,n.kt)("inlineCode",{parentName:"li"},"[")," that starts a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),", and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.debuggex.com/r/tMBiAk_W9ipNc9Mm"},(0,n.kt)("inlineCode",{parentName:"a"},"(?[^\\n\\]@]+?)@(?[a-z0-9_-]*)(?::(?[a-z0-9_-]+?))?\\](?:\\((?[a-z0-9_-]*)(?:#(?[a-z0-9_-]+?))?\\))?"))," to subsequently obtain the various fields as (named) capturing groups from the PCRE regex.")))),(0,n.kt)("p",null,"Note that when a value of a named capturing group is empty, it is filled by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," with (default) values according to the specifications below.")),(0,n.kt)("h4",{id:"showtext"},(0,n.kt)("inlineCode",{parentName:"h4"},"showtext")," (required)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," is a (non-empty) text that will be highlighed/enhanced, and will become clickable and/or receive other features when rendered. It MUST NOT be empty, and it MUST NOT contain the characters ",(0,n.kt)("inlineCode",{parentName:"p"},"@")," or ",(0,n.kt)("inlineCode",{parentName:"p"},"]")," (which we need to be able to distinguish between ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," and other links)."),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The alternative notation assumes that the ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," part of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," won't contain the ",(0,n.kt)("inlineCode",{parentName:"p"},"@")," character. However, it is likely that some ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," will want to use an email address as the ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," part of a ",(0,n.kt)("em",{parentName:"p"},"regular")," link, e.g. as in ",(0,n.kt)("inlineCode",{parentName:"p"},"[rieks.joosten@tno.nl](mailto:rieks.joosten@tno.nl)"),". However, since ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," should not contain ",(0,n.kt)("inlineCode",{parentName:"p"},"."),"-characters, ",(0,n.kt)("inlineCode",{parentName:"p"},"[rieks.joosten@tno.nl]")," does not qualify as a ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," in our syntax. Also, it would be detectable if such syntax is followed by ",(0,n.kt)("inlineCode",{parentName:"p"},"(mailto:"),". Any detected problems must result in a proper warning, and the suggestion that email addresses can be used in a ",(0,n.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#urls-and-email-addresses"},"link with angle brackets"),", e.g. ",(0,n.kt)("inlineCode",{parentName:"p"},""),".")),(0,n.kt)("h4",{id:"scopetag"},(0,n.kt)("inlineCode",{parentName:"h4"},"scopetag")," (optional)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"scopetag")," is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is to be resolved."),(0,n.kt)("p",null,"If specified, it MUST appear in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," is called), as an element of the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetags")," field of one of elements in the list of ",(0,n.kt)("inlineCode",{parentName:"p"},"scopes"),". That element also contains a ",(0,n.kt)("inlineCode",{parentName:"p"},"scopedir")," field, that can subsequently be used to obtain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("p",null,"If not specified, the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," is being called) will be used. This SHOULD be the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the document containing the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is being maintained. Note that the preceding ",(0,n.kt)("inlineCode",{parentName:"p"},"@")," sign may never be omitted because as it serves the purpose to distinguish ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," from other ",(0,n.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"Markdown links"),". A ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag")," shall only contain characters in regex ",(0,n.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-]"),"."),(0,n.kt)("h4",{id:"vsntag"},(0,n.kt)("inlineCode",{parentName:"h4"},"vsntag")," (optional)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (as ","[identified]"," by the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag"),"). It MUST appear either in the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field, or as one of the elements in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," that contains the administration of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("p",null,"If omitted (in which case the preceding ",(0,n.kt)("inlineCode",{parentName:"p"},":"),"-character may also be omitted from the syntax), its value will ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," the default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (as ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#terminology"},"specified")," in the ",(0,n.kt)("inlineCode",{parentName:"p"},"mrgfile")," field os the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),")."),(0,n.kt)("h4",{id:"id"},(0,n.kt)("inlineCode",{parentName:"h4"},"term")," (optional)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"term")," is a text that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),", and is specified in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that documents that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," (in a specific version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"). It will be matched against the ",(0,n.kt)("inlineCode",{parentName:"p"},"term")," fields of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that documents said ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),"."),(0,n.kt)("p",null,"If omitted, "," it is generated as follows (assuming the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," to be used has already been ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified"),"):"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"set ",(0,n.kt)("inlineCode",{parentName:"li"},"term"),":=",(0,n.kt)("inlineCode",{parentName:"li"},"showtext"),";"),(0,n.kt)("li",{parentName:"ul"},"convert every character in the (regex) range ",(0,n.kt)("inlineCode",{parentName:"li"},"[A-Z]")," to lower-case;"),(0,n.kt)("li",{parentName:"ul"},"convert every sequence of characters ",(0,n.kt)("inlineCode",{parentName:"li"},"[^A-Za-z_-]+")," to (a single) ",(0,n.kt)("inlineCode",{parentName:"li"},"-")," character;"),(0,n.kt)("li",{parentName:"ul"},"if the resulting ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-syntax/form-phrase-syntax"},"matches an element in the list of texts")," in the ",(0,n.kt)("inlineCode",{parentName:"li"},"formphrases")," field of an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", then replace ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," with the contents of the ",(0,n.kt)("inlineCode",{parentName:"li"},"term"),"-field of that same ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),".")),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"We should clarify the extent to which this ",(0,n.kt)("inlineCode",{parentName:"p"},"matching")," supports formphrase macro's, Currently, this is documented as part of the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-syntax/form-phrase-syntax"},"form-phrase syntax")," which doesn't seem right.")),(0,n.kt)("p",null,"It is an error if the resulting ",(0,n.kt)("inlineCode",{parentName:"p"},"term")," does not ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," in the selected ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),". This may mean that the ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," has misspellings, the ",(0,n.kt)("inlineCode",{parentName:"p"},"term")," field was not specified where it had to, or the list of ",(0,n.kt)("inlineCode",{parentName:"p"},"formphrases")," in some ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," should have included more elements."),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},(0,n.kt)("a",{parentName:"p",href:"https://tartarus.org/martin/PorterStemmer/"},"The Porter Stemming Algorithm")," is a process for removing the commoner morphological and inflexional endings from words in English. Its main use is as part of a term normalisation process that is usually done when setting up Information Retrieval systems. The mentioned site links to lots of freely useable code that the TRRT might want to consider using."),(0,n.kt)("p",{parentName:"admonition"},"Perhaps the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," may use this tool as a means for generating the ",(0,n.kt)("inlineCode",{parentName:"p"},"term")," field from the ",(0,n.kt)("inlineCode",{parentName:"p"},"showtext")," if necessary. However, we would need to first experiment with that to see whether or not, c.q. to what extent this conversion does what it is expected to do.")),(0,n.kt)("h4",{id:"trait"},(0,n.kt)("inlineCode",{parentName:"h4"},"trait")," (optional)"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"trait")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a particular kind of descriptive text that is associated with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),". If specified, it must be one of the elements in the list of headingid's as specified in ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/mrg#mrg-entries"},"the ",(0,n.kt)("inlineCode",{parentName:"a"},"headingids")," field")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),". If omitted, the preceding ",(0,n.kt)("inlineCode",{parentName:"p"},"#"),"-character should also be omitted."),(0,n.kt)("h3",{id:"locating-the-identified-mrg-entry"},"Locating the identified MRG Entry"),(0,n.kt)("p",null,"As soon as the variables have been provided with a value, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," can be found by following a sequence of steps:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"get the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," associated with the ",(0,n.kt)("inlineCode",{parentName:"strong"},"scope")," variable of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")),". If the value of the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag")," variable is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," of the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (as specified when the ",(0,n.kt)("a",{parentName:"p",href:"#calling-the-tool"},"tool was called"),"), then use the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),". Otherwise, look up the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," from the ",(0,n.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#scopes"},(0,n.kt)("inlineCode",{parentName:"a"},"scopes")," section")," of the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". From the resulting ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),", read the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (i.e. the ",(0,n.kt)("inlineCode",{parentName:"p"},"saf.yaml")," file in the root of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),").")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"get the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," associated with the ",(0,n.kt)("inlineCode",{parentName:"strong"},"vsntag")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")),". Search the element in the ",(0,n.kt)("a",{parentName:"p",href:"docs/spec-files/mrg#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," where the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," variable is either the value of the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field, or appears as one of the elements in the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntags")," field. Then, obtain the filename of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from the ",(0,n.kt)("inlineCode",{parentName:"p"},"mrgfile")," field of that element.")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"identify the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," associated with the ",(0,n.kt)("inlineCode",{parentName:"strong"},"id")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")),". Get the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from the location specified by the URL ",(0,n.kt)("inlineCode",{parentName:"p"},""),"/",(0,n.kt)("inlineCode",{parentName:"p"},""),"/",(0,n.kt)("inlineCode",{parentName:"p"},"")," (which are all in the context of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," as identified by the ",(0,n.kt)("inlineCode",{parentName:"p"},"scopetag")," variable). The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," will be ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," by a process that starts with the set of all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," that exist in the selected ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", and then weeding out any non-matching ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," by applying the following steps:"),(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"since ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," must be present, all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," are removed whose ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," field differs from the ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," variable;"),(0,n.kt)("li",{parentName:"ul"},"then, if the variable ",(0,n.kt)("inlineCode",{parentName:"li"},"termtype")," is present, all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries")," whose ",(0,n.kt)("inlineCode",{parentName:"li"},"termtype")," field has a different value from what that variable holds, are removed from the set;"),(0,n.kt)("li",{parentName:"ul"},"If the resulting set contains exactly one ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", this is the one that is selected; otherwise, a warning is raised.")))),(0,n.kt)("h3",{id:"rewriting-the-term-ref-with-a-renderable-ref"},"Rewriting the Term Ref with a Renderable Ref"),(0,n.kt)("img",{alt:"From this point onward, texts are under construction",src:(0,r.Z)("images/wip/wip-under-construction-from-here-onward.png")}),(0,n.kt)("br",null),(0,n.kt)("br",null),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," will by default dereference to a human readable, rendered version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," associated with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", which can be obtained through the URL located in the ",(0,n.kt)("inlineCode",{parentName:"p"},"navurl")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),", which the text ",(0,n.kt)("inlineCode",{parentName:"p"},"#")," is appended if a ",(0,n.kt)("inlineCode",{parentName:"p"},"trait")," was specified."),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"We should think about how to document ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable refs")," in such a way that they can easily be found and used for different roles (",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors"),", curators, developers) and purposes (writing a trrt-config file, adding a new type of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/renderable-ref",hovertext:"Renderable Ref: a text with which the TRRT replaces a TermRef, that can be processed by specific third party rendering tools, the result of which is a rendering of the original TermRef that has additional characteristics that help Readers to (better) understand the intention of its Author."},"renderable ref"),", etc.).")),(0,n.kt)("p",null,"The text with which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is to be replaced can have various formats. This enables the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," to be used in different contexts, and its results to be further processed by a variety of third-party rendering tools."),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Examples of term-ref replacements"),(0,n.kt)(s.Z,{defaultValue:"simple",values:[{label:"ToIP Style",value:"simple"},{label:"eSSIF-Lab Style",value:"complex"}],mdxType:"Tabs"},(0,n.kt)(h.Z,{value:"simple",mdxType:"TabItem"},(0,n.kt)("p",null,"The simplest example is where a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is replaced with a regular ",(0,n.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown link")),(0,n.kt)("p",null,"In this case, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," ",(0,n.kt)("inlineCode",{parentName:"p"},"[Actions](@)")," is replaced with ",(0,n.kt)("inlineCode",{parentName:"p"},"[Actions](/#action)"),"\nwhere:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"hrgfile")," is the contents of the field ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".",(0,n.kt)("inlineCode",{parentName:"li"},"scope.hrgfile"),".")),(0,n.kt)("p",null,"Note that if the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," refers to a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that differs from the current ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", then the URL should be preceeded by the text specified in the ",(0,n.kt)("inlineCode",{parentName:"p"},"website")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", because it would not be a relative (local) hyperlink.")),(0,n.kt)(h.Z,{value:"complex",mdxType:"TabItem"},(0,n.kt)("p",null,"A more complex example is what is done within eSSIF-Lab, where the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," not only want ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," to be linked to their (rendered) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),", but also want them to be provided with a tooltip that states their ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definitions"),"."),(0,n.kt)("p",null,"In this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," ",(0,n.kt)("inlineCode",{parentName:"p"},"[Actions](@)")," is replaced with ",(0,n.kt)("inlineCode",{parentName:"p"},'Actions'),"\nwhere:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," is the text provided in the ",(0,n.kt)("inlineCode",{parentName:"li"},"hoverText")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," whose ",(0,n.kt)("inlineCode",{parentName:"li"},"term")," field is ",(0,n.kt)("inlineCode",{parentName:"li"},"action"),", and"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"")," and ",(0,n.kt)("inlineCode",{parentName:"li"},"")," represent a React component that supports linking and tooltip functionality, so that users hovering over the link will see a popup/tooltip with the text ",(0,n.kt)("inlineCode",{parentName:"li"},""),", and will navigate to the location of the (human readable, i.e. rendered) file that contains details and further explanations, as specified in the ",(0,n.kt)("inlineCode",{parentName:"li"},"navurl")," field of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),".")),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"The implementation of the ",(0,n.kt)("inlineCode",{parentName:"p"},"")," ... ",(0,n.kt)("inlineCode",{parentName:"p"},"")," construct will differ from that which is used by eSSIF-Lab, because a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is defined in this, or another ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", lives in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file")," at ",(0,n.kt)("inlineCode",{parentName:"p"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"p"},"curatedir"),"/",(0,n.kt)("inlineCode",{parentName:"p"},"locator"),", where"),(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"scopedir")," is the URL that locates the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),";"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"curatedir")," is the directory in that ",(0,n.kt)("inlineCode",{parentName:"li"},"scopedir")," where ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic units")," (c.q. ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),") live; its value is found both in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," and in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),";"),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("inlineCode",{parentName:"li"},"locator")," is the path (including filename), relative to ",(0,n.kt)("inlineCode",{parentName:"li"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"li"},"curatedir"),"/, of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated file")," that describes the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that is being referred to.")))))),(0,n.kt)("p",null,"The essentials of the rewriting start with the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," is called, and proceed as follows:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"access the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", and in case the ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag")," is not of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", look up the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," associated with that ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag")," and obtain its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),";"),(0,n.kt)("li",{parentName:"ul"},"using the ",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag"),", locate the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," (or if ",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag")," isn't specified, use the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," default ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-file as specified in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope's")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),");"),(0,n.kt)("li",{parentName:"ul"},"Find the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," that has a ",(0,n.kt)("inlineCode",{parentName:"li"},"term"),"-field that is the same as ",(0,n.kt)("inlineCode",{parentName:"li"},"term"),";")),(0,n.kt)("p",null,"At this point, all data is available for constructing the replacement text. As we have seen, it depends on the situation that need to be supported how the actual construction needs to be done."),(0,n.kt)("h2",{id:"processing-errors-and-warnings"},"Processing, Errors and Warnings"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," starts by reading its command-line and configuration file. If the command-line has a key that is also found in the configuration file, the command-line key-value pair takes precedence. The resulting set of key-value pairs is tested for proper syntax and validity. Every improper syntax and every invalidity found will be logged. Improper syntax may be e.g. an invalid ",(0,n.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Glob_(programming)#Syntax"},"globpattern"),". Invalidities include non-existing directories or files, lack of write-permissions where needed, etc."),(0,n.kt)("p",null,"Then, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," reads the specified input files (in arbitrary order), and for each of them, produces an output file that is the same as the input file except for the fact that all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," have been replaced with regular ",(0,n.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown links"),", and (optionally) with additional texts that are to be used by third-party rendering tools for enhanced rendering of such links. An example of this would be text that can be used to enhance a link with a popup that contains the definition, or a description of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," that is being referenced."),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," logs every error- and/or warning condition that it comes across while processing its configuration file, commandline parameters, and input files, in a way that helps tool-operators and document ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to identify and fix such conditions."),(0,n.kt)("h2",{id:"deploying-the-tool"},"Deploying the Tool"),(0,n.kt)("p",null,"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," comes with documentation that enables developers to ascertain its correct functioning (e.g. by using a test set of files, test scripts that exercise its parameters, etc.), and also enables them to deploy the tool in a git repo and author/modify CI-pipes to use that deployment."))}y.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/83d6452b.133566f5.js b/assets/js/83d6452b.66085f0e.js similarity index 98% rename from assets/js/83d6452b.133566f5.js rename to assets/js/83d6452b.66085f0e.js index 1a5650cf87..600952cb25 100644 --- a/assets/js/83d6452b.133566f5.js +++ b/assets/js/83d6452b.66085f0e.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[1437],{3905:function(e,t,r){r.d(t,{Zo:function(){return p},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):c(c({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,p=a(e,["components","mdxType","originalType","parentName"]),f=l(r),d=o,m=f["".concat(s,".").concat(d)]||f[d]||u[d]||i;return r?n.createElement(m,c(c({ref:t},p),{},{components:r})):n.createElement(m,c({ref:t},p))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,c=new Array(i);c[0]=f;var a={};for(var s in t)hasOwnProperty.call(t,s)&&(a[s]=t[s]);a.originalType=e,a.mdxType="string"==typeof e?e:o,c[1]=a;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):c(c({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,p=a(e,["components","mdxType","originalType","parentName"]),f=l(r),d=o,m=f["".concat(s,".").concat(d)]||f[d]||u[d]||i;return r?n.createElement(m,c(c({ref:t},p),{},{components:r})):n.createElement(m,c({ref:t},p))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,c=new Array(i);c[0]=f;var a={};for(var s in t)hasOwnProperty.call(t,s)&&(a[s]=t[s]);a.originalType=e,a.mdxType="string"==typeof e?e:o,c[1]=a;for(var l=2;l=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}var c=o.createContext({}),p=function(t){var e=o.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):r(r({},e),t)),n},l=function(t){var e=p(t.components);return o.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},u=o.forwardRef((function(t,e){var n=t.components,i=t.mdxType,a=t.originalType,c=t.parentName,l=s(t,["components","mdxType","originalType","parentName"]),u=p(n),m=i,f=u["".concat(c,".").concat(m)]||u[m]||h[m]||a;return n?o.createElement(f,r(r({ref:e},l),{},{components:n})):o.createElement(f,r({ref:e},l))}));function m(t,e){var n=arguments,i=e&&e.mdxType;if("string"==typeof t||i){var a=n.length,r=new Array(a);r[0]=u;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:i,r[1]=s;for(var p=2;p=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}var c=o.createContext({}),p=function(t){var e=o.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):r(r({},e),t)),n},l=function(t){var e=p(t.components);return o.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},u=o.forwardRef((function(t,e){var n=t.components,i=t.mdxType,a=t.originalType,c=t.parentName,l=s(t,["components","mdxType","originalType","parentName"]),u=p(n),m=i,f=u["".concat(c,".").concat(m)]||u[m]||h[m]||a;return n?o.createElement(f,r(r({ref:e},l),{},{components:n})):o.createElement(f,r({ref:e},l))}));function m(t,e){var n=arguments,i=e&&e.mdxType;if("string"==typeof t||i){var a=n.length,r=new Array(a);r[0]=u;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:i,r[1]=s;for(var p=2;p=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var h=n.createContext({}),c=function(e){var t=n.useContext(h),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},d=function(e){var t=c(e.components);return n.createElement(h.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,a=e.originalType,h=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),f=c(r),p=i,u=f["".concat(h,".").concat(p)]||f[p]||l[p]||a;return r?n.createElement(u,o(o({ref:t},d),{},{components:r})):n.createElement(u,o({ref:t},d))}));function p(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=r.length,o=new Array(a);o[0]=f;var s={};for(var h in t)hasOwnProperty.call(t,h)&&(s[h]=t[h]);s.originalType=e,s.mdxType="string"==typeof e?e:i,o[1]=s;for(var c=2;c=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var h=n.createContext({}),c=function(e){var t=n.useContext(h),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},d=function(e){var t=c(e.components);return n.createElement(h.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,a=e.originalType,h=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),f=c(r),p=i,u=f["".concat(h,".").concat(p)]||f[p]||l[p]||a;return r?n.createElement(u,o(o({ref:t},d),{},{components:r})):n.createElement(u,o({ref:t},d))}));function p(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=r.length,o=new Array(a);o[0]=f;var s={};for(var h in t)hasOwnProperty.call(t,h)&&(s[h]=t[h]);s.originalType=e,s.mdxType="string"==typeof e?e:i,o[1]=s;for(var c=2;c=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=a.createContext({}),p=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},f=function(e){var t=p(e.components);return a.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,f=s(e,["components","mdxType","originalType","parentName"]),u=p(r),d=n,m=u["".concat(c,".").concat(d)]||u[d]||l[d]||o;return r?a.createElement(m,i(i({ref:t},f),{},{components:r})):a.createElement(m,i({ref:t},f))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,i=new Array(o);i[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,i[1]=s;for(var p=2;p=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=a.createContext({}),p=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},f=function(e){var t=p(e.components);return a.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,f=s(e,["components","mdxType","originalType","parentName"]),u=p(r),d=n,m=u["".concat(c,".").concat(d)]||u[d]||l[d]||o;return r?a.createElement(m,i(i({ref:t},f),{},{components:r})):a.createElement(m,i({ref:t},f))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,i=new Array(o);i[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,i[1]=s;for(var p=2;p=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(r),f=i,d=m["".concat(c,".").concat(f)]||m[f]||u[f]||o;return r?n.createElement(d,a(a({ref:t},p),{},{components:r})):n.createElement(d,a({ref:t},p))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,a=new Array(o);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var l=2;l=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(r),f=i,d=m["".concat(c,".").concat(f)]||m[f]||u[f]||o;return r?n.createElement(d,a(a({ref:t},p),{},{components:r})):n.createElement(d,a({ref:t},p))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,a=new Array(o);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var l=2;l=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=i.createContext({}),p=function(e){var t=i.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},l=function(e){var t=p(e.components);return i.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=p(n),u=o,f=d["".concat(c,".").concat(u)]||d[u]||m[u]||a;return n?i.createElement(f,r(r({ref:t},l),{},{components:n})):i.createElement(f,r({ref:t},l))}));function u(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,r=new Array(a);r[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var p=2;p=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=i.createContext({}),p=function(e){var t=i.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},l=function(e){var t=p(e.components);return i.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=p(n),u=o,f=d["".concat(c,".").concat(u)]||d[u]||m[u]||a;return n?i.createElement(f,r(r({ref:t},l),{},{components:n})):i.createElement(f,r({ref:t},l))}));function u(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,r=new Array(a);r[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var p=2;p=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):r(r({},t),e)),o},p=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,p=a(e,["components","mdxType","originalType","parentName"]),u=h(o),f=n,l=u["".concat(c,".").concat(f)]||u[f]||d[f]||s;return o?i.createElement(l,r(r({ref:t},p),{},{components:o})):i.createElement(l,r({ref:t},p))}));function f(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=o.length,r=new Array(s);r[0]=u;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:n,r[1]=a;for(var h=2;h=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):r(r({},t),e)),o},p=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,p=a(e,["components","mdxType","originalType","parentName"]),u=h(o),f=n,l=u["".concat(c,".").concat(f)]||u[f]||d[f]||s;return o?i.createElement(l,r(r({ref:t},p),{},{components:o})):i.createElement(l,r({ref:t},p))}));function f(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=o.length,r=new Array(s);r[0]=u;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:n,r[1]=a;for(var h=2;h=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=i.createContext({}),l=function(e){var t=i.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(n),f=r,u=m["".concat(c,".").concat(f)]||m[f]||d[f]||o;return n?i.createElement(u,a(a({ref:t},p),{},{components:n})):i.createElement(u,a({ref:t},p))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,a=new Array(o);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,a[1]=s;for(var l=2;l=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=i.createContext({}),l=function(e){var t=i.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=l(n),f=r,u=m["".concat(c,".").concat(f)]||m[f]||d[f]||o;return n?i.createElement(u,a(a({ref:t},p),{},{components:n})):i.createElement(u,a({ref:t},p))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,a=new Array(o);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,a[1]=s;for(var l=2;l=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=i.createContext({}),p=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},m=function(e){var t=p(e.components);return i.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var o=e.components,r=e.mdxType,n=e.originalType,c=e.parentName,m=a(e,["components","mdxType","originalType","parentName"]),u=p(o),g=r,d=u["".concat(c,".").concat(g)]||u[g]||l[g]||n;return o?i.createElement(d,s(s({ref:t},m),{},{components:o})):i.createElement(d,s({ref:t},m))}));function g(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var n=o.length,s=new Array(n);s[0]=u;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:r,s[1]=a;for(var p=2;p=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=i.createContext({}),p=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},m=function(e){var t=p(e.components);return i.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var o=e.components,r=e.mdxType,n=e.originalType,c=e.parentName,m=a(e,["components","mdxType","originalType","parentName"]),u=p(o),g=r,d=u["".concat(c,".").concat(g)]||u[g]||l[g]||n;return o?i.createElement(d,s(s({ref:t},m),{},{components:o})):i.createElement(d,s({ref:t},m))}));function g(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var n=o.length,s=new Array(n);s[0]=u;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:r,s[1]=a;for(var p=2;p=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var c=n.createContext({}),l=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):o(o({},t),e)),i},p=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var i=e.components,a=e.mdxType,r=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),u=l(i),d=a,m=u["".concat(c,".").concat(d)]||u[d]||h[d]||r;return i?n.createElement(m,o(o({ref:t},p),{},{components:i})):n.createElement(m,o({ref:t},p))}));function d(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var r=i.length,o=new Array(r);o[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:a,o[1]=s;for(var l=2;l=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var c=n.createContext({}),l=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):o(o({},t),e)),i},p=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var i=e.components,a=e.mdxType,r=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),u=l(i),d=a,m=u["".concat(c,".").concat(d)]||u[d]||h[d]||r;return i?n.createElement(m,o(o({ref:t},p),{},{components:i})):n.createElement(m,o({ref:t},p))}));function d(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var r=i.length,o=new Array(r);o[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:a,o[1]=s;for(var l=2;l=0||(s[i]=e[i]);return s}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var c=o.createContext({}),l=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},h=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var i=e.components,s=e.mdxType,n=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),d=l(i),f=s,m=d["".concat(c,".").concat(f)]||d[f]||p[f]||n;return i?o.createElement(m,a(a({ref:t},h),{},{components:i})):o.createElement(m,a({ref:t},h))}));function f(e,t){var i=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var n=i.length,a=new Array(n);a[0]=d;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:s,a[1]=r;for(var l=2;l=0||(s[i]=e[i]);return s}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var c=o.createContext({}),l=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},h=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var i=e.components,s=e.mdxType,n=e.originalType,c=e.parentName,h=r(e,["components","mdxType","originalType","parentName"]),d=l(i),f=s,m=d["".concat(c,".").concat(f)]||d[f]||p[f]||n;return i?o.createElement(m,a(a({ref:t},h),{},{components:i})):o.createElement(m,a({ref:t},h))}));function f(e,t){var i=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var n=i.length,a=new Array(n);a[0]=d;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:s,a[1]=r;for(var l=2;l=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),d=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):r(r({},t),e)),o},h=function(e){var t=d(e.components);return i.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=d(o),m=n,f=p["".concat(c,".").concat(m)]||p[m]||l[m]||a;return o?i.createElement(f,r(r({ref:t},h),{},{components:o})):i.createElement(f,r({ref:t},h))}));function m(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,r=new Array(a);r[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,r[1]=s;for(var d=2;d=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),d=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):r(r({},t),e)),o},h=function(e){var t=d(e.components);return i.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=d(o),m=n,f=p["".concat(c,".").concat(m)]||p[m]||l[m]||a;return o?i.createElement(f,r(r({ref:t},h),{},{components:o})):i.createElement(f,r({ref:t},h))}));function m(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,r=new Array(a);r[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,r[1]=s;for(var d=2;d=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var m=o.createContext({}),c=function(e){var t=o.useContext(m),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},h=function(e){var t=c(e.components);return o.createElement(m.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},p=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,r=e.originalType,m=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=c(i),u=n,d=p["".concat(m,".").concat(u)]||p[u]||l[u]||r;return i?o.createElement(d,a(a({ref:t},h),{},{components:i})):o.createElement(d,a({ref:t},h))}));function u(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=i.length,a=new Array(r);a[0]=p;var s={};for(var m in t)hasOwnProperty.call(t,m)&&(s[m]=t[m]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var c=2;c=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var m=o.createContext({}),c=function(e){var t=o.useContext(m),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},h=function(e){var t=c(e.components);return o.createElement(m.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},p=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,r=e.originalType,m=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=c(i),u=n,d=p["".concat(m,".").concat(u)]||p[u]||l[u]||r;return i?o.createElement(d,a(a({ref:t},h),{},{components:i})):o.createElement(d,a({ref:t},h))}));function u(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=i.length,a=new Array(r);a[0]=p;var s={};for(var m in t)hasOwnProperty.call(t,m)&&(s[m]=t[m]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var c=2;c=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),m=l(r),d=n,f=m["".concat(c,".").concat(d)]||m[d]||p[d]||a;return r?o.createElement(f,i(i({ref:t},u),{},{components:r})):o.createElement(f,i({ref:t},u))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,i[1]=s;for(var l=2;l=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),m=l(r),d=n,f=m["".concat(c,".").concat(d)]||m[d]||p[d]||a;return r?o.createElement(f,i(i({ref:t},u),{},{components:r})):o.createElement(f,i({ref:t},u))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,i[1]=s;for(var l=2;l=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=o.createContext({}),l=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=l(n),f=r,m=d["".concat(c,".").concat(f)]||d[f]||u[f]||i;return n?o.createElement(m,a(a({ref:t},p),{},{components:n})):o.createElement(m,a({ref:t},p))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,a=new Array(i);a[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,a[1]=s;for(var l=2;l=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=o.createContext({}),l=function(e){var t=o.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=l(n),f=r,m=d["".concat(c,".").concat(f)]||d[f]||u[f]||i;return n?o.createElement(m,a(a({ref:t},p),{},{components:n})):o.createElement(m,a({ref:t},p))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,a=new Array(i);a[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,a[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),c=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},l=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,l=u(e,["components","mdxType","originalType","parentName"]),d=c(r),f=o,h=d["".concat(s,".").concat(f)]||d[f]||p[f]||a;return r?n.createElement(h,i(i({ref:t},l),{},{components:r})):n.createElement(h,i({ref:t},l))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=d;var u={};for(var s in t)hasOwnProperty.call(t,s)&&(u[s]=t[s]);u.originalType=e,u.mdxType="string"==typeof e?e:o,i[1]=u;for(var c=2;c=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),c=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},l=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,l=u(e,["components","mdxType","originalType","parentName"]),d=c(r),f=o,h=d["".concat(s,".").concat(f)]||d[f]||p[f]||a;return r?n.createElement(h,i(i({ref:t},l),{},{components:r})):n.createElement(h,i({ref:t},l))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=d;var u={};for(var s in t)hasOwnProperty.call(t,s)&&(u[s]=t[s]);u.originalType=e,u.mdxType="string"==typeof e?e:o,i[1]=u;for(var c=2;c=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=o.createContext({}),h=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var r=e.components,i=e.mdxType,n=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),u=h(r),f=i,m=u["".concat(c,".").concat(f)]||u[f]||d[f]||n;return r?o.createElement(m,a(a({ref:t},p),{},{components:r})):o.createElement(m,a({ref:t},p))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var n=r.length,a=new Array(n);a[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var h=2;h@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier"),"."),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"Authors")," need to know the [TermRef syntax](/docs/spec-syntax/term-ref-syntax) that they are expected to use.",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"Curators"),", which are expected to control the ways in which authored texts are further processed (into rendered texts), will need to know the options provided by the [TRRT tool](/docs/spec-tools/trrt) in order to ensure that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," that are used in in authored text are rendered in the way(s) that are envisaged.",(0,n.kt)("h3",{id:"purpose"},"Purpose"),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," make it easy for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to associate some word(s) or phrase(s) with a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),", c.q. the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that (authoritatively) documents it. Also, ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," enable authored texts to be rendered in various ways, each of which is capable of converting such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," into effects that help ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"readers")," to (better) understand what the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author(s)")," of the text intended when using a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," or phrase.")}f.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[6098],{3905:function(e,t,r){r.d(t,{Zo:function(){return p},kt:function(){return f}});var o=r(7294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function a(e){for(var t=1;t=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=o.createContext({}),h=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var r=e.components,i=e.mdxType,n=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),u=h(r),f=i,m=u["".concat(c,".").concat(f)]||u[f]||d[f]||n;return r?o.createElement(m,a(a({ref:t},p),{},{components:r})):o.createElement(m,a({ref:t},p))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var n=r.length,a=new Array(n);a[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var h=2;h@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier"),"."),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"Authors")," need to know the [TermRef syntax](/docs/spec-syntax/term-ref-syntax) that they are expected to use.",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"Curators"),", which are expected to control the ways in which authored texts are further processed (into rendered texts), will need to know the options provided by the [TRRT tool](/docs/spec-tools/trrt) in order to ensure that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," that are used in in authored text are rendered in the way(s) that are envisaged.",(0,n.kt)("h3",{id:"purpose"},"Purpose"),(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," make it easy for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to associate some word(s) or phrase(s) with a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),", c.q. the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that (authoritatively) documents it. Also, ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," enable authored texts to be rendered in various ways, each of which is capable of converting such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," into effects that help ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"readers")," to (better) understand what the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author(s)")," of the text intended when using a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," or phrase.")}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b0474474.d4c86084.js b/assets/js/b0474474.128326ec.js similarity index 99% rename from assets/js/b0474474.d4c86084.js rename to assets/js/b0474474.128326ec.js index 4d321efe4e..eb54e98d23 100644 --- a/assets/js/b0474474.d4c86084.js +++ b/assets/js/b0474474.128326ec.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[6571],{3905:function(e,t,i){i.d(t,{Zo:function(){return p},kt:function(){return f}});var o=i(7294);function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function r(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,o)}return i}function a(e){for(var t=1;t=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},p=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,r=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=h(i),f=n,d=m["".concat(c,".").concat(f)]||m[f]||l[f]||r;return i?o.createElement(d,a(a({ref:t},p),{},{components:i})):o.createElement(d,a({ref:t},p))}));function f(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=i.length,a=new Array(r);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var h=2;h=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},p=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var i=e.components,n=e.mdxType,r=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),m=h(i),f=n,d=m["".concat(c,".").concat(f)]||m[f]||l[f]||r;return i?o.createElement(d,a(a({ref:t},p),{},{components:i})):o.createElement(d,a({ref:t},p))}));function f(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=i.length,a=new Array(r);a[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var h=2;h=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},p=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},l=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,r=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),l=h(o),f=n,m=l["".concat(c,".").concat(f)]||l[f]||d[f]||r;return o?i.createElement(m,a(a({ref:t},p),{},{components:o})):i.createElement(m,a({ref:t},p))}));function f(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=o.length,a=new Array(r);a[0]=l;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var h=2;h=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},p=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},l=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,r=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),l=h(o),f=n,m=l["".concat(c,".").concat(f)]||l[f]||d[f]||r;return o?i.createElement(m,a(a({ref:t},p),{},{components:o})):i.createElement(m,a({ref:t},p))}));function f(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=o.length,a=new Array(r);a[0]=l;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var h=2;h=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),u=l(r),f=i,m=u["".concat(s,".").concat(f)]||u[f]||d[f]||a;return r?n.createElement(m,o(o({ref:t},p),{},{components:r})):n.createElement(m,o({ref:t},p))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=r.length,o=new Array(a);o[0]=u;var c={};for(var s in t)hasOwnProperty.call(t,s)&&(c[s]=t[s]);c.originalType=e,c.mdxType="string"==typeof e?e:i,o[1]=c;for(var l=2;l=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var s=n.createContext({}),l=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},p=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),u=l(r),f=i,m=u["".concat(s,".").concat(f)]||u[f]||d[f]||a;return r?n.createElement(m,o(o({ref:t},p),{},{components:r})):n.createElement(m,o({ref:t},p))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=r.length,o=new Array(a);o[0]=u;var c={};for(var s in t)hasOwnProperty.call(t,s)&&(c[s]=t[s]);c.originalType=e,c.mdxType="string"==typeof e?e:i,o[1]=c;for(var l=2;l=0||(a[o]=e[o]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(a[o]=e[o])}return a}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},d=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var o=e.components,a=e.mdxType,n=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),m=h(o),p=a,f=m["".concat(c,".").concat(p)]||m[p]||l[p]||n;return o?i.createElement(f,s(s({ref:t},d),{},{components:o})):i.createElement(f,s({ref:t},d))}));function p(e,t){var o=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=o.length,s=new Array(n);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:a,s[1]=r;for(var h=2;h=0||(a[o]=e[o]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(a[o]=e[o])}return a}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},d=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var o=e.components,a=e.mdxType,n=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),m=h(o),p=a,f=m["".concat(c,".").concat(p)]||m[p]||l[p]||n;return o?i.createElement(f,s(s({ref:t},d),{},{components:o})):i.createElement(f,s({ref:t},d))}));function p(e,t){var o=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=o.length,s=new Array(n);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:a,s[1]=r;for(var h=2;h=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var c=n.createContext({}),h=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},d=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var i=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),l=h(i),m=a,f=l["".concat(c,".").concat(m)]||l[m]||p[m]||o;return i?n.createElement(f,s(s({ref:t},d),{},{components:i})):n.createElement(f,s({ref:t},d))}));function m(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=i.length,s=new Array(o);s[0]=l;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:a,s[1]=r;for(var h=2;h=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var c=n.createContext({}),h=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},d=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var i=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),l=h(i),m=a,f=l["".concat(c,".").concat(m)]||l[m]||p[m]||o;return i?n.createElement(f,s(s({ref:t},d),{},{components:i})):n.createElement(f,s({ref:t},d))}));function m(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=i.length,s=new Array(o);s[0]=l;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:a,s[1]=r;for(var h=2;h=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):r(r({},t),e)),o},p=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},l=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,p=a(e,["components","mdxType","originalType","parentName"]),l=h(o),d=n,m=l["".concat(c,".").concat(d)]||l[d]||u[d]||s;return o?i.createElement(m,r(r({ref:t},p),{},{components:o})):i.createElement(m,r({ref:t},p))}));function d(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=o.length,r=new Array(s);r[0]=l;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:n,r[1]=a;for(var h=2;h=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),h=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):r(r({},t),e)),o},p=function(e){var t=h(e.components);return i.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},l=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,s=e.originalType,c=e.parentName,p=a(e,["components","mdxType","originalType","parentName"]),l=h(o),d=n,m=l["".concat(c,".").concat(d)]||l[d]||u[d]||s;return o?i.createElement(m,r(r({ref:t},p),{},{components:o})):i.createElement(m,r({ref:t},p))}));function d(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=o.length,r=new Array(s);r[0]=l;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:n,r[1]=a;for(var h=2;h=0||(i[o]=e[o]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var l=n.createContext({}),c=function(e){var t=n.useContext(l),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},u=function(e){var t=c(e.components);return n.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var o=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,u=a(e,["components","mdxType","originalType","parentName"]),m=c(o),f=i,d=m["".concat(l,".").concat(f)]||m[f]||p[f]||r;return o?n.createElement(d,s(s({ref:t},u),{},{components:o})):n.createElement(d,s({ref:t},u))}));function f(e,t){var o=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=o.length,s=new Array(r);s[0]=m;var a={};for(var l in t)hasOwnProperty.call(t,l)&&(a[l]=t[l]);a.originalType=e,a.mdxType="string"==typeof e?e:i,s[1]=a;for(var c=2;c=0||(i[o]=e[o]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var l=n.createContext({}),c=function(e){var t=n.useContext(l),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},u=function(e){var t=c(e.components);return n.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var o=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,u=a(e,["components","mdxType","originalType","parentName"]),m=c(o),f=i,d=m["".concat(l,".").concat(f)]||m[f]||p[f]||r;return o?n.createElement(d,s(s({ref:t},u),{},{components:o})):n.createElement(d,s({ref:t},u))}));function f(e,t){var o=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=o.length,s=new Array(r);s[0]=m;var a={};for(var l in t)hasOwnProperty.call(t,l)&&(a[l]=t[l]);a.originalType=e,a.mdxType="string"==typeof e?e:i,s[1]=a;for(var c=2;c=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),h=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):s(s({},e),t)),i},d=function(t){var e=h(t.components);return a.createElement(c.Provider,{value:e},t.children)},l={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},m=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,d=r(t,["components","mdxType","originalType","parentName"]),m=h(i),p=o,f=m["".concat(c,".").concat(p)]||m[p]||l[p]||n;return i?a.createElement(f,s(s({ref:e},d),{},{components:i})):a.createElement(f,s({ref:e},d))}));function p(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,s=new Array(n);s[0]=m;var r={};for(var c in e)hasOwnProperty.call(e,c)&&(r[c]=e[c]);r.originalType=t,r.mdxType="string"==typeof t?t:o,s[1]=r;for(var h=2;h child <"+("string"==typeof t.type?t.type:t.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?e:[]}(t).map((function(t){var e=t.props;return{value:e.value,label:e.label,attributes:e.attributes,default:e.default}}))}function m(t){var e=t.values,i=t.children;return(0,o.useMemo)((function(){var t=null!=e?e:l(i);return function(t){var e=(0,h.l)(t,(function(t,e){return t.value===e.value}));if(e.length>0)throw new Error('Docusaurus error: Duplicate values "'+e.map((function(t){return t.value})).join(", ")+'" found in . Every value needs to be unique.')}(t),t}),[e,i])}function p(t){var e=t.value;return t.tabValues.some((function(t){return t.value===e}))}function f(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId,n=(0,r.k6)(),s=function(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,c._X)(s),(0,o.useCallback)((function(t){if(s){var e=new URLSearchParams(n.location.search);e.set(s,t),n.replace(Object.assign({},n.location,{search:e.toString()}))}}),[s,n])]}function g(t){var e,i,a,n,s=t.defaultValue,r=t.queryString,c=void 0!==r&&r,h=t.groupId,l=m(t),g=(0,o.useState)((function(){return function(t){var e,i=t.defaultValue,a=t.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!p({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(t){return t.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var o=null!=(e=a.find((function(t){return t.default})))?e:a[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:s,tabValues:l})})),u=g[0],y=g[1],v=f({queryString:c,groupId:h}),b=v[0],k=v[1],w=(e=function(t){return t?"docusaurus.tab."+t:null}({groupId:h}.groupId),i=(0,d.Nk)(e),a=i[0],n=i[1],[a,(0,o.useCallback)((function(t){e&&n.set(t)}),[e,n])]),x=w[0],S=w[1],T=function(){var t=null!=b?b:x;return p({value:t,tabValues:l})?t:null}();return(0,o.useLayoutEffect)((function(){T&&y(T)}),[T]),{selectedValue:u,selectValue:(0,o.useCallback)((function(t){if(!p({value:t,tabValues:l}))throw new Error("Can't select invalid tab value="+t);y(t),k(t),S(t)}),[k,S,l]),tabValues:l}}var u=i(2389),y="tabList__CuJ",v="tabItem_LNqP";function b(t){var e=t.className,i=t.block,r=t.selectedValue,c=t.selectValue,h=t.tabValues,d=[],l=(0,s.o5)().blockElementScrollPositionUntilNextRender,m=function(t){var e=t.currentTarget,i=d.indexOf(e),a=h[i].value;a!==r&&(l(e),c(a))},p=function(t){var e,i=null;switch(t.key){case"Enter":m(t);break;case"ArrowRight":var a,o=d.indexOf(t.currentTarget)+1;i=null!=(a=d[o])?a:d[0];break;case"ArrowLeft":var n,s=d.indexOf(t.currentTarget)-1;i=null!=(n=d[s])?n:d[d.length-1]}null==(e=i)||e.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},e)},h.map((function(t){var e=t.value,i=t.label,s=t.attributes;return o.createElement("li",(0,a.Z)({role:"tab",tabIndex:r===e?0:-1,"aria-selected":r===e,key:e,ref:function(t){return d.push(t)},onKeyDown:p,onClick:m},s,{className:(0,n.Z)("tabs__item",v,null==s?void 0:s.className,{"tabs__item--active":r===e})}),null!=i?i:e)})))}function k(t){var e=t.lazy,i=t.children,a=t.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(e){var s=n.find((function(t){return t.props.value===a}));return s?(0,o.cloneElement)(s,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(t,e){return(0,o.cloneElement)(t,{key:e,hidden:t.props.value!==a})})))}function w(t){var e=g(t);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(b,(0,a.Z)({},t,e)),o.createElement(k,(0,a.Z)({},t,e)))}function x(t){var e=(0,u.Z)();return o.createElement(w,(0,a.Z)({key:String(e)},t))}},3405:function(t,e,i){i.r(e),i.d(e,{assets:function(){return d},contentTitle:function(){return c},default:function(){return p},frontMatter:function(){return r},metadata:function(){return h},toc:function(){return l}});var a=i(7462),o=i(3366),n=(i(7294),i(3905)),s=(i(4996),i(4866),i(5162),["components"]),r={id:"mrg",sidebar_label:"MRG (Machine Readable Glossary)",date:20220303},c="Machine Readable Glossary (MRG)",h={unversionedId:"spec-files/mrg",id:"spec-files/mrg",title:"Machine Readable Glossary (MRG)",description:"Every scope has (at least) one Machine Readable Inventory (that we call a Machine Readable Glossary or MRG), that renders the terminology of a specific scope into a specific, well-defined format that is described in this document. An MRG is meant to be used by the tools from the toolbox, e.g. for creating a HRG, or to help resolve TermRefs. A scope may have multiple MRGs, each of which represents a specific version of its terminology.",source:"@site/docs/spec-files/21-mrg.md",sourceDirName:"spec-files",slug:"/spec-files/mrg",permalink:"/tev2-specifications/docs/spec-files/mrg",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-files/21-mrg.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:21,frontMatter:{id:"mrg",sidebar_label:"MRG (Machine Readable Glossary)",date:20220303},sidebar:"tev2SideBar",previous:{title:"Profile Templates",permalink:"/tev2-specifications/docs/spec-files/profile-templates"},next:{title:"HRG (Human Readable Glossary)",permalink:"/tev2-specifications/docs/spec-files/hrg"}},d={},l=[{value:"File naming conventions",id:"mrg-file-naming",level:2},{value:"MRG structure",id:"mrg-structure",level:2},{value:"MRG Terminology section",id:"mrg-terminology",level:3},{value:"MRG scopes section",id:"mrg-scopes",level:3},{value:"MRG Entries (the entries section)",id:"mrg-entries",level:2}],m={toc:l};function p(t){var e=t.components,i=(0,o.Z)(t,s);return(0,n.kt)("wrapper",(0,a.Z)({},m,i,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"machine-readable-glossary-mrg"},"Machine Readable Glossary (MRG)"),(0,n.kt)("p",null,"Every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," has (at least) one ",(0,n.kt)("strong",{parentName:"p"},"Machine Readable Inventory"),(0,n.kt)("sup",{parentName:"p",id:"fnref-1"},(0,n.kt)("a",{parentName:"sup",href:"#fn-1",className:"footnote-ref"},"1"))," (that we call a ",(0,n.kt)("strong",{parentName:"p"},"Machine Readable Glossary")," or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"), that renders the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," into a specific, well-defined format that is described in this document. An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is meant to be used by the tools from the ",(0,n.kt)("a",{parentName:"p",href:"/docs-toolbox"},"toolbox"),", e.g. for creating a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),", or to help resolve ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),". A ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," may have multiple ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),", each of which represents a specific version of its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),"."),(0,n.kt)("h2",{id:"mrg-file-naming"},"File naming conventions"),(0,n.kt)("p",null,"The file naming conventions apply to one particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which implies that there is a single ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", a single ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossarydir",hovertext:"Glossarydir: a directory within a Scopedir within which the different versions of its (Machine Readable and Human Readable) Glossaries are created and maintained."},"glossarydir"),", and a single ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," (called ",(0,n.kt)("inlineCode",{parentName:"p"},"{scopedir}")," here). Within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", the meaning of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags"),", i.e. the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," to which they refer, are defined in/by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". "),(0,n.kt)("p",null,"Within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossarydir",hovertext:"Glossarydir: a directory within a Scopedir within which the different versions of its (Machine Readable and Human Readable) Glossaries are created and maintained."},"glossarydir")," we can generate (or import), and hence also find all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-files that are needed within its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". We use the following file naming convention for such files:"),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},(0,n.kt)("inlineCode",{parentName:"strong"},"mrg...yaml"))," is the name of a file that contains an actual ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", or it is a file that links (references) such a file, where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},""))," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is curated, as specified in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," we are in. Thus, its value must either be that of the ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field in the ",(0,n.kt)("a",{parentName:"li",href:"docs/spec-files/saf#terminology"},"scope section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", or it must be one of the values in the ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetags"),"-field in the ",(0,n.kt)("a",{parentName:"li",href:"docs/spec-files/saf#scopes"},"scopes (plural) section")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},""))," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," for which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," contains ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries"),". Its value must be either one of the ",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag"),"-fields, or appear in one of the ",(0,n.kt)("inlineCode",{parentName:"li"},"alatvsntag"),"-fields in the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("p",null,"This naming convention enables tools (as well as ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," and others) that operate within a particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", to quickly find a particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is relevant for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("h2",{id:"mrg-structure"},"MRG structure"),(0,n.kt)("p",null,"A Machine Readable Glossary (MRG) is a YAML (or JSON) file that has three main parts, which we refer to as 'sections':"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"terminology"))," specifies the characteristics of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". This includes the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", as well as the license under which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," can be used."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"scopes"))," specifies which (other) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," are relevant to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". This includes the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of any such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"entries"))," contains an (unsorted) list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),".")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Example of sections `terminology` and `scopes`"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"terminology: # the fields below must match the corresponding data in the SAF\n scopetag: tev2 # scope, the terminology of which is contained in this MRG\n scopedir: https://github.com/tno-terminology-design/tev2-specifications/tree/master/docs\n curatedir: terms\n vsntag: v0.9.4\n altvsntags: [ latest ]\n license: LICENSE.md\nscopes: # mappings of scopetags that are used, and their scopedirs\n - scopetag: essiflab\n scopedir: https://github.com/essif-lab/framework/tree/master/docs\n - scopetag: ctwg\n scopedir: https://github.com/trustoverip/ctwg\nentries: # here follows an (unsorted) list of MRG entries\n"))),(0,n.kt)("h3",{id:"mrg-terminology"},"MRG ",(0,n.kt)("inlineCode",{parentName:"h3"},"Terminology")," section"),(0,n.kt)("p",null,"The following fields are defined for the sections ",(0,n.kt)("inlineCode",{parentName:"p"},"terminology"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is defined.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL that locates the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," associated with that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to the directory where all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated files")," are located. This directory may contain subdirectories to allow ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," to organize the files in any way they see fit. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},""),"/",(0,n.kt)("inlineCode",{parentName:"td"},""),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," by which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," can be distinguished from the other versions of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," (in other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),"). Its value MUST match the ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," field of the corresponding ",(0,n.kt)("inlineCode",{parentName:"td"},"versions")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"altvsntags")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"List of alternative ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," that can be used to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," this version. Each of the values MUST be in the list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," in the ",(0,n.kt)("inlineCode",{parentName:"td"},"altvsntags")," field of the the corresponding ",(0,n.kt)("inlineCode",{parentName:"td"},"versions")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"license")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"File that contains the (default) licensing conditions. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"license"),". Its value MUST match the ",(0,n.kt)("inlineCode",{parentName:"td"},"license")," field of the corresponding ",(0,n.kt)("inlineCode",{parentName:"td"},"versions")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", or if that isn't specified, the ",(0,n.kt)("inlineCode",{parentName:"td"},"license")," field of the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")))),(0,n.kt)("h3",{id:"mrg-scopes"},"MRG ",(0,n.kt)("inlineCode",{parentName:"h3"},"scopes")," section"),(0,n.kt)("p",null,"The following fields are defined for the section ",(0,n.kt)("inlineCode",{parentName:"p"},"scopes"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," of a third-party ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of which contains ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that have been imported into the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),". This ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," has been chosen by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," of which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is part, to refer to that particular third-party ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". This ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," may differ from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of that third-party ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," have chosen for this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," ",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL that locates the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," associated with that third-party ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")))),(0,n.kt)("h2",{id:"mrg-entries"},"MRG Entries (the ",(0,n.kt)("inlineCode",{parentName:"h2"},"entries")," section)"),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"entries")," section of an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is a list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),", the purpose of which is that the various tools can find all data that is relevant for the purpose that such a tool serves."),(0,n.kt)("p",null,"This ",(0,n.kt)("inlineCode",{parentName:"p"},"entries")," section documentents the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is ","[identified]"," by each of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," in either the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field or the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntag")," field in the ",(0,n.kt)("inlineCode",{parentName:"p"},"terminology")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"."),(0,n.kt)("p",null,"An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," has a few fields that are always present, because the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," generates them, as follows:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Field"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Value(s) that are assigned to the fields"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from within which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is obtained. This is either ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," has been generated, or the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," was imported. In the latter case, the ",(0,n.kt)("a",{parentName:"td",href:"#mrg-scopes"},(0,n.kt)("inlineCode",{parentName:"a"},"scopes")," section")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," MUST contain a mapping between the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")," and its associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"Versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," from which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is obtained. If the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," was constructed from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", its value equals the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," field in the ",(0,n.kt)("a",{parentName:"td",href:"#mrg-terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"terminology"),"-section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is a part of. As a result, ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag"),":",(0,n.kt)("inlineCode",{parentName:"td"},"versiontag")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," from which this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," has originated.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-.]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"locator")),(0,n.kt)("td",{parentName:"tr",align:"left"},"path, relative to ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir"),"/, where ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")," can be obtained from the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopes")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", and ",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")," can be obtained from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," that lives in this ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),", where the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," lives from which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," was constructed.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"navurl")),(0,n.kt)("td",{parentName:"tr",align:"left"},"path, relative to the URL as specified in the ",(0,n.kt)("inlineCode",{parentName:"td"},"website")," field in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"scope")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (that lives in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")," as specified in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopes")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"), where the rendered version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," is located.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"headingids")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a list of the ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/basic-syntax/#headings"},"markdown headings")," and/or ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/extended-syntax/#linking-to-heading-ids"},"heading ids")," that exist in the file that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", and can serve as ",(0,n.kt)("inlineCode",{parentName:"td"},"trait")," in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),".")))),(0,n.kt)("p",null,"An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," has additional fields that come from the front matter of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," represents. Some fields are"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"mandatory for all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),", and hence will always appear in an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),"; these appear in the table below."),(0,n.kt)("li",{parentName:"ul"},"optional for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," - typically, e.g. to accommodate for differences in the types ",(0,n.kt)("a",{parentName:"li",href:"@"},"terminological artifacts")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," document; these also appear in the table below."),(0,n.kt)("li",{parentName:"ul"},"optional in the sense that they are intended to be processed by TEv2 tool plugins - these are not documented here."),(0,n.kt)("li",{parentName:"ul"},"optional in the sense that they are intended to be used by third party rendering tools, such as Docusaurus or Jekyll - these are also not documented here.")),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"We need to think about how to refer readers to sections of plugins and rendering tool documentation that they might want/need to use.")),(0,n.kt)("p",null,"The following table documents the fields that are used within the context of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from within which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated"),", and obtained. The ",(0,n.kt)("a",{parentName:"td",href:"#mrg-scopes"},(0,n.kt)("inlineCode",{parentName:"a"},"scopes")," section")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," SHOULD contain a mapping between the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")," and its associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"Versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," from which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is obtained. If the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," was constructed from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", its value equals the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," field in the ",(0,n.kt)("a",{parentName:"td",href:"#mrg-terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"terminology"),"-section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is a part of. As a result, ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag"),":",(0,n.kt)("inlineCode",{parentName:"td"},"versiontag")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," from which this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," has originated.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-.]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"term")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Text")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and hence also the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that describes it, which includes its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition"),". Its value is typically the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"glossaryTerm")," field, where all characters are made lower-case, any text between parentheses is discarded, and any (sequences of) spaces (or other special characters) are replaced with a ",(0,n.kt)("inlineCode",{parentName:"td"},"-"),"character.",(0,n.kt)("br",null),"The ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-syntax/term-ref-syntax#term"},(0,n.kt)("inlineCode",{parentName:"a"},"term"),"-field")," of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," that refers to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," must match this value.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"termType")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-type",hovertext:"Term Type: a Text that Identifies a particular *kind* of Semantic Unit within a particular Scope. Examples include `concept`, `relation`, `pattern` (or `mental-model`)."},"Text")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the kind of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," describes. Typical values would be ",(0,n.kt)("inlineCode",{parentName:"td"},"concept"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"relation"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"pattern")," (or ",(0,n.kt)("inlineCode",{parentName:"td"},"mental-model"),"), ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," (or ",(0,n.kt)("inlineCode",{parentName:"td"},"alias"),"), or ",(0,n.kt)("inlineCode",{parentName:"td"},"usecase"),".",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"isa")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," of which this is a specialization.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"bodyFile")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path, relative to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),", that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),". If not specified, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," in this file serves as the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"glossaryTerm")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that is used for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in a human readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". For example, for a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," called ",(0,n.kt)("inlineCode",{parentName:"td"},"member"),", you may want to specify a glossaryTerm ",(0,n.kt)("inlineCode",{parentName:"td"},"member (of a [community](@))"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"glossaryText")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that is used as the (raw) contents for the entry of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in a human readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". This text MUST be expected to contain ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"synonymOf")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the defined ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminological-artifact",hovertext:"Terminological Artifact: a basic building block of meaning or representation, i.e., a 'semantic unit' within the 'mind' of a Scope, such as a Concept, a Relation, or a Property."},"terminological artifact")," for which this is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/synonym",hovertext:"Synonym: a Term that has the same (or similar) meaning as another Term."},"synonym"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"grouptags")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"List of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags"),", each of which signifies that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," documents, is part of the group of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that it represents.",(0,n.kt)("br",null),"Example: ",(0,n.kt)("inlineCode",{parentName:"td"},"[tev2, management]"),".",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("a",{parentName:"td",href:"https://www.debuggex.com/r/a51CXl1NzR3kwihT"},(0,n.kt)("inlineCode",{parentName:"a"},"(?:\\[\\s*([a-z0-9_-]+)\\s*(?:,\\s*([a-z0-9_-]+))*\\s*\\])?")),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"formPhrases")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"List of ",(0,n.kt)("a",{parentName:"td",href:"formphrase@"},"texts")," that are ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-tools/trrt#id"},"used to convert")," the ",(0,n.kt)("inlineCode",{parentName:"td"},"show text")," parts of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," into ",(0,n.kt)("inlineCode",{parentName:"td"},"term"),"s, for the purpose of accommodating plural forms (for nouns) or conjugate forms (for verbs). For details, see ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-syntax/form-phrase-syntax"},"'Syntax Specs - Form Phrases"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"status")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that identifies the status of the term. (",(0,n.kt)("a",{parentName:"td",href:"@"},"Communities")," of) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," may specify values for this field. An example is the ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/trustoverip/concepts-and-terminology-wg/blob/master/docs/status-tags.md"},"status tags used by ToIP"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"created")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Date at which of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," was created, in the date format as used within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"updated")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Date at which of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," was last modified, in the date format as used within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"contributors")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that shows (or refers to) the people that have contributed to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"attribution")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that credits the original creation of the texts in the document.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"originalLicense")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Reference to the license of the work from which the texts were derived.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"locator")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that identifies the file that holds the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," describes. The full URL of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," is ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"locator"),", where ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")," and ",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")," can be found in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (which is in the root of ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"). Note that ",(0,n.kt)("inlineCode",{parentName:"td"},"locator")," may contain a path.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"navurl")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL that locates a human readable, rendered version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," describes. This URL is used to resolve ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," that refer to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"headingids")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a list of the ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/basic-syntax/#headings"},"markdown headings")," and/or ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/extended-syntax/#linking-to-heading-ids"},"heading ids")," that exist in the file that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", and can serve as ",(0,n.kt)("inlineCode",{parentName:"td"},"trait")," in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),".")))),(0,n.kt)("h1",{id:"footnotes"},"Footnotes"),(0,n.kt)("div",{className:"footnotes"},(0,n.kt)("hr",{parentName:"div"}),(0,n.kt)("ol",{parentName:"div"},(0,n.kt)("li",{parentName:"ol",id:"fn-1"},"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is an inventory rather than a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),", because it contains ",(0,n.kt)("em",{parentName:"li"},"all")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic units")," that are ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated")," within the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),": apart from ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),", it also include e.g., ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mental-model",hovertext:"Mental Model: A Semantic Unit that relates a set of Concepts (ideas), Relations between them, and constraints about a certain topic, into a coherent and consistent whole (sometimes called 'viewpoint', or 'way of thinking')."},"mental models")," and ",(0,n.kt)("a",{parentName:"li",href:"@"},"use cases"),". We choose to maintain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term"),' "Machine Readable Glossary" (',(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"), because most of us would view it - initially, at least - as a list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," and their ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definitions"),".",(0,n.kt)("a",{parentName:"li",href:"#fnref-1",className:"footnote-backref"},"\u21a9")))))}p.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[8113],{3905:function(t,e,i){i.d(e,{Zo:function(){return d},kt:function(){return p}});var a=i(7294);function o(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function n(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function s(t){for(var e=1;e=0||(o[i]=t[i]);return o}(t,e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(o[i]=t[i])}return o}var c=a.createContext({}),h=function(t){var e=a.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):s(s({},e),t)),i},d=function(t){var e=h(t.components);return a.createElement(c.Provider,{value:e},t.children)},l={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},m=a.forwardRef((function(t,e){var i=t.components,o=t.mdxType,n=t.originalType,c=t.parentName,d=r(t,["components","mdxType","originalType","parentName"]),m=h(i),p=o,f=m["".concat(c,".").concat(p)]||m[p]||l[p]||n;return i?a.createElement(f,s(s({ref:e},d),{},{components:i})):a.createElement(f,s({ref:e},d))}));function p(t,e){var i=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var n=i.length,s=new Array(n);s[0]=m;var r={};for(var c in e)hasOwnProperty.call(e,c)&&(r[c]=e[c]);r.originalType=t,r.mdxType="string"==typeof t?t:o,s[1]=r;for(var h=2;h child <"+("string"==typeof t.type?t.type:t.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:i.filter(Boolean))?e:[]}(t).map((function(t){var e=t.props;return{value:e.value,label:e.label,attributes:e.attributes,default:e.default}}))}function m(t){var e=t.values,i=t.children;return(0,o.useMemo)((function(){var t=null!=e?e:l(i);return function(t){var e=(0,h.l)(t,(function(t,e){return t.value===e.value}));if(e.length>0)throw new Error('Docusaurus error: Duplicate values "'+e.map((function(t){return t.value})).join(", ")+'" found in . Every value needs to be unique.')}(t),t}),[e,i])}function p(t){var e=t.value;return t.tabValues.some((function(t){return t.value===e}))}function f(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId,n=(0,r.k6)(),s=function(t){var e=t.queryString,i=void 0!==e&&e,a=t.groupId;if("string"==typeof i)return i;if(!1===i)return null;if(!0===i&&!a)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=a?a:null}({queryString:i,groupId:a});return[(0,c._X)(s),(0,o.useCallback)((function(t){if(s){var e=new URLSearchParams(n.location.search);e.set(s,t),n.replace(Object.assign({},n.location,{search:e.toString()}))}}),[s,n])]}function g(t){var e,i,a,n,s=t.defaultValue,r=t.queryString,c=void 0!==r&&r,h=t.groupId,l=m(t),g=(0,o.useState)((function(){return function(t){var e,i=t.defaultValue,a=t.tabValues;if(0===a.length)throw new Error("Docusaurus error: the component requires at least one children component");if(i){if(!p({value:i,tabValues:a}))throw new Error('Docusaurus error: The has a defaultValue "'+i+'" but none of its children has the corresponding value. Available values are: '+a.map((function(t){return t.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return i}var o=null!=(e=a.find((function(t){return t.default})))?e:a[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:s,tabValues:l})})),u=g[0],y=g[1],v=f({queryString:c,groupId:h}),b=v[0],k=v[1],w=(e=function(t){return t?"docusaurus.tab."+t:null}({groupId:h}.groupId),i=(0,d.Nk)(e),a=i[0],n=i[1],[a,(0,o.useCallback)((function(t){e&&n.set(t)}),[e,n])]),x=w[0],S=w[1],T=function(){var t=null!=b?b:x;return p({value:t,tabValues:l})?t:null}();return(0,o.useLayoutEffect)((function(){T&&y(T)}),[T]),{selectedValue:u,selectValue:(0,o.useCallback)((function(t){if(!p({value:t,tabValues:l}))throw new Error("Can't select invalid tab value="+t);y(t),k(t),S(t)}),[k,S,l]),tabValues:l}}var u=i(2389),y="tabList__CuJ",v="tabItem_LNqP";function b(t){var e=t.className,i=t.block,r=t.selectedValue,c=t.selectValue,h=t.tabValues,d=[],l=(0,s.o5)().blockElementScrollPositionUntilNextRender,m=function(t){var e=t.currentTarget,i=d.indexOf(e),a=h[i].value;a!==r&&(l(e),c(a))},p=function(t){var e,i=null;switch(t.key){case"Enter":m(t);break;case"ArrowRight":var a,o=d.indexOf(t.currentTarget)+1;i=null!=(a=d[o])?a:d[0];break;case"ArrowLeft":var n,s=d.indexOf(t.currentTarget)-1;i=null!=(n=d[s])?n:d[d.length-1]}null==(e=i)||e.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,n.Z)("tabs",{"tabs--block":i},e)},h.map((function(t){var e=t.value,i=t.label,s=t.attributes;return o.createElement("li",(0,a.Z)({role:"tab",tabIndex:r===e?0:-1,"aria-selected":r===e,key:e,ref:function(t){return d.push(t)},onKeyDown:p,onClick:m},s,{className:(0,n.Z)("tabs__item",v,null==s?void 0:s.className,{"tabs__item--active":r===e})}),null!=i?i:e)})))}function k(t){var e=t.lazy,i=t.children,a=t.selectedValue,n=(Array.isArray(i)?i:[i]).filter(Boolean);if(e){var s=n.find((function(t){return t.props.value===a}));return s?(0,o.cloneElement)(s,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},n.map((function(t,e){return(0,o.cloneElement)(t,{key:e,hidden:t.props.value!==a})})))}function w(t){var e=g(t);return o.createElement("div",{className:(0,n.Z)("tabs-container",y)},o.createElement(b,(0,a.Z)({},t,e)),o.createElement(k,(0,a.Z)({},t,e)))}function x(t){var e=(0,u.Z)();return o.createElement(w,(0,a.Z)({key:String(e)},t))}},3405:function(t,e,i){i.r(e),i.d(e,{assets:function(){return d},contentTitle:function(){return c},default:function(){return p},frontMatter:function(){return r},metadata:function(){return h},toc:function(){return l}});var a=i(7462),o=i(3366),n=(i(7294),i(3905)),s=(i(4996),i(4866),i(5162),["components"]),r={id:"mrg",sidebar_label:"MRG (Machine Readable Glossary)",date:20220303},c="Machine Readable Glossary (MRG)",h={unversionedId:"spec-files/mrg",id:"spec-files/mrg",title:"Machine Readable Glossary (MRG)",description:"Every scope has (at least) one Machine Readable Inventory (that we call a Machine Readable Glossary or MRG), that renders the terminology of a specific scope into a specific, well-defined format that is described in this document. An MRG is meant to be used by the tools from the toolbox, e.g. for creating a HRG, or to help resolve TermRefs. A scope may have multiple MRGs, each of which represents a specific version of its terminology.",source:"@site/docs/spec-files/21-mrg.md",sourceDirName:"spec-files",slug:"/spec-files/mrg",permalink:"/tev2-specifications/docs/spec-files/mrg",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-files/21-mrg.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:21,frontMatter:{id:"mrg",sidebar_label:"MRG (Machine Readable Glossary)",date:20220303},sidebar:"tev2SideBar",previous:{title:"Profile Templates",permalink:"/tev2-specifications/docs/spec-files/profile-templates"},next:{title:"HRG (Human Readable Glossary)",permalink:"/tev2-specifications/docs/spec-files/hrg"}},d={},l=[{value:"File naming conventions",id:"mrg-file-naming",level:2},{value:"MRG structure",id:"mrg-structure",level:2},{value:"MRG Terminology section",id:"mrg-terminology",level:3},{value:"MRG scopes section",id:"mrg-scopes",level:3},{value:"MRG Entries (the entries section)",id:"mrg-entries",level:2}],m={toc:l};function p(t){var e=t.components,i=(0,o.Z)(t,s);return(0,n.kt)("wrapper",(0,a.Z)({},m,i,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"machine-readable-glossary-mrg"},"Machine Readable Glossary (MRG)"),(0,n.kt)("p",null,"Every ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," has (at least) one ",(0,n.kt)("strong",{parentName:"p"},"Machine Readable Inventory"),(0,n.kt)("sup",{parentName:"p",id:"fnref-1"},(0,n.kt)("a",{parentName:"sup",href:"#fn-1",className:"footnote-ref"},"1"))," (that we call a ",(0,n.kt)("strong",{parentName:"p"},"Machine Readable Glossary")," or ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"), that renders the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of a specific ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," into a specific, well-defined format that is described in this document. An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is meant to be used by the tools from the ",(0,n.kt)("a",{parentName:"p",href:"/docs-toolbox"},"toolbox"),", e.g. for creating a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG"),", or to help resolve ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),". A ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," may have multiple ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),", each of which represents a specific version of its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),"."),(0,n.kt)("h2",{id:"mrg-file-naming"},"File naming conventions"),(0,n.kt)("p",null,"The file naming conventions apply to one particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", which implies that there is a single ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", a single ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossarydir",hovertext:"Glossarydir: a directory within a Scopedir within which the different versions of its (Machine Readable and Human Readable) Glossaries are created and maintained."},"glossarydir"),", and a single ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," (called ",(0,n.kt)("inlineCode",{parentName:"p"},"{scopedir}")," here). Within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", the meaning of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags"),", i.e. the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," to which they refer, are defined in/by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),". "),(0,n.kt)("p",null,"Within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossarydir",hovertext:"Glossarydir: a directory within a Scopedir within which the different versions of its (Machine Readable and Human Readable) Glossaries are created and maintained."},"glossarydir")," we can generate (or import), and hence also find all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"-files that are needed within its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". We use the following file naming convention for such files:"),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},(0,n.kt)("inlineCode",{parentName:"strong"},"mrg...yaml"))," is the name of a file that contains an actual ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", or it is a file that links (references) such a file, where:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},""))," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is curated, as specified in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," we are in. Thus, its value must either be that of the ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetag"),"-field in the ",(0,n.kt)("a",{parentName:"li",href:"docs/spec-files/saf#terminology"},"scope section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", or it must be one of the values in the ",(0,n.kt)("inlineCode",{parentName:"li"},"scopetags"),"-field in the ",(0,n.kt)("a",{parentName:"li",href:"docs/spec-files/saf#scopes"},"scopes (plural) section")," of that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),"."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},""))," is the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," for which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," contains ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"entries"),". Its value must be either one of the ",(0,n.kt)("inlineCode",{parentName:"li"},"vsntag"),"-fields, or appear in one of the ",(0,n.kt)("inlineCode",{parentName:"li"},"alatvsntag"),"-fields in the ",(0,n.kt)("a",{parentName:"li",href:"/docs/spec-files/saf#versions"},"versions section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("p",null,"This naming convention enables tools (as well as ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," and others) that operate within a particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", to quickly find a particular ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that is relevant for that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("h2",{id:"mrg-structure"},"MRG structure"),(0,n.kt)("p",null,"A Machine Readable Glossary (MRG) is a YAML (or JSON) file that has three main parts, which we refer to as 'sections':"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"terminology"))," specifies the characteristics of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". This includes the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", as well as the license under which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," can be used."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"scopes"))," specifies which (other) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," are relevant to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". This includes the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," and ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir")," of any such ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"entries"))," contains an (unsorted) list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),".")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Example of sections `terminology` and `scopes`"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-yaml"},"terminology: # the fields below must match the corresponding data in the SAF\n scopetag: tev2 # scope, the terminology of which is contained in this MRG\n scopedir: https://github.com/tno-terminology-design/tev2-specifications/tree/master/docs\n curatedir: terms\n vsntag: v0.9.4\n altvsntags: [ latest ]\n license: LICENSE.md\nscopes: # mappings of scopetags that are used, and their scopedirs\n - scopetag: essiflab\n scopedir: https://github.com/essif-lab/framework/tree/master/docs\n - scopetag: ctwg\n scopedir: https://github.com/trustoverip/ctwg\nentries: # here follows an (unsorted) list of MRG entries\n"))),(0,n.kt)("h3",{id:"mrg-terminology"},"MRG ",(0,n.kt)("inlineCode",{parentName:"h3"},"Terminology")," section"),(0,n.kt)("p",null,"The following fields are defined for the sections ",(0,n.kt)("inlineCode",{parentName:"p"},"terminology"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is defined.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL that locates the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," associated with that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path to the directory where all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated files")," are located. This directory may contain subdirectories to allow ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," to organize the files in any way they see fit. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},""),"/",(0,n.kt)("inlineCode",{parentName:"td"},""),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," by which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," can be distinguished from the other versions of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," (in other ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),"). Its value MUST match the ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," field of the corresponding ",(0,n.kt)("inlineCode",{parentName:"td"},"versions")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"altvsntags")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"List of alternative ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," that can be used to ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identify")," this version. Each of the values MUST be in the list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," in the ",(0,n.kt)("inlineCode",{parentName:"td"},"altvsntags")," field of the the corresponding ",(0,n.kt)("inlineCode",{parentName:"td"},"versions")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"license")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"File that contains the (default) licensing conditions. Full URL is ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"license"),". Its value MUST match the ",(0,n.kt)("inlineCode",{parentName:"td"},"license")," field of the corresponding ",(0,n.kt)("inlineCode",{parentName:"td"},"versions")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),", or if that isn't specified, the ",(0,n.kt)("inlineCode",{parentName:"td"},"license")," field of the ",(0,n.kt)("inlineCode",{parentName:"td"},"scope")," section in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF"),".")))),(0,n.kt)("h3",{id:"mrg-scopes"},"MRG ",(0,n.kt)("inlineCode",{parentName:"h3"},"scopes")," section"),(0,n.kt)("p",null,"The following fields are defined for the section ",(0,n.kt)("inlineCode",{parentName:"p"},"scopes"),":"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," of a third-party ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," of which contains ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that have been imported into the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),". This ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," has been chosen by the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," of which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is part, to refer to that particular third-party ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),". This ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," may differ from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of that third-party ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," have chosen for this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," ",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL that locates the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory")," associated with that third-party ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")))),(0,n.kt)("h2",{id:"mrg-entries"},"MRG Entries (the ",(0,n.kt)("inlineCode",{parentName:"h2"},"entries")," section)"),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"entries")," section of an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is a list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries"),", the purpose of which is that the various tools can find all data that is relevant for the purpose that such a tool serves."),(0,n.kt)("p",null,"This ",(0,n.kt)("inlineCode",{parentName:"p"},"entries")," section documentents the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that is ","[identified]"," by each of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontags")," in either the ",(0,n.kt)("inlineCode",{parentName:"p"},"vsntag")," field or the ",(0,n.kt)("inlineCode",{parentName:"p"},"altvsntag")," field in the ",(0,n.kt)("inlineCode",{parentName:"p"},"terminology")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"."),(0,n.kt)("p",null,"An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," has a few fields that are always present, because the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrgt",hovertext:"MRGT: a software tool designed to create, manage, and process Machine Readable Glossaries (MRGs), as [specified by TEv2](/docs/spec-tools/mrgt). MRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"MRGT")," generates them, as follows:"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Field"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Value(s) that are assigned to the fields"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from within which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is obtained. This is either ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from within which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," has been generated, or the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," was imported. In the latter case, the ",(0,n.kt)("a",{parentName:"td",href:"#mrg-scopes"},(0,n.kt)("inlineCode",{parentName:"a"},"scopes")," section")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," MUST contain a mapping between the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")," and its associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"Versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," from which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is obtained. If the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," was constructed from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", its value equals the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," field in the ",(0,n.kt)("a",{parentName:"td",href:"#mrg-terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"terminology"),"-section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is a part of. As a result, ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag"),":",(0,n.kt)("inlineCode",{parentName:"td"},"versiontag")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," from which this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," has originated.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-.]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"locator")),(0,n.kt)("td",{parentName:"tr",align:"left"},"path, relative to ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir"),"/, where ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")," can be obtained from the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopes")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", and ",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")," can be obtained from the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," that lives in this ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),", where the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," lives from which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," was constructed.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"navurl")),(0,n.kt)("td",{parentName:"tr",align:"left"},"path, relative to the URL as specified in the ",(0,n.kt)("inlineCode",{parentName:"td"},"website")," field in the ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-files/saf#terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"scope")," section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (that lives in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")," as specified in the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopes")," section of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"), where the rendered version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," is located.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"headingids")),(0,n.kt)("td",{parentName:"tr",align:"left"},"a list of the ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/basic-syntax/#headings"},"markdown headings")," and/or ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/extended-syntax/#linking-to-heading-ids"},"heading ids")," that exist in the file that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", and can serve as ",(0,n.kt)("inlineCode",{parentName:"td"},"trait")," in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),".")))),(0,n.kt)("p",null,"An ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," has additional fields that come from the front matter of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," represents. Some fields are"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"mandatory for all ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts"),", and hence will always appear in an ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry"),"; these appear in the table below."),(0,n.kt)("li",{parentName:"ul"},"optional for ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," - typically, e.g. to accommodate for differences in the types ",(0,n.kt)("a",{parentName:"li",href:"@"},"terminological artifacts")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated texts")," document; these also appear in the table below."),(0,n.kt)("li",{parentName:"ul"},"optional in the sense that they are intended to be processed by TEv2 tool plugins - these are not documented here."),(0,n.kt)("li",{parentName:"ul"},"optional in the sense that they are intended to be used by third party rendering tools, such as Docusaurus or Jekyll - these are also not documented here.")),(0,n.kt)("admonition",{title:"Editor's note",type:"info"},(0,n.kt)("p",{parentName:"admonition"},"We need to think about how to refer readers to sections of plugins and rendering tool documentation that they might want/need to use.")),(0,n.kt)("p",null,"The following table documents the fields that are used within the context of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Legend"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Name"))," contains the field name;"),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Req'd"))," specifies whether (",(0,n.kt)("inlineCode",{parentName:"li"},"Y"),") or not (",(0,n.kt)("inlineCode",{parentName:"li"},"n"),", or ",(0,n.kt)("inlineCode",{parentName:"li"},"F"),") the field is required to be present as a header field. The ",(0,n.kt)("inlineCode",{parentName:"li"},"F")," means that we reserve this field for Future Use."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},(0,n.kt)("inlineCode",{parentName:"strong"},"Description"))," specifies the meaning of the field, and other things you may need to know, e.g. why it is needed, a required syntax, etc."))),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Name"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Req'd"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"Scopetag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from within which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated"),", and obtained. The ",(0,n.kt)("a",{parentName:"td",href:"#mrg-scopes"},(0,n.kt)("inlineCode",{parentName:"a"},"scopes")," section")," in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," SHOULD contain a mapping between the ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag")," and its associated ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scope directory"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"Versiontag")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," from which the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is obtained. If the contents of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," was constructed from a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", its value equals the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"vsntag")," field in the ",(0,n.kt)("a",{parentName:"td",href:"#mrg-terminology"},(0,n.kt)("inlineCode",{parentName:"a"},"terminology"),"-section")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," is a part of. As a result, ",(0,n.kt)("inlineCode",{parentName:"td"},"scopetag"),":",(0,n.kt)("inlineCode",{parentName:"td"},"versiontag")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," from which this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," has originated.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-.]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"term")),(0,n.kt)("td",{parentName:"tr",align:"center"},"Y"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Text")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", and hence also the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," that describes it, which includes its ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition"),". Its value is typically the value of the ",(0,n.kt)("inlineCode",{parentName:"td"},"glossaryTerm")," field, where all characters are made lower-case, any text between parentheses is discarded, and any (sequences of) spaces (or other special characters) are replaced with a ",(0,n.kt)("inlineCode",{parentName:"td"},"-"),"character.",(0,n.kt)("br",null),"The ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-syntax/term-ref-syntax#term"},(0,n.kt)("inlineCode",{parentName:"a"},"term"),"-field")," of a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," that refers to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," must match this value.",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"termType")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-type",hovertext:"Term Type: a Text that Identifies a particular *kind* of Semantic Unit within a particular Scope. Examples include `concept`, `relation`, `pattern` (or `mental-model`)."},"Text")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the kind of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," describes. Typical values would be ",(0,n.kt)("inlineCode",{parentName:"td"},"concept"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"relation"),", ",(0,n.kt)("inlineCode",{parentName:"td"},"pattern")," (or ",(0,n.kt)("inlineCode",{parentName:"td"},"mental-model"),"), ",(0,n.kt)("inlineCode",{parentName:"td"},"term")," (or ",(0,n.kt)("inlineCode",{parentName:"td"},"alias"),"), or ",(0,n.kt)("inlineCode",{parentName:"td"},"usecase"),".",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("inlineCode",{parentName:"td"},"[a-z0-9_-]+"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"isa")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," of which this is a specialization.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"bodyFile")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Path, relative to the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopedir",hovertext:"Scopedir: a directory in a computer file system that contains all files that are either being Curated within a particular Scope, or generated to serve some purpose within that Scope."},"scopedir"),", that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),". If not specified, the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," in this file serves as the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"glossaryTerm")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that is used for the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in a human readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". For example, for a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," called ",(0,n.kt)("inlineCode",{parentName:"td"},"member"),", you may want to specify a glossaryTerm ",(0,n.kt)("inlineCode",{parentName:"td"},"member (of a [community](@))"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"glossaryText")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that is used as the (raw) contents for the entry of this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," in a human readable ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),". This text MUST be expected to contain ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"synonymOf")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/spec-syntax/12-term-identifier-syntax",hovertext:"Term Identifier: a Text, of the form `@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"Term identifier")," that ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the defined ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminological-artifact",hovertext:"Terminological Artifact: a basic building block of meaning or representation, i.e., a 'semantic unit' within the 'mind' of a Scope, such as a Concept, a Relation, or a Property."},"terminological artifact")," for which this is a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/synonym",hovertext:"Synonym: a Term that has the same (or similar) meaning as another Term."},"synonym"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"grouptags")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"List of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags"),", each of which signifies that the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," documents, is part of the group of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that it represents.",(0,n.kt)("br",null),"Example: ",(0,n.kt)("inlineCode",{parentName:"td"},"[tev2, management]"),".",(0,n.kt)("br",null),"Must satisfy regex ",(0,n.kt)("a",{parentName:"td",href:"https://www.debuggex.com/r/a51CXl1NzR3kwihT"},(0,n.kt)("inlineCode",{parentName:"a"},"(?:\\[\\s*([a-z0-9_-]+)\\s*(?:,\\s*([a-z0-9_-]+))*\\s*\\])?")),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"formPhrases")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"List of ",(0,n.kt)("a",{parentName:"td",href:"formphrase@"},"texts")," that are ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-tools/trrt#id"},"used to convert")," the ",(0,n.kt)("inlineCode",{parentName:"td"},"show text")," parts of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," into ",(0,n.kt)("inlineCode",{parentName:"td"},"term"),"s, for the purpose of accommodating plural forms (for nouns) or conjugate forms (for verbs). For details, see ",(0,n.kt)("a",{parentName:"td",href:"/docs/spec-syntax/form-phrase-syntax"},"'Syntax Specs - Form Phrases"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"status")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that identifies the status of the term. (",(0,n.kt)("a",{parentName:"td",href:"@"},"Communities")," of) ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scopes")," may specify values for this field. An example is the ",(0,n.kt)("a",{parentName:"td",href:"https://github.com/trustoverip/concepts-and-terminology-wg/blob/master/docs/status-tags.md"},"status tags used by ToIP"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"created")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Date at which of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," was created, in the date format as used within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"updated")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Date at which of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," was last modified, in the date format as used within this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"contributors")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that shows (or refers to) the people that have contributed to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"attribution")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that credits the original creation of the texts in the document.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"originalLicense")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Reference to the license of the work from which the texts were derived.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"locator")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Text that identifies the file that holds the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," describes. The full URL of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," is ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir"),"/",(0,n.kt)("inlineCode",{parentName:"td"},"locator"),", where ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir")," and ",(0,n.kt)("inlineCode",{parentName:"td"},"curatedir")," can be found in the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," (which is in the root of ",(0,n.kt)("inlineCode",{parentName:"td"},"scopedir"),"). Note that ",(0,n.kt)("inlineCode",{parentName:"td"},"locator")," may contain a path.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"navurl")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"URL that locates a human readable, rendered version of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," describes. This URL is used to resolve ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," that refer to this ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),".")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("inlineCode",{parentName:"td"},"headingids")),(0,n.kt)("td",{parentName:"tr",align:"center"},"n"),(0,n.kt)("td",{parentName:"tr",align:"left"},"a list of the ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/basic-syntax/#headings"},"markdown headings")," and/or ",(0,n.kt)("a",{parentName:"td",href:"https://www.markdownguide.org/extended-syntax/#linking-to-heading-ids"},"heading ids")," that exist in the file that contains the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/body",hovertext:"Body (of a Curated Text) the part of a curated text that comes after its its header (also called the 'front-matter')."},"body")," of the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curated-text",hovertext:"Curated Text: a text that documents a Concept or other Semantic Unit of a specific Community or other Party, and is located within a Scope that is owned by that Community/Party."},"curated text"),", and can serve as ",(0,n.kt)("inlineCode",{parentName:"td"},"trait")," in a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),".")))),(0,n.kt)("h1",{id:"footnotes"},"Footnotes"),(0,n.kt)("div",{className:"footnotes"},(0,n.kt)("hr",{parentName:"div"}),(0,n.kt)("ol",{parentName:"div"},(0,n.kt)("li",{parentName:"ol",id:"fn-1"},"The ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," is an inventory rather than a ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary"),", because it contains ",(0,n.kt)("em",{parentName:"li"},"all")," ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic units")," that are ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated")," within the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),": apart from ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),", it also include e.g., ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mental-model",hovertext:"Mental Model: A Semantic Unit that relates a set of Concepts (ideas), Relations between them, and constraints about a certain topic, into a coherent and consistent whole (sometimes called 'viewpoint', or 'way of thinking')."},"mental models")," and ",(0,n.kt)("a",{parentName:"li",href:"@"},"use cases"),". We choose to maintain the ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term"),' "Machine Readable Glossary" (',(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),"), because most of us would view it - initially, at least - as a list of ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," and their ",(0,n.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definitions"),".",(0,n.kt)("a",{parentName:"li",href:"#fnref-1",className:"footnote-backref"},"\u21a9")))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/bcb93ad0.5a378aef.js b/assets/js/bcb93ad0.aeb1d895.js similarity index 99% rename from assets/js/bcb93ad0.5a378aef.js rename to assets/js/bcb93ad0.aeb1d895.js index 1b3930f05b..a1ae55b3f7 100644 --- a/assets/js/bcb93ad0.5a378aef.js +++ b/assets/js/bcb93ad0.aeb1d895.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[4069],{3905:function(e,t,o){o.d(t,{Zo:function(){return h},kt:function(){return u}});var i=o(7294);function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function r(e){for(var t=1;t=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),l=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):r(r({},t),e)),o},h=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=l(o),u=n,m=p["".concat(c,".").concat(u)]||p[u]||d[u]||a;return o?i.createElement(m,r(r({ref:t},h),{},{components:o})):i.createElement(m,r({ref:t},h))}));function u(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,r=new Array(a);r[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,r[1]=s;for(var l=2;l=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var c=i.createContext({}),l=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):r(r({},t),e)),o},h=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var o=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=l(o),u=n,m=p["".concat(c,".").concat(u)]||p[u]||d[u]||a;return o?i.createElement(m,r(r({ref:t},h),{},{components:o})):i.createElement(m,r({ref:t},h))}));function u(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=o.length,r=new Array(a);r[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,r[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},d=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=l(r),m=o,h=p["".concat(c,".").concat(m)]||p[m]||f[m]||i;return r?n.createElement(h,a(a({ref:t},d),{},{components:r})):n.createElement(h,a({ref:t},d))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},d=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},p=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=l(r),m=o,h=p["".concat(c,".").concat(m)]||p[m]||f[m]||i;return r?n.createElement(h,a(a({ref:t},d),{},{components:r})):n.createElement(h,a({ref:t},d))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=i.createContext({}),l=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},f=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,f=s(e,["components","mdxType","originalType","parentName"]),u=l(r),p=o,h=u["".concat(c,".").concat(p)]||u[p]||d[p]||n;return r?i.createElement(h,a(a({ref:t},f),{},{components:r})):i.createElement(h,a({ref:t},f))}));function p(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,a=new Array(n);a[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=i.createContext({}),l=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},f=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,f=s(e,["components","mdxType","originalType","parentName"]),u=l(r),p=o,h=u["".concat(c,".").concat(p)]||u[p]||d[p]||n;return r?i.createElement(h,a(a({ref:t},f),{},{components:r})):i.createElement(h,a({ref:t},f))}));function p(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,a=new Array(n);a[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),l=p(r),d=o,f=l["".concat(c,".").concat(d)]||l[d]||m[d]||a;return r?n.createElement(f,i(i({ref:t},u),{},{components:r})):n.createElement(f,i({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=l;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var p=2;p=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),l=p(r),d=o,f=l["".concat(c,".").concat(d)]||l[d]||m[d]||a;return r?n.createElement(f,i(i({ref:t},u),{},{components:r})):n.createElement(f,i({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=l;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var p=2;p=0||(s[r]=e[r]);return s}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(s[r]=e[r])}return s}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var r=e.components,s=e.mdxType,n=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),u=l(r),d=s,m=u["".concat(c,".").concat(d)]||u[d]||f[d]||n;return r?o.createElement(m,a(a({ref:t},p),{},{components:r})):o.createElement(m,a({ref:t},p))}));function d(e,t){var r=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var n=r.length,a=new Array(n);a[0]=u;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:s,a[1]=i;for(var l=2;l=0||(s[r]=e[r]);return s}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(s[r]=e[r])}return s}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var r=e.components,s=e.mdxType,n=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),u=l(r),d=s,m=u["".concat(c,".").concat(d)]||u[d]||f[d]||n;return r?o.createElement(m,a(a({ref:t},p),{},{components:r})):o.createElement(m,a({ref:t},p))}));function d(e,t){var r=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var n=r.length,a=new Array(n);a[0]=u;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:s,a[1]=i;for(var l=2;l=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}var c=o.createContext({}),u=function(t){var e=o.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):s(s({},e),t)),n},p=function(t){var e=u(t.components);return o.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},d=o.forwardRef((function(t,e){var n=t.components,r=t.mdxType,i=t.originalType,c=t.parentName,p=a(t,["components","mdxType","originalType","parentName"]),d=u(n),l=r,m=d["".concat(c,".").concat(l)]||d[l]||h[l]||i;return n?o.createElement(m,s(s({ref:e},p),{},{components:n})):o.createElement(m,s({ref:e},p))}));function l(t,e){var n=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var i=n.length,s=new Array(i);s[0]=d;var a={};for(var c in e)hasOwnProperty.call(e,c)&&(a[c]=e[c]);a.originalType=t,a.mdxType="string"==typeof t?t:r,s[1]=a;for(var u=2;u=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}var c=o.createContext({}),u=function(t){var e=o.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):s(s({},e),t)),n},p=function(t){var e=u(t.components);return o.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},d=o.forwardRef((function(t,e){var n=t.components,r=t.mdxType,i=t.originalType,c=t.parentName,p=a(t,["components","mdxType","originalType","parentName"]),d=u(n),l=r,m=d["".concat(c,".").concat(l)]||d[l]||h[l]||i;return n?o.createElement(m,s(s({ref:e},p),{},{components:n})):o.createElement(m,s({ref:e},p))}));function l(t,e){var n=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var i=n.length,s=new Array(i);s[0]=d;var a={};for(var c in e)hasOwnProperty.call(e,c)&&(a[c]=e[c]);a.originalType=t,a.mdxType="string"==typeof t?t:r,s[1]=a;for(var u=2;u=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=r.createContext({}),p=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},l=function(e){var t=p(e.components);return r.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),u=p(n),d=i,v=u["".concat(c,".").concat(d)]||u[d]||f[d]||o;return n?r.createElement(v,a(a({ref:t},l),{},{components:n})):r.createElement(v,a({ref:t},l))}));function d(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,a=new Array(o);a[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var p=2;p=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var c=r.createContext({}),p=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},l=function(e){var t=p(e.components);return r.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),u=p(n),d=i,v=u["".concat(c,".").concat(d)]||u[d]||f[d]||o;return n?r.createElement(v,a(a({ref:t},l),{},{components:n})):r.createElement(v,a({ref:t},l))}));function d(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,a=new Array(o);a[0]=u;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var p=2;p=0||(r[i]=e[i]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(r[i]=e[i])}return r}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},p=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var i=e.components,r=e.mdxType,a=e.originalType,c=e.parentName,p=n(e,["components","mdxType","originalType","parentName"]),d=h(i),m=r,u=d["".concat(c,".").concat(m)]||d[m]||l[m]||a;return i?o.createElement(u,s(s({ref:t},p),{},{components:i})):o.createElement(u,s({ref:t},p))}));function m(e,t){var i=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=i.length,s=new Array(a);s[0]=d;var n={};for(var c in t)hasOwnProperty.call(t,c)&&(n[c]=t[c]);n.originalType=e,n.mdxType="string"==typeof e?e:r,s[1]=n;for(var h=2;h=0||(r[i]=e[i]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(r[i]=e[i])}return r}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},p=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},d=o.forwardRef((function(e,t){var i=e.components,r=e.mdxType,a=e.originalType,c=e.parentName,p=n(e,["components","mdxType","originalType","parentName"]),d=h(i),m=r,u=d["".concat(c,".").concat(m)]||d[m]||l[m]||a;return i?o.createElement(u,s(s({ref:t},p),{},{components:i})):o.createElement(u,s({ref:t},p))}));function m(e,t){var i=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=i.length,s=new Array(a);s[0]=d;var n={};for(var c in t)hasOwnProperty.call(t,c)&&(n[c]=t[c]);n.originalType=e,n.mdxType="string"==typeof e?e:r,s[1]=n;for(var h=2;h=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=a.createContext({}),p=function(e){var t=a.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},l=function(e){var t=p(e.components);return a.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),m=p(n),f=r,h=m["".concat(c,".").concat(f)]||m[f]||u[f]||i;return n?a.createElement(h,o(o({ref:t},l),{},{components:n})):a.createElement(h,o({ref:t},l))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var p=2;p=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=a.createContext({}),p=function(e){var t=a.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},l=function(e){var t=p(e.components);return a.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),m=p(n),f=r,h=m["".concat(c,".").concat(f)]||m[f]||u[f]||i;return n?a.createElement(h,o(o({ref:t},l),{},{components:n})):a.createElement(h,o({ref:t},l))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var p=2;p=0||(s[r]=e[r]);return s}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(s[r]=e[r])}return s}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},h=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,s=e.mdxType,a=e.originalType,c=e.parentName,h=n(e,["components","mdxType","originalType","parentName"]),m=l(r),d=s,u=m["".concat(c,".").concat(d)]||m[d]||p[d]||a;return r?o.createElement(u,i(i({ref:t},h),{},{components:r})):o.createElement(u,i({ref:t},h))}));function d(e,t){var r=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var a=r.length,i=new Array(a);i[0]=m;var n={};for(var c in t)hasOwnProperty.call(t,c)&&(n[c]=t[c]);n.originalType=e,n.mdxType="string"==typeof e?e:s,i[1]=n;for(var l=2;l=0||(s[r]=e[r]);return s}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(s[r]=e[r])}return s}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},h=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,s=e.mdxType,a=e.originalType,c=e.parentName,h=n(e,["components","mdxType","originalType","parentName"]),m=l(r),d=s,u=m["".concat(c,".").concat(d)]||m[d]||p[d]||a;return r?o.createElement(u,i(i({ref:t},h),{},{components:r})):o.createElement(u,i({ref:t},h))}));function d(e,t){var r=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var a=r.length,i=new Array(a);i[0]=m;var n={};for(var c in t)hasOwnProperty.call(t,c)&&(n[c]=t[c]);n.originalType=e,n.mdxType="string"==typeof e?e:s,i[1]=n;for(var l=2;l=0||(n[i]=t[i]);return n}(t,e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(n[i]=t[i])}return n}var c=o.createContext({}),h=function(t){var e=o.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):a(a({},e),t)),i},u=function(t){var e=h(t.components);return o.createElement(c.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},d=o.forwardRef((function(t,e){var i=t.components,n=t.mdxType,r=t.originalType,c=t.parentName,u=s(t,["components","mdxType","originalType","parentName"]),d=h(i),m=n,l=d["".concat(c,".").concat(m)]||d[m]||p[m]||r;return i?o.createElement(l,a(a({ref:e},u),{},{components:i})):o.createElement(l,a({ref:e},u))}));function m(t,e){var i=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var r=i.length,a=new Array(r);a[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,a[1]=s;for(var h=2;h=0||(n[i]=t[i]);return n}(t,e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,i)&&(n[i]=t[i])}return n}var c=o.createContext({}),h=function(t){var e=o.useContext(c),i=e;return t&&(i="function"==typeof t?t(e):a(a({},e),t)),i},u=function(t){var e=h(t.components);return o.createElement(c.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},d=o.forwardRef((function(t,e){var i=t.components,n=t.mdxType,r=t.originalType,c=t.parentName,u=s(t,["components","mdxType","originalType","parentName"]),d=h(i),m=n,l=d["".concat(c,".").concat(m)]||d[m]||p[m]||r;return i?o.createElement(l,a(a({ref:e},u),{},{components:i})):o.createElement(l,a({ref:e},u))}));function m(t,e){var i=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var r=i.length,a=new Array(r);a[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,a[1]=s;for(var h=2;h=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var h=n.createContext({}),c=function(e){var t=n.useContext(h),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},d=function(e){var t=c(e.components);return n.createElement(h.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var i=e.components,o=e.mdxType,a=e.originalType,h=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),l=c(i),m=o,f=l["".concat(h,".").concat(m)]||l[m]||p[m]||a;return i?n.createElement(f,r(r({ref:t},d),{},{components:i})):n.createElement(f,r({ref:t},d))}));function m(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=i.length,r=new Array(a);r[0]=l;var s={};for(var h in t)hasOwnProperty.call(t,h)&&(s[h]=t[h]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var c=2;cshowtext",id:"showtext",level:3},{value:"term",id:"term",level:3},{value:"trait",id:"trait",level:3},{value:"scopetag",id:"scopetag",level:3},{value:"vsntag",id:"vsntag",level:3},{value:"Alternative notation",id:"alternative-syntax",level:3}],l={toc:p};function m(e){var t=e.components,i=(0,o.Z)(e,r);return(0,a.kt)("wrapper",(0,n.Z)({},l,i,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"term-references---syntax"},"Term References - Syntax"),(0,a.kt)("p",null,"As an ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author")," or ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curator"),", you want to be able to mark words or phrases, and have them refer to (the documentation of) a particular ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concept")," or other ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),". Such marked-up words or phrases are called ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),". This text specifies the syntax that you can use to ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author")," ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),"."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"Also, you will want to (and actually can) control the effect that your ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," must have when it is rendered. After all, the effect you seek it to have as part of a rendered static website (e.g. so that it produces a popup with its definition) would be quite different form when it would be part of a PDF (in which case you may want it to become part of an automatically generated ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary")," in one of the papers annexes). Selecting the effect is done by properly instructing the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TermRef resolution tool")," when your text is processed for rendering."),(0,a.kt)("p",{parentName:"admonition"},"We need some text here that points to the documentation for doing so. This could be e.g. in the ",(0,a.kt)("a",{parentName:"p",href:"/docs/manuals/author"},"authors manual")," and ",(0,a.kt)("a",{parentName:"p",href:"/docs/manuals/curator"},"curators manual"),", but also in the ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-tools/trrt"},"TRRT specifications"),", or in some manual that deals with adding rendering plugins.")),(0,a.kt)("p",null,"while at the same time referring to the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition")," that defines its meaning. i.e. the syntax that you need to use in such texts. The way in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," (and its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition"),") may be rendered depends on the artifact that is being generated. For example, when a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," is rendered in a web-site, it may be enhanced, showing a popup that contains its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition")," when a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"reader")," hovers the mouse over it, and that hyperlinks to the page in the website that explains the term in more detail when the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"reader")," clicks on it. When a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," is rendered in a PDF file, its definition may appear as an entry in a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary")," that is added somewhere in the PDF. It all depends on the rendering tools that are being used, and this is out of scope for this specification."),(0,a.kt)("p",null,"This file specifies the syntax of ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),". The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," describes ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-tools/trrt#term-ref-resolution"},"how they are processed (resolved)"),"."),(0,a.kt)("h2",{id:"basic-syntax"},"Term References (Original/Default Syntax)"),(0,a.kt)("p",null,"A ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," can be thought of as a ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"Markdown link"),", but rather than linking to some URL or fragment, it refers/links to a specific descriptive text (e.g. a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition"),", purpose, or example) that is associated with (a specific version of) a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term"),", which is ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," by its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," and the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," (label, text)."),(0,a.kt)("details",null,(0,a.kt)("summary",null,"Motivation for the chosen syntax"),(0,a.kt)("p",null,"We want to enable ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to use ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," pervasively, which means it must be easy to use, and mistakes should be (relatively) hard to make, yet easy to detect, identify, and correct. ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"Markdown links")," are of the form ","[",(0,a.kt)("inlineCode",{parentName:"p"},"show text"),"]","(",(0,a.kt)("inlineCode",{parentName:"p"},"ref-text"),"), where ",(0,a.kt)("inlineCode",{parentName:"p"},"show text")," is the text that is rendered and emphasized so that a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"reader")," knows it can be clicked, and ",(0,a.kt)("inlineCode",{parentName:"p"},"ref-text")," is a (relative or absolute) URL, or a ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/extended-syntax/#linking-to-heading-ids"},"heading ID"),", that identifies the resource (e.g. web page, or place therein) that is being referenced. So, we need a syntax for ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," that is",(0,a.kt)("br",null),"- sufficiently similar to a ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"Markdown link"),",",(0,a.kt)("br",null),"- 'humanly interpretable' when it isn't processed by the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),",",(0,a.kt)("br",null),"- easy to use for ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors"),", and",(0,a.kt)("br",null),"- sufficiently distinct from a Markdown link so that the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," will not process Markdown links yet will process the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),".")),(0,a.kt)("p",null,"Here is an example of a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),": ",(0,a.kt)("inlineCode",{parentName:"p"},"[definitions](definition@)"),". When this text is rendered into a human readable form, it will show the text ",(0,a.kt)("inlineCode",{parentName:"p"},"definitions")," (plural) enhanced, and it will link to the text that describes (or defines) the term ",(0,a.kt)("inlineCode",{parentName:"p"},"definition")," (singular). If you would want to use this term as it is defined in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," called ",(0,a.kt)("inlineCode",{parentName:"p"},"essif-lab"),", you could do that by wrinting ",(0,a.kt)("inlineCode",{parentName:"p"},"[definitions](definition@essif-lab)")," (provided that ",(0,a.kt)("inlineCode",{parentName:"p"},"essif-lab")," is a defined ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," within the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that you operate in)."),(0,a.kt)("p",null,"The complete, generic structure of a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is: ",(0,a.kt)("strong",{parentName:"p"},"[",(0,a.kt)("inlineCode",{parentName:"strong"},"show text"),"]","(",(0,a.kt)("inlineCode",{parentName:"strong"},"term"),"#",(0,a.kt)("inlineCode",{parentName:"strong"},"trait"),"@",(0,a.kt)("inlineCode",{parentName:"strong"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"strong"},"vsntag"),")"),". However, all of its elements (except for ",(0,a.kt)("inlineCode",{parentName:"p"},"show text"),") are optional, so as to limit the 'extra work' that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," need to do to a minimum."),(0,a.kt)("h3",{id:"showtext"},(0,a.kt)("inlineCode",{parentName:"h3"},"showtext")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"showtext"))," is the text that will be highlighted/emphasized to indicate it is linked.\nIt must not contain the characters ",(0,a.kt)("inlineCode",{parentName:"p"},"@")," or ",(0,a.kt)("inlineCode",{parentName:"p"},"]")," (this is needed to distinguish ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," from regular ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown links"),")."),(0,a.kt)("h3",{id:"term"},(0,a.kt)("inlineCode",{parentName:"h3"},"term")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"term"))," is the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that is to be referred to.",(0,a.kt)("br",null),"It must satisfy the regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-]+"),"."),(0,a.kt)("p",null,"If omitted, its value is assumed to be ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-tools/trrt#id"},"derivable from ",(0,a.kt)("inlineCode",{parentName:"a"},"showtext")),".\nAt a minimum, this is the case if the ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," equals the result of processing ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," by first converting every character in the range ",(0,a.kt)("inlineCode",{parentName:"p"},"[A-Z]")," to lower-case, and then replacing every sequence of characters specified by regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[^A-Za-z_-]+")," with (a single) ",(0,a.kt)("inlineCode",{parentName:"p"},"-")," character."),(0,a.kt)("h3",{id:"trait"},(0,a.kt)("inlineCode",{parentName:"h3"},"trait")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"trait"))," is a text that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a particular (kind of) characteristic (feature, attribute, particularity) that is associated with the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term"),", and to a description of which is to be referred.",(0,a.kt)("br",null),"It must satisfy the regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-]+"),"."),(0,a.kt)("p",null,"If omitted (in which case the preceding ",(0,a.kt)("inlineCode",{parentName:"p"},"#"),"-character may also be omitted), the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," will by default resolve to the text of its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary")," entry. While it is envisaged that ",(0,a.kt)("inlineCode",{parentName:"p"},"trait")," must be a text from a predefined set of allowed/supported texts (e.g. ",(0,a.kt)("inlineCode",{parentName:"p"},"purpose"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"criteria"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"example-3"),"), the precise semantics remain to be specified."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The semantics of ",(0,a.kt)("inlineCode",{parentName:"p"},"trait")," need to be better specified.")),(0,a.kt)("h3",{id:"scopetag"},(0,a.kt)("inlineCode",{parentName:"h3"},"scopetag")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"scopetag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tag",hovertext:"Tag: an alphanumeric string that is used to identify Scopes (so called 'scopetags'), group Terms (so called 'grouptags'), or identify a specific version of a Terminology (so called 'versiontags') from within a specific Scope."},"tag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that contains the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that is being referenced.",(0,a.kt)("br",null),"It must satisfy the regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-]+"),". Also, it must appear as such in the ",(0,a.kt)("inlineCode",{parentName:"p"},"scopes")," section of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the document containing the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is being maintained, or it must be the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," itself."),(0,a.kt)("p",null,"If omitted, a default ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," will be used, which is the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," is being called, which SHOULD be the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the document containing the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is being maintained. Note that the preceding ",(0,a.kt)("inlineCode",{parentName:"p"},"@")," sign MUST NOT be omitted because as it serves the purpose to distinguish ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," from other ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown links"),"."),(0,a.kt)("h3",{id:"vsntag"},(0,a.kt)("inlineCode",{parentName:"h3"},"vsntag")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"vsntag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the specific version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that contains the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that is being referenced.",(0,a.kt)("br",null),"It must satisfy the regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-\\.]+"),"."),(0,a.kt)("p",null,"If omitted (in which case the preceding ",(0,a.kt)("inlineCode",{parentName:"p"},":"),"-character may also be omitted), its value will be the default, which is determined by the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that has the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that contains the (scoped) term](scoped-term@) that is being referenced, is specified in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", in the appropriate ",(0,a.kt)("inlineCode",{parentName:"p"},"scopes.mrgfile"),"-field). A ",(0,a.kt)("inlineCode",{parentName:"p"},"vsntag")," is only valid if it appears as the value of the ",(0,a.kt)("inlineCode",{parentName:"p"},"vsntag")," field or an element of the ",(0,a.kt)("inlineCode",{parentName:"p"},"altvsntags")," field in one of the list-elements of the ",(0,a.kt)("inlineCode",{parentName:"p"},"versions")," field in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"It has been suggested to provide ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," syntax that allows one to refer to a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," from a ","[terminology]"," that was 'current'/'latest'/... at a particular date. The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#versions"},"versioning specifications")," already cater for ",(0,a.kt)("inlineCode",{parentName:"p"},"from")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"to")," dates, but everything else needs to be worked out.")),(0,a.kt)("h3",{id:"alternative-syntax"},"Alternative notation"),(0,a.kt)("p",null,"It is convenient for ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to be able to use the '@",(0,a.kt)("inlineCode",{parentName:"p"},"scopetag"),"' part of a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," immediately behind the ",(0,a.kt)("inlineCode",{parentName:"p"},"show text")," within the square brackets (",(0,a.kt)("inlineCode",{parentName:"p"},"[")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"]"),"), and leave out the parentheses and the text in between if all the other items are omitted."),(0,a.kt)("p",null,"This is particularly useful in the vast majority of cases, where the default processing of ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," results in ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"trait")," is absent. Examples of this are ",(0,a.kt)("inlineCode",{parentName:"p"},"[definition](@)"),", or ",(0,a.kt)("inlineCode",{parentName:"p"},"[TermRef](@)"),"."),(0,a.kt)("p",null,"The usefulness becomes even greater as the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," also implements more sophisticated ways to derive a ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," from a ",(0,a.kt)("inlineCode",{parentName:"p"},"show text"),", e.g. to accommodate for plural forms (of nouns), or conjugate forms (for verbs)."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"This alternative notation will assume that the ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," part of a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," won't contain the ",(0,a.kt)("inlineCode",{parentName:"p"},"@")," character. However, it is likely that some ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," will want to use an email address as the ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," part of a ",(0,a.kt)("em",{parentName:"p"},"regular")," link, e.g. as in ",(0,a.kt)("inlineCode",{parentName:"p"},"[rieks.joosten@tno.nl](mailto:rieks.joosten@tno.nl)"),". However, since ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," should not contain ",(0,a.kt)("inlineCode",{parentName:"p"},"."),"-characters, ",(0,a.kt)("inlineCode",{parentName:"p"},"[rieks.joosten@tno.nl]")," does not qualify as a ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," in our syntax. ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"Authors")," should ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#urls-and-email-addresses"},"use angle brackets to link to email addresses"),", as in ",(0,a.kt)("inlineCode",{parentName:"p"},""),".")),(0,a.kt)("p",null,"This leads to an alternative notation that can be used in addition to the previously specified notation. Here is the alternative syntax and its equivalent counterpart:"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"center"},"Alternative syntax"),(0,a.kt)("th",{parentName:"tr",align:"center"},"Equivalent regular syntax"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"@","]"),(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"]","(@)")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"@",(0,a.kt)("inlineCode",{parentName:"td"},"scopetag"),"]"),(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"]","(",(0,a.kt)("inlineCode",{parentName:"td"},"showtext"),"@",(0,a.kt)("inlineCode",{parentName:"td"},"scopetag"),")")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"@",(0,a.kt)("inlineCode",{parentName:"td"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"td"},"vsntag"),"]","(",(0,a.kt)("inlineCode",{parentName:"td"},"term"),"#",(0,a.kt)("inlineCode",{parentName:"td"},"trait"),")"),(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"]","(",(0,a.kt)("inlineCode",{parentName:"td"},"term"),"#",(0,a.kt)("inlineCode",{parentName:"td"},"trait"),"@",(0,a.kt)("inlineCode",{parentName:"td"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"td"},"vsntag"),")")))),(0,a.kt)("p",null,"In the last row of the above table, ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"#trait")," are optional. Thus, ",(0,a.kt)("inlineCode",{parentName:"p"},"[definition@]()")," is equivalent with ",(0,a.kt)("inlineCode",{parentName:"p"},"[definition](@)")," and with ",(0,a.kt)("inlineCode",{parentName:"p"},"[definition](@)"),"."))}m.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[5446],{3905:function(e,t,i){i.d(t,{Zo:function(){return d},kt:function(){return m}});var n=i(7294);function o(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,n)}return i}function r(e){for(var t=1;t=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var h=n.createContext({}),c=function(e){var t=n.useContext(h),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},d=function(e){var t=c(e.components);return n.createElement(h.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var i=e.components,o=e.mdxType,a=e.originalType,h=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),l=c(i),m=o,f=l["".concat(h,".").concat(m)]||l[m]||p[m]||a;return i?n.createElement(f,r(r({ref:t},d),{},{components:i})):n.createElement(f,r({ref:t},d))}));function m(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=i.length,r=new Array(a);r[0]=l;var s={};for(var h in t)hasOwnProperty.call(t,h)&&(s[h]=t[h]);s.originalType=e,s.mdxType="string"==typeof e?e:o,r[1]=s;for(var c=2;cshowtext",id:"showtext",level:3},{value:"term",id:"term",level:3},{value:"trait",id:"trait",level:3},{value:"scopetag",id:"scopetag",level:3},{value:"vsntag",id:"vsntag",level:3},{value:"Alternative notation",id:"alternative-syntax",level:3}],l={toc:p};function m(e){var t=e.components,i=(0,o.Z)(e,r);return(0,a.kt)("wrapper",(0,n.Z)({},l,i,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"term-references---syntax"},"Term References - Syntax"),(0,a.kt)("p",null,"As an ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author")," or ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curator"),", you want to be able to mark words or phrases, and have them refer to (the documentation of) a particular ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/concept",hovertext:"Concept: a Semantic Unit that captures the ideas/thoughts behind a classification of Entities (what makes Entities in that class 'the same')."},"concept")," or other ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit"),". Such marked-up words or phrases are called ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),". This text specifies the syntax that you can use to ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"author")," ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),"."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"Also, you will want to (and actually can) control the effect that your ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," must have when it is rendered. After all, the effect you seek it to have as part of a rendered static website (e.g. so that it produces a popup with its definition) would be quite different form when it would be part of a PDF (in which case you may want it to become part of an automatically generated ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary")," in one of the papers annexes). Selecting the effect is done by properly instructing the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TermRef resolution tool")," when your text is processed for rendering."),(0,a.kt)("p",{parentName:"admonition"},"We need some text here that points to the documentation for doing so. This could be e.g. in the ",(0,a.kt)("a",{parentName:"p",href:"/docs/manuals/author"},"authors manual")," and ",(0,a.kt)("a",{parentName:"p",href:"/docs/manuals/curator"},"curators manual"),", but also in the ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-tools/trrt"},"TRRT specifications"),", or in some manual that deals with adding rendering plugins.")),(0,a.kt)("p",null,"while at the same time referring to the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition")," that defines its meaning. i.e. the syntax that you need to use in such texts. The way in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," (and its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition"),") may be rendered depends on the artifact that is being generated. For example, when a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," is rendered in a web-site, it may be enhanced, showing a popup that contains its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition")," when a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"reader")," hovers the mouse over it, and that hyperlinks to the page in the website that explains the term in more detail when the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"reader")," clicks on it. When a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," is rendered in a PDF file, its definition may appear as an entry in a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary")," that is added somewhere in the PDF. It all depends on the rendering tools that are being used, and this is out of scope for this specification."),(0,a.kt)("p",null,"This file specifies the syntax of ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),". The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," describes ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-tools/trrt#term-ref-resolution"},"how they are processed (resolved)"),"."),(0,a.kt)("h2",{id:"basic-syntax"},"Term References (Original/Default Syntax)"),(0,a.kt)("p",null,"A ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," can be thought of as a ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"Markdown link"),", but rather than linking to some URL or fragment, it refers/links to a specific descriptive text (e.g. a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/definition",hovertext:"Definition: a text that helps Parties to have the same understanding about the meaning of (and Concepts behind) a Term, ideally in such a way that these Parties can determine whether or not they make the same distinction."},"definition"),", purpose, or example) that is associated with (a specific version of) a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term"),", which is ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identified")," by its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," and the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," (label, text)."),(0,a.kt)("details",null,(0,a.kt)("summary",null,"Motivation for the chosen syntax"),(0,a.kt)("p",null,"We want to enable ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to use ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," pervasively, which means it must be easy to use, and mistakes should be (relatively) hard to make, yet easy to detect, identify, and correct. ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"Markdown links")," are of the form ","[",(0,a.kt)("inlineCode",{parentName:"p"},"show text"),"]","(",(0,a.kt)("inlineCode",{parentName:"p"},"ref-text"),"), where ",(0,a.kt)("inlineCode",{parentName:"p"},"show text")," is the text that is rendered and emphasized so that a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/reader",hovertext:"Reader: a person that reads a text that is authored by another person (its Author]), and that tries to understand the meaning of this text in the way its Author intended."},"reader")," knows it can be clicked, and ",(0,a.kt)("inlineCode",{parentName:"p"},"ref-text")," is a (relative or absolute) URL, or a ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/extended-syntax/#linking-to-heading-ids"},"heading ID"),", that identifies the resource (e.g. web page, or place therein) that is being referenced. So, we need a syntax for ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," that is",(0,a.kt)("br",null),"- sufficiently similar to a ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"Markdown link"),",",(0,a.kt)("br",null),"- 'humanly interpretable' when it isn't processed by the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT"),",",(0,a.kt)("br",null),"- easy to use for ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors"),", and",(0,a.kt)("br",null),"- sufficiently distinct from a Markdown link so that the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," will not process Markdown links yet will process the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs"),".")),(0,a.kt)("p",null,"Here is an example of a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef"),": ",(0,a.kt)("inlineCode",{parentName:"p"},"[definitions](definition@)"),". When this text is rendered into a human readable form, it will show the text ",(0,a.kt)("inlineCode",{parentName:"p"},"definitions")," (plural) enhanced, and it will link to the text that describes (or defines) the term ",(0,a.kt)("inlineCode",{parentName:"p"},"definition")," (singular). If you would want to use this term as it is defined in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," called ",(0,a.kt)("inlineCode",{parentName:"p"},"essif-lab"),", you could do that by wrinting ",(0,a.kt)("inlineCode",{parentName:"p"},"[definitions](definition@essif-lab)")," (provided that ",(0,a.kt)("inlineCode",{parentName:"p"},"essif-lab")," is a defined ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," within the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that you operate in)."),(0,a.kt)("p",null,"The complete, generic structure of a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is: ",(0,a.kt)("strong",{parentName:"p"},"[",(0,a.kt)("inlineCode",{parentName:"strong"},"show text"),"]","(",(0,a.kt)("inlineCode",{parentName:"strong"},"term"),"#",(0,a.kt)("inlineCode",{parentName:"strong"},"trait"),"@",(0,a.kt)("inlineCode",{parentName:"strong"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"strong"},"vsntag"),")"),". However, all of its elements (except for ",(0,a.kt)("inlineCode",{parentName:"p"},"show text"),") are optional, so as to limit the 'extra work' that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," need to do to a minimum."),(0,a.kt)("h3",{id:"showtext"},(0,a.kt)("inlineCode",{parentName:"h3"},"showtext")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"showtext"))," is the text that will be highlighted/emphasized to indicate it is linked.\nIt must not contain the characters ",(0,a.kt)("inlineCode",{parentName:"p"},"@")," or ",(0,a.kt)("inlineCode",{parentName:"p"},"]")," (this is needed to distinguish ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," from regular ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown links"),")."),(0,a.kt)("h3",{id:"term"},(0,a.kt)("inlineCode",{parentName:"h3"},"term")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"term"))," is the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," that is to be referred to.",(0,a.kt)("br",null),"It must satisfy the regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-]+"),"."),(0,a.kt)("p",null,"If omitted, its value is assumed to be ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-tools/trrt#id"},"derivable from ",(0,a.kt)("inlineCode",{parentName:"a"},"showtext")),".\nAt a minimum, this is the case if the ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," equals the result of processing ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," by first converting every character in the range ",(0,a.kt)("inlineCode",{parentName:"p"},"[A-Z]")," to lower-case, and then replacing every sequence of characters specified by regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[^A-Za-z_-]+")," with (a single) ",(0,a.kt)("inlineCode",{parentName:"p"},"-")," character."),(0,a.kt)("h3",{id:"trait"},(0,a.kt)("inlineCode",{parentName:"h3"},"trait")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"trait"))," is a text that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," a particular (kind of) characteristic (feature, attribute, particularity) that is associated with the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term"),", and to a description of which is to be referred.",(0,a.kt)("br",null),"It must satisfy the regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-]+"),"."),(0,a.kt)("p",null,"If omitted (in which case the preceding ",(0,a.kt)("inlineCode",{parentName:"p"},"#"),"-character may also be omitted), the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," will by default resolve to the text of its ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/glossary",hovertext:"Glossary: an alphabetically sorted list of Terms with the (single) meaning it has in (at least) one context."},"glossary")," entry. While it is envisaged that ",(0,a.kt)("inlineCode",{parentName:"p"},"trait")," must be a text from a predefined set of allowed/supported texts (e.g. ",(0,a.kt)("inlineCode",{parentName:"p"},"purpose"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"criteria"),", ",(0,a.kt)("inlineCode",{parentName:"p"},"example-3"),"), the precise semantics remain to be specified."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"The semantics of ",(0,a.kt)("inlineCode",{parentName:"p"},"trait")," need to be better specified.")),(0,a.kt)("h3",{id:"scopetag"},(0,a.kt)("inlineCode",{parentName:"h3"},"scopetag")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"scopetag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tag",hovertext:"Tag: an alphanumeric string that is used to identify Scopes (so called 'scopetags'), group Terms (so called 'grouptags'), or identify a specific version of a Terminology (so called 'versiontags') from within a specific Scope."},"tag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that contains the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that is being referenced.",(0,a.kt)("br",null),"It must satisfy the regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-]+"),". Also, it must appear as such in the ",(0,a.kt)("inlineCode",{parentName:"p"},"scopes")," section of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the document containing the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is being maintained, or it must be the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," itself."),(0,a.kt)("p",null,"If omitted, a default ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," will be used, which is the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," from which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," is being called, which SHOULD be the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," within which the document containing the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," is being maintained. Note that the preceding ",(0,a.kt)("inlineCode",{parentName:"p"},"@")," sign MUST NOT be omitted because as it serves the purpose to distinguish ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRefs")," from other ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#links"},"markdown links"),"."),(0,a.kt)("h3",{id:"vsntag"},(0,a.kt)("inlineCode",{parentName:"h3"},"vsntag")),(0,a.kt)("p",null,(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"vsntag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the specific version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that contains the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scoped-term",hovertext:"Scoped Term: a Term that represents (and Identifies) a specific Semantic Unit of a particular Community (or Party)."},"(scoped) term")," that is being referenced.",(0,a.kt)("br",null),"It must satisfy the regex ",(0,a.kt)("inlineCode",{parentName:"p"},"[a-z0-9_-\\.]+"),"."),(0,a.kt)("p",null,"If omitted (in which case the preceding ",(0,a.kt)("inlineCode",{parentName:"p"},":"),"-character may also be omitted), its value will be the default, which is determined by the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," of that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," (the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," that has the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that contains the (scoped) term](scoped-term@) that is being referenced, is specified in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),", in the appropriate ",(0,a.kt)("inlineCode",{parentName:"p"},"scopes.mrgfile"),"-field). A ",(0,a.kt)("inlineCode",{parentName:"p"},"vsntag")," is only valid if it appears as the value of the ",(0,a.kt)("inlineCode",{parentName:"p"},"vsntag")," field or an element of the ",(0,a.kt)("inlineCode",{parentName:"p"},"altvsntags")," field in one of the list-elements of the ",(0,a.kt)("inlineCode",{parentName:"p"},"versions")," field in the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),"."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"It has been suggested to provide ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," syntax that allows one to refer to a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/semantic-unit",hovertext:"Semantic Unit: something that can be thought of as existing in a particular Knowledge, e.g. a Concept, or a Mental Model."},"semantic unit")," from a ","[terminology]"," that was 'current'/'latest'/... at a particular date. The ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#versions"},"versioning specifications")," already cater for ",(0,a.kt)("inlineCode",{parentName:"p"},"from")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"to")," dates, but everything else needs to be worked out.")),(0,a.kt)("h3",{id:"alternative-syntax"},"Alternative notation"),(0,a.kt)("p",null,"It is convenient for ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," to be able to use the '@",(0,a.kt)("inlineCode",{parentName:"p"},"scopetag"),"' part of a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," immediately behind the ",(0,a.kt)("inlineCode",{parentName:"p"},"show text")," within the square brackets (",(0,a.kt)("inlineCode",{parentName:"p"},"[")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"]"),"), and leave out the parentheses and the text in between if all the other items are omitted."),(0,a.kt)("p",null,"This is particularly useful in the vast majority of cases, where the default processing of ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," results in ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"trait")," is absent. Examples of this are ",(0,a.kt)("inlineCode",{parentName:"p"},"[definition](@)"),", or ",(0,a.kt)("inlineCode",{parentName:"p"},"[TermRef](@)"),"."),(0,a.kt)("p",null,"The usefulness becomes even greater as the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/trrt",hovertext:"TRRT (TermRef Rendering Tool): a TEv2 Tool that is designed to facilitate the visualization and rendering of TermRefs."},"TRRT")," also implements more sophisticated ways to derive a ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," from a ",(0,a.kt)("inlineCode",{parentName:"p"},"show text"),", e.g. to accommodate for plural forms (of nouns), or conjugate forms (for verbs)."),(0,a.kt)("admonition",{title:"Editor's note",type:"info"},(0,a.kt)("p",{parentName:"admonition"},"This alternative notation will assume that the ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," part of a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term-ref",hovertext:"TermRef: a word or phrase that is Marked Up (in A Specific Way) so that it refers to a particular Concept (or other Semantic Unit), enabling it to be rendered in a variety of ways for the purpose of helping Readers to (better) understand the intention of its Author."},"TermRef")," won't contain the ",(0,a.kt)("inlineCode",{parentName:"p"},"@")," character. However, it is likely that some ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"authors")," will want to use an email address as the ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," part of a ",(0,a.kt)("em",{parentName:"p"},"regular")," link, e.g. as in ",(0,a.kt)("inlineCode",{parentName:"p"},"[rieks.joosten@tno.nl](mailto:rieks.joosten@tno.nl)"),". However, since ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetags")," should not contain ",(0,a.kt)("inlineCode",{parentName:"p"},"."),"-characters, ",(0,a.kt)("inlineCode",{parentName:"p"},"[rieks.joosten@tno.nl]")," does not qualify as a ",(0,a.kt)("inlineCode",{parentName:"p"},"showtext")," in our syntax. ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/author",hovertext:"Author: a person that creates a text that is meant to be read and understood by others - usually, a particular audience."},"Authors")," should ",(0,a.kt)("a",{parentName:"p",href:"https://www.markdownguide.org/basic-syntax/#urls-and-email-addresses"},"use angle brackets to link to email addresses"),", as in ",(0,a.kt)("inlineCode",{parentName:"p"},""),".")),(0,a.kt)("p",null,"This leads to an alternative notation that can be used in addition to the previously specified notation. Here is the alternative syntax and its equivalent counterpart:"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"center"},"Alternative syntax"),(0,a.kt)("th",{parentName:"tr",align:"center"},"Equivalent regular syntax"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"@","]"),(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"]","(@)")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"@",(0,a.kt)("inlineCode",{parentName:"td"},"scopetag"),"]"),(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"]","(",(0,a.kt)("inlineCode",{parentName:"td"},"showtext"),"@",(0,a.kt)("inlineCode",{parentName:"td"},"scopetag"),")")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"@",(0,a.kt)("inlineCode",{parentName:"td"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"td"},"vsntag"),"]","(",(0,a.kt)("inlineCode",{parentName:"td"},"term"),"#",(0,a.kt)("inlineCode",{parentName:"td"},"trait"),")"),(0,a.kt)("td",{parentName:"tr",align:"center"},"[",(0,a.kt)("inlineCode",{parentName:"td"},"show text"),"]","(",(0,a.kt)("inlineCode",{parentName:"td"},"term"),"#",(0,a.kt)("inlineCode",{parentName:"td"},"trait"),"@",(0,a.kt)("inlineCode",{parentName:"td"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"td"},"vsntag"),")")))),(0,a.kt)("p",null,"In the last row of the above table, ",(0,a.kt)("inlineCode",{parentName:"p"},"term")," and ",(0,a.kt)("inlineCode",{parentName:"p"},"#trait")," are optional. Thus, ",(0,a.kt)("inlineCode",{parentName:"p"},"[definition@]()")," is equivalent with ",(0,a.kt)("inlineCode",{parentName:"p"},"[definition](@)")," and with ",(0,a.kt)("inlineCode",{parentName:"p"},"[definition](@)"),"."))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d71eb2ae.58c9544e.js b/assets/js/d71eb2ae.cc673247.js similarity index 99% rename from assets/js/d71eb2ae.58c9544e.js rename to assets/js/d71eb2ae.cc673247.js index 5296dd504e..e958c50b9c 100644 --- a/assets/js/d71eb2ae.58c9544e.js +++ b/assets/js/d71eb2ae.cc673247.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[5505],{3905:function(t,e,o){o.d(e,{Zo:function(){return u},kt:function(){return p}});var i=o(7294);function n(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}function a(t,e){var o=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),o.push.apply(o,i)}return o}function r(t){for(var e=1;e=0||(n[o]=t[o]);return n}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(n[o]=t[o])}return n}var c=i.createContext({}),h=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):r(r({},e),t)),o},u=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},m=i.forwardRef((function(t,e){var o=t.components,n=t.mdxType,a=t.originalType,c=t.parentName,u=s(t,["components","mdxType","originalType","parentName"]),m=h(o),p=n,l=m["".concat(c,".").concat(p)]||m[p]||d[p]||a;return o?i.createElement(l,r(r({ref:e},u),{},{components:o})):i.createElement(l,r({ref:e},u))}));function p(t,e){var o=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var a=o.length,r=new Array(a);r[0]=m;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,r[1]=s;for(var h=2;h=0||(n[o]=t[o]);return n}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,o)&&(n[o]=t[o])}return n}var c=i.createContext({}),h=function(t){var e=i.useContext(c),o=e;return t&&(o="function"==typeof t?t(e):r(r({},e),t)),o},u=function(t){var e=h(t.components);return i.createElement(c.Provider,{value:e},t.children)},d={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},m=i.forwardRef((function(t,e){var o=t.components,n=t.mdxType,a=t.originalType,c=t.parentName,u=s(t,["components","mdxType","originalType","parentName"]),m=h(o),p=n,l=m["".concat(c,".").concat(p)]||m[p]||d[p]||a;return o?i.createElement(l,r(r({ref:e},u),{},{components:o})):i.createElement(l,r({ref:e},u))}));function p(t,e){var o=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var a=o.length,r=new Array(a);r[0]=m;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,r[1]=s;for(var h=2;h=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),l=p(r),d=o,m=l["".concat(c,".").concat(d)]||l[d]||f[d]||a;return r?n.createElement(m,i(i({ref:t},u),{},{components:r})):n.createElement(m,i({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=l;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var p=2;p=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},u=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),l=p(r),d=o,m=l["".concat(c,".").concat(d)]||l[d]||f[d]||a;return r?n.createElement(m,i(i({ref:t},u),{},{components:r})):n.createElement(m,i({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=l;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var p=2;p=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}var c=o.createContext({}),m=function(t){var e=o.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):r(r({},e),t)),n},h=function(t){var e=m(t.components);return o.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},p=o.forwardRef((function(t,e){var n=t.components,i=t.mdxType,s=t.originalType,c=t.parentName,h=a(t,["components","mdxType","originalType","parentName"]),p=m(n),d=i,l=p["".concat(c,".").concat(d)]||p[d]||u[d]||s;return n?o.createElement(l,r(r({ref:e},h),{},{components:n})):o.createElement(l,r({ref:e},h))}));function d(t,e){var n=arguments,i=e&&e.mdxType;if("string"==typeof t||i){var s=n.length,r=new Array(s);r[0]=p;var a={};for(var c in e)hasOwnProperty.call(e,c)&&(a[c]=e[c]);a.originalType=t,a.mdxType="string"==typeof t?t:i,r[1]=a;for(var m=2;m=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}var c=o.createContext({}),m=function(t){var e=o.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):r(r({},e),t)),n},h=function(t){var e=m(t.components);return o.createElement(c.Provider,{value:e},t.children)},u={inlineCode:"code",wrapper:function(t){var e=t.children;return o.createElement(o.Fragment,{},e)}},p=o.forwardRef((function(t,e){var n=t.components,i=t.mdxType,s=t.originalType,c=t.parentName,h=a(t,["components","mdxType","originalType","parentName"]),p=m(n),d=i,l=p["".concat(c,".").concat(d)]||p[d]||u[d]||s;return n?o.createElement(l,r(r({ref:e},h),{},{components:n})):o.createElement(l,r({ref:e},h))}));function d(t,e){var n=arguments,i=e&&e.mdxType;if("string"==typeof t||i){var s=n.length,r=new Array(s);r[0]=p;var a={};for(var c in e)hasOwnProperty.call(e,c)&&(a[c]=e[c]);a.originalType=t,a.mdxType="string"==typeof t?t:i,r[1]=a;for(var m=2;m=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var c=n.createContext({}),d=function(t){var e=n.useContext(c),r=e;return t&&(r="function"==typeof t?t(e):s(s({},e),t)),r},u=function(t){var e=d(t.components);return n.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},l=n.forwardRef((function(t,e){var r=t.components,o=t.mdxType,a=t.originalType,c=t.parentName,u=i(t,["components","mdxType","originalType","parentName"]),l=d(r),p=o,f=l["".concat(c,".").concat(p)]||l[p]||h[p]||a;return r?n.createElement(f,s(s({ref:e},u),{},{components:r})):n.createElement(f,s({ref:e},u))}));function p(t,e){var r=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var a=r.length,s=new Array(a);s[0]=l;var i={};for(var c in e)hasOwnProperty.call(e,c)&&(i[c]=e[c]);i.originalType=t,i.mdxType="string"==typeof t?t:o,s[1]=i;for(var d=2;d=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var c=n.createContext({}),d=function(t){var e=n.useContext(c),r=e;return t&&(r="function"==typeof t?t(e):s(s({},e),t)),r},u=function(t){var e=d(t.components);return n.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},l=n.forwardRef((function(t,e){var r=t.components,o=t.mdxType,a=t.originalType,c=t.parentName,u=i(t,["components","mdxType","originalType","parentName"]),l=d(r),p=o,f=l["".concat(c,".").concat(p)]||l[p]||h[p]||a;return r?n.createElement(f,s(s({ref:e},u),{},{components:r})):n.createElement(f,s({ref:e},u))}));function p(t,e){var r=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var a=r.length,s=new Array(a);s[0]=l;var i={};for(var c in e)hasOwnProperty.call(e,c)&&(i[c]=e[c]);i.originalType=t,i.mdxType="string"==typeof t?t:o,s[1]=i;for(var d=2;d=0||(s[i]=e[i]);return s}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):n(n({},t),e)),i},d=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},p=o.forwardRef((function(e,t){var i=e.components,s=e.mdxType,a=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),p=h(i),l=s,f=p["".concat(c,".").concat(l)]||p[l]||m[l]||a;return i?o.createElement(f,n(n({ref:t},d),{},{components:i})):o.createElement(f,n({ref:t},d))}));function l(e,t){var i=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var a=i.length,n=new Array(a);n[0]=p;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:s,n[1]=r;for(var h=2;h=0||(s[i]=e[i]);return s}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(s[i]=e[i])}return s}var c=o.createContext({}),h=function(e){var t=o.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):n(n({},t),e)),i},d=function(e){var t=h(e.components);return o.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},p=o.forwardRef((function(e,t){var i=e.components,s=e.mdxType,a=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),p=h(i),l=s,f=p["".concat(c,".").concat(l)]||p[l]||m[l]||a;return i?o.createElement(f,n(n({ref:t},d),{},{components:i})):o.createElement(f,n({ref:t},d))}));function l(e,t){var i=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var a=i.length,n=new Array(a);n[0]=p;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:s,n[1]=r;for(var h=2;h=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}var c=i.createContext({}),l=function(t){var e=i.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):a(a({},e),t)),n},m=function(t){var e=l(t.components);return i.createElement(c.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},h=i.forwardRef((function(t,e){var n=t.components,o=t.mdxType,r=t.originalType,c=t.parentName,m=s(t,["components","mdxType","originalType","parentName"]),h=l(n),f=o,u=h["".concat(c,".").concat(f)]||h[f]||p[f]||r;return n?i.createElement(u,a(a({ref:e},m),{},{components:n})):i.createElement(u,a({ref:e},m))}));function f(t,e){var n=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var r=n.length,a=new Array(r);a[0]=h;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:o,a[1]=s;for(var l=2;l=0||(o[n]=t[n]);return o}(t,e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(o[n]=t[n])}return o}var c=i.createContext({}),l=function(t){var e=i.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):a(a({},e),t)),n},m=function(t){var e=l(t.components);return i.createElement(c.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return i.createElement(i.Fragment,{},e)}},h=i.forwardRef((function(t,e){var n=t.components,o=t.mdxType,r=t.originalType,c=t.parentName,m=s(t,["components","mdxType","originalType","parentName"]),h=l(n),f=o,u=h["".concat(c,".").concat(f)]||h[f]||p[f]||r;return n?i.createElement(u,a(a({ref:e},m),{},{components:n})):i.createElement(u,a({ref:e},m))}));function f(t,e){var n=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var r=n.length,a=new Array(r);a[0]=h;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:o,a[1]=s;for(var l=2;l=0||(n[a]=t[a]);return n}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}var c=r.createContext({}),h=function(t){var e=r.useContext(c),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=h(t.components);return r.createElement(c.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},m=r.forwardRef((function(t,e){var a=t.components,n=t.mdxType,o=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),m=h(a),l=n,f=m["".concat(c,".").concat(l)]||m[l]||p[l]||o;return a?r.createElement(f,i(i({ref:e},d),{},{components:a})):r.createElement(f,i({ref:e},d))}));function l(t,e){var a=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var o=a.length,i=new Array(o);i[0]=m;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,i[1]=s;for(var h=2;h=0||(n[a]=t[a]);return n}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(n[a]=t[a])}return n}var c=r.createContext({}),h=function(t){var e=r.useContext(c),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},d=function(t){var e=h(t.components);return r.createElement(c.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},m=r.forwardRef((function(t,e){var a=t.components,n=t.mdxType,o=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),m=h(a),l=n,f=m["".concat(c,".").concat(l)]||m[l]||p[l]||o;return a?r.createElement(f,i(i({ref:e},d),{},{components:a})):r.createElement(f,i({ref:e},d))}));function l(t,e){var a=arguments,n=e&&e.mdxType;if("string"==typeof t||n){var o=a.length,i=new Array(o);i[0]=m;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:n,i[1]=s;for(var h=2;h=0||(s[o]=e[o]);return s}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(s[o]=e[o])}return s}var c=r.createContext({}),l=function(e){var t=r.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},p=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var o=e.components,s=e.mdxType,n=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),f=l(o),d=s,u=f["".concat(c,".").concat(d)]||f[d]||m[d]||n;return o?r.createElement(u,a(a({ref:t},p),{},{components:o})):r.createElement(u,a({ref:t},p))}));function d(e,t){var o=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var n=o.length,a=new Array(n);a[0]=f;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:s,a[1]=i;for(var l=2;l=0||(s[o]=e[o]);return s}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(s[o]=e[o])}return s}var c=r.createContext({}),l=function(e){var t=r.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},p=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var o=e.components,s=e.mdxType,n=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),f=l(o),d=s,u=f["".concat(c,".").concat(d)]||f[d]||m[d]||n;return o?r.createElement(u,a(a({ref:t},p),{},{components:o})):r.createElement(u,a({ref:t},p))}));function d(e,t){var o=arguments,s=t&&t.mdxType;if("string"==typeof e||s){var n=o.length,a=new Array(n);a[0]=f;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:s,a[1]=i;for(var l=2;l=0||(i[o]=e[o]);return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var c=r.createContext({}),l=function(e){var t=r.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},m=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var o=e.components,i=e.mdxType,n=e.originalType,c=e.parentName,m=a(e,["components","mdxType","originalType","parentName"]),u=l(o),d=i,f=u["".concat(c,".").concat(d)]||u[d]||p[d]||n;return o?r.createElement(f,s(s({ref:t},m),{},{components:o})):r.createElement(f,s({ref:t},m))}));function d(e,t){var o=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var n=o.length,s=new Array(n);s[0]=u;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:i,s[1]=a;for(var l=2;l=0||(i[o]=e[o]);return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(i[o]=e[o])}return i}var c=r.createContext({}),l=function(e){var t=r.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},m=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var o=e.components,i=e.mdxType,n=e.originalType,c=e.parentName,m=a(e,["components","mdxType","originalType","parentName"]),u=l(o),d=i,f=u["".concat(c,".").concat(d)]||u[d]||p[d]||n;return o?r.createElement(f,s(s({ref:t},m),{},{components:o})):r.createElement(f,s({ref:t},m))}));function d(e,t){var o=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var n=o.length,s=new Array(n);s[0]=u;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:i,s[1]=a;for(var l=2;l=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),u=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},d=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),l=u(r),h=a,m=l["".concat(c,".").concat(h)]||l[h]||p[h]||o;return r?n.createElement(m,s(s({ref:t},d),{},{components:r})):n.createElement(m,s({ref:t},d))}));function h(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,s=new Array(o);s[0]=l;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:a,s[1]=i;for(var u=2;u=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var c=n.createContext({}),u=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},d=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},l=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),l=u(r),h=a,m=l["".concat(c,".").concat(h)]||l[h]||p[h]||o;return r?n.createElement(m,s(s({ref:t},d),{},{components:r})):n.createElement(m,s({ref:t},d))}));function h(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=r.length,s=new Array(o);s[0]=l;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:a,s[1]=i;for(var u=2;u=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},m=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),d=l(r),g=o,f=d["".concat(c,".").concat(g)]||d[g]||p[g]||a;return r?n.createElement(f,i(i({ref:t},m),{},{components:r})):n.createElement(f,i({ref:t},m))}));function g(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),l=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},m=function(e){var t=l(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),d=l(r),g=o,f=d["".concat(c,".").concat(g)]||d[g]||p[g]||a;return r?n.createElement(f,i(i({ref:t},m),{},{components:r})):n.createElement(f,i({ref:t},m))}));function g(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=a.createContext({}),l=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},h=function(e){var t=l(e.components);return a.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=l(r),f=o,d=p["".concat(c,".").concat(f)]||p[f]||u[f]||n;return r?a.createElement(d,i(i({ref:t},h),{},{components:r})):a.createElement(d,i({ref:t},h))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,i=new Array(n);i[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var l=2;l=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=a.createContext({}),l=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},h=function(e){var t=l(e.components);return a.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),p=l(r),f=o,d=p["".concat(c,".").concat(f)]||p[f]||u[f]||n;return r?a.createElement(d,i(i({ref:t},h),{},{components:r})):a.createElement(d,i({ref:t},h))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,i=new Array(n);i[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,i[1]=s;for(var l=2;l=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=i.createContext({}),f=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},m=function(e){var t=f(e.components);return i.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),p=f(r),d=n,l=p["".concat(c,".").concat(d)]||p[d]||u[d]||o;return r?i.createElement(l,a(a({ref:t},m),{},{components:r})):i.createElement(l,a({ref:t},m))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,a=new Array(o);a[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var f=2;f@`, that [identifies](@) a [semantic unit](@) within a particular [terminology](@). If `` is omitted, the current (or default) [terminology](@) is assumed.",formPhrases:"term-identifier{ss}",status:"proposed",created:new Date("2022-11-24T00:00:00.000Z"),updated:new Date("2022-11-24T00:00:00.000Z"),contributors:"RieksJ",attribution:"[eSSIF-Lab](https://essif-lab.github.io/framework)",originalLicense:"[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"},c=void 0,f={unversionedId:"terms/term-identifier",id:"terms/term-identifier",title:"term-identifier",description:"",source:"@site/docs/terms/term-identifier.md",sourceDirName:"terms",slug:"/terms/term-identifier",permalink:"/tev2-specifications/docs/terms/term-identifier",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/terms/term-identifier.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",frontMatter:{term:"term-identifier",termType:"concept",isa:"identifier",bodyFile:"/spec-syntax/12-term-identifier-syntax.md",glossaryTerm:"Term Identifier",glossaryText:"a [text](identifier@), of the form `@`, that [identifies](@) a [semantic unit](@) within a particular [terminology](@). If `` is omitted, the current (or default) [terminology](@) is assumed.",formPhrases:"term-identifier{ss}",status:"proposed",created:"2022-11-24T00:00:00.000Z",updated:"2022-11-24T00:00:00.000Z",contributors:"RieksJ",attribution:"[eSSIF-Lab](https://essif-lab.github.io/framework)",originalLicense:"[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"},sidebar:"tev2SideBar",previous:{title:"Tag",permalink:"/tev2-specifications/docs/terms/tag"},next:{title:"Term Ref",permalink:"/tev2-specifications/docs/terms/term-ref"}},m={},u=[],p={toc:u};function d(e){var t=e.components,r=(0,n.Z)(e,a);return(0,o.kt)("wrapper",(0,i.Z)({},p,r,{components:t,mdxType:"MDXLayout"}))}d.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[8994],{3905:function(e,t,r){r.d(t,{Zo:function(){return m},kt:function(){return d}});var i=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function a(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=i.createContext({}),f=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},m=function(e){var t=f(e.components);return i.createElement(c.Provider,{value:t},e.children)},u={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},p=i.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),p=f(r),d=n,l=p["".concat(c,".").concat(d)]||p[d]||u[d]||o;return r?i.createElement(l,a(a({ref:t},m),{},{components:r})):i.createElement(l,a({ref:t},m))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,a=new Array(o);a[0]=p;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,a[1]=s;for(var f=2;f@`, that [identifies](@) a [semantic unit](@) within a particular [terminology](@). If `` is omitted, the current (or default) [terminology](@) is assumed.",formPhrases:"term-identifier{ss}",status:"proposed",created:new Date("2022-11-24T00:00:00.000Z"),updated:new Date("2022-11-24T00:00:00.000Z"),contributors:"RieksJ",attribution:"[eSSIF-Lab](https://essif-lab.github.io/framework)",originalLicense:"[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"},c=void 0,f={unversionedId:"terms/term-identifier",id:"terms/term-identifier",title:"term-identifier",description:"",source:"@site/docs/terms/term-identifier.md",sourceDirName:"terms",slug:"/terms/term-identifier",permalink:"/tev2-specifications/docs/terms/term-identifier",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/terms/term-identifier.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",frontMatter:{term:"term-identifier",termType:"concept",isa:"identifier",bodyFile:"/spec-syntax/12-term-identifier-syntax.md",glossaryTerm:"Term Identifier",glossaryText:"a [text](identifier@), of the form `@`, that [identifies](@) a [semantic unit](@) within a particular [terminology](@). If `` is omitted, the current (or default) [terminology](@) is assumed.",formPhrases:"term-identifier{ss}",status:"proposed",created:"2022-11-24T00:00:00.000Z",updated:"2022-11-24T00:00:00.000Z",contributors:"RieksJ",attribution:"[eSSIF-Lab](https://essif-lab.github.io/framework)",originalLicense:"[CC BY-SA 4.0](http://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)"},sidebar:"tev2SideBar",previous:{title:"Tag",permalink:"/tev2-specifications/docs/terms/tag"},next:{title:"Term Ref",permalink:"/tev2-specifications/docs/terms/term-ref"}},m={},u=[],p={toc:u};function d(e){var t=e.components,r=(0,n.Z)(e,a);return(0,o.kt)("wrapper",(0,i.Z)({},p,r,{components:t,mdxType:"MDXLayout"}))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/e8dcf8cf.201835bd.js b/assets/js/e8dcf8cf.e1b716bf.js similarity index 99% rename from assets/js/e8dcf8cf.201835bd.js rename to assets/js/e8dcf8cf.e1b716bf.js index 1fd3ee72ee..6741cb73ca 100644 --- a/assets/js/e8dcf8cf.201835bd.js +++ b/assets/js/e8dcf8cf.e1b716bf.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[8488],{3905:function(e,t,i){i.d(t,{Zo:function(){return h},kt:function(){return d}});var n=i(7294);function r(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,n)}return i}function o(e){for(var t=1;t=0||(r[i]=e[i]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(r[i]=e[i])}return r}var c=n.createContext({}),p=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):o(o({},t),e)),i},h=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var i=e.components,r=e.mdxType,a=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),f=p(i),d=r,u=f["".concat(c,".").concat(d)]||f[d]||l[d]||a;return i?n.createElement(u,o(o({ref:t},h),{},{components:i})):n.createElement(u,o({ref:t},h))}));function d(e,t){var i=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=i.length,o=new Array(a);o[0]=f;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var p=2;p=0||(r[i]=e[i]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(r[i]=e[i])}return r}var c=n.createContext({}),p=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):o(o({},t),e)),i},h=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var i=e.components,r=e.mdxType,a=e.originalType,c=e.parentName,h=s(e,["components","mdxType","originalType","parentName"]),f=p(i),d=r,u=f["".concat(c,".").concat(d)]||f[d]||l[d]||a;return i?n.createElement(u,o(o({ref:t},h),{},{components:i})):n.createElement(u,o({ref:t},h))}));function d(e,t){var i=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=i.length,o=new Array(a);o[0]=f;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:r,o[1]=s;for(var p=2;p=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),u=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},l=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=u(r),f=o,m=d["".concat(c,".").concat(f)]||d[f]||p[f]||i;return r?n.createElement(m,a(a({ref:t},l),{},{components:r})):n.createElement(m,a({ref:t},l))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var u=2;u=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),u=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},l=function(e){var t=u(e.components);return n.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),d=u(r),f=o,m=d["".concat(c,".").concat(f)]||d[f]||p[f]||i;return r?n.createElement(m,a(a({ref:t},l),{},{components:r})):n.createElement(m,a({ref:t},l))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:o,a[1]=s;for(var u=2;u=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var c=n.createContext({}),l=function(t){var e=n.useContext(c),a=e;return t&&(a="function"==typeof t?t(e):o(o({},e),t)),a},d=function(t){var e=l(t.components);return n.createElement(c.Provider,{value:e},t.children)},m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},u=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,i=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),u=l(a),p=r,h=u["".concat(c,".").concat(p)]||u[p]||m[p]||i;return a?n.createElement(h,o(o({ref:e},d),{},{components:a})):n.createElement(h,o({ref:e},d))}));function p(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var i=a.length,o=new Array(i);o[0]=u;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:r,o[1]=s;for(var l=2;l child <"+("string"==typeof t.type?t.type:t.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:a.filter(Boolean))?e:[]}(t).map((function(t){var e=t.props;return{value:e.value,label:e.label,attributes:e.attributes,default:e.default}}))}function u(t){var e=t.values,a=t.children;return(0,r.useMemo)((function(){var t=null!=e?e:m(a);return function(t){var e=(0,l.l)(t,(function(t,e){return t.value===e.value}));if(e.length>0)throw new Error('Docusaurus error: Duplicate values "'+e.map((function(t){return t.value})).join(", ")+'" found in . Every value needs to be unique.')}(t),t}),[e,a])}function p(t){var e=t.value;return t.tabValues.some((function(t){return t.value===e}))}function h(t){var e=t.queryString,a=void 0!==e&&e,n=t.groupId,i=(0,s.k6)(),o=function(t){var e=t.queryString,a=void 0!==e&&e,n=t.groupId;if("string"==typeof a)return a;if(!1===a)return null;if(!0===a&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=n?n:null}({queryString:a,groupId:n});return[(0,c._X)(o),(0,r.useCallback)((function(t){if(o){var e=new URLSearchParams(i.location.search);e.set(o,t),i.replace(Object.assign({},i.location,{search:e.toString()}))}}),[o,i])]}function f(t){var e,a,n,i,o=t.defaultValue,s=t.queryString,c=void 0!==s&&s,l=t.groupId,m=u(t),f=(0,r.useState)((function(){return function(t){var e,a=t.defaultValue,n=t.tabValues;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(a){if(!p({value:a,tabValues:n}))throw new Error('Docusaurus error: The has a defaultValue "'+a+'" but none of its children has the corresponding value. Available values are: '+n.map((function(t){return t.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return a}var r=null!=(e=n.find((function(t){return t.default})))?e:n[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:o,tabValues:m})})),g=f[0],y=f[1],b=h({queryString:c,groupId:l}),v=b[0],k=b[1],T=(e=function(t){return t?"docusaurus.tab."+t:null}({groupId:l}.groupId),a=(0,d.Nk)(e),n=a[0],i=a[1],[n,(0,r.useCallback)((function(t){e&&i.set(t)}),[e,i])]),N=T[0],w=T[1],x=function(){var t=null!=v?v:N;return p({value:t,tabValues:m})?t:null}();return(0,r.useLayoutEffect)((function(){x&&y(x)}),[x]),{selectedValue:g,selectValue:(0,r.useCallback)((function(t){if(!p({value:t,tabValues:m}))throw new Error("Can't select invalid tab value="+t);y(t),k(t),w(t)}),[k,w,m]),tabValues:m}}var g=a(2389),y="tabList__CuJ",b="tabItem_LNqP";function v(t){var e=t.className,a=t.block,s=t.selectedValue,c=t.selectValue,l=t.tabValues,d=[],m=(0,o.o5)().blockElementScrollPositionUntilNextRender,u=function(t){var e=t.currentTarget,a=d.indexOf(e),n=l[a].value;n!==s&&(m(e),c(n))},p=function(t){var e,a=null;switch(t.key){case"Enter":u(t);break;case"ArrowRight":var n,r=d.indexOf(t.currentTarget)+1;a=null!=(n=d[r])?n:d[0];break;case"ArrowLeft":var i,o=d.indexOf(t.currentTarget)-1;a=null!=(i=d[o])?i:d[d.length-1]}null==(e=a)||e.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.Z)("tabs",{"tabs--block":a},e)},l.map((function(t){var e=t.value,a=t.label,o=t.attributes;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:s===e?0:-1,"aria-selected":s===e,key:e,ref:function(t){return d.push(t)},onKeyDown:p,onClick:u},o,{className:(0,i.Z)("tabs__item",b,null==o?void 0:o.className,{"tabs__item--active":s===e})}),null!=a?a:e)})))}function k(t){var e=t.lazy,a=t.children,n=t.selectedValue,i=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){var o=i.find((function(t){return t.props.value===n}));return o?(0,r.cloneElement)(o,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},i.map((function(t,e){return(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n})})))}function T(t){var e=f(t);return r.createElement("div",{className:(0,i.Z)("tabs-container",y)},r.createElement(v,(0,n.Z)({},t,e)),r.createElement(k,(0,n.Z)({},t,e)))}function N(t){var e=(0,g.Z)();return r.createElement(T,(0,n.Z)({key:String(e)},t))}},1056:function(t,e,a){a.r(e),a.d(e,{assets:function(){return d},contentTitle:function(){return c},default:function(){return h},frontMatter:function(){return s},mark:function(){return u},metadata:function(){return l},toc:function(){return m}});var n=a(7462),r=a(3366),i=(a(7294),a(3905)),o=(a(4996),a(4866),a(5162),["components"]),s={id:"hrg-termselcrit",date:20230103},c="HRG Selection Criteria",l={unversionedId:"spec-syntax/hrg-termselcrit",id:"spec-syntax/hrg-termselcrit",title:"HRG Selection Criteria",description:"text to mark",source:"@site/docs/spec-syntax/31-hrg-termselcrit.md",sourceDirName:"spec-syntax",slug:"/spec-syntax/hrg-termselcrit",permalink:"/tev2-specifications/docs/spec-syntax/hrg-termselcrit",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-syntax/31-hrg-termselcrit.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696247870,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:31,frontMatter:{id:"hrg-termselcrit",date:20230103},sidebar:"tev2SideBar",previous:{title:"Form Phrases",permalink:"/tev2-specifications/docs/spec-syntax/form-phrase-syntax"},next:{title:"Terminology Construction",permalink:"/tev2-specifications/docs/spec-tools/terminology-construction"}},d={},m=[{value:"Adding terms",id:"syntax-add",level:2},{value:"Removing terms",id:"syntax-remove",level:2}],u=function(t){var e=t.children;return(0,i.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},e)},p={toc:m,mark:u};function h(t){var e=t.components,a=(0,r.Z)(t,o);return(0,i.kt)("wrapper",(0,n.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"hrg-selection-criteria"},"HRG Selection Criteria"),(0,i.kt)("p",null,"When ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," generate an ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," from a particular ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", they may want to specify the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," to be included in the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," (or preventing specific ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from being included)."),(0,i.kt)("p",null,"This can be done by using the same mechanism for ",(0,i.kt)("a",{parentName:"p",href:"/docs/spec-tools/terminology-construction"},"terminology construction")," as is used for generating ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),". The differences are that there is only one source, i.e. the particular ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from which the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated. Thus, references to ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that have no corresponding ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," in that ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," are invalid. Also, there is no need for renaming syntax."),(0,i.kt)("p",null,"If generating an ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," requires the selection of terms, the instructions are to be specified in the ",(0,i.kt)("inlineCode",{parentName:"p"},"termselcrit")," field of the configuration file specified as an argument on the command-line when calling the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT"),"."),(0,i.kt)("h2",{id:"syntax-add"},"Adding terms"),(0,i.kt)("p",null,"The following instructions can be used for adding ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," (whitespace in the syntax is disregarded):"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,i.kt)("th",{parentName:"tr",align:"left"},"The instruction adds every ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," from the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," to the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction")," ..."))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"terms [ ]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"whose ",(0,i.kt)("inlineCode",{parentName:"td"},"term"),"-field is an element of ",(0,i.kt)("inlineCode",{parentName:"td"},""),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"tags [ ]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"whose ",(0,i.kt)("inlineCode",{parentName:"td"},"grouptags")," field contains an element that is also an element of ",(0,i.kt)("inlineCode",{parentName:"td"},""),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"*")),(0,i.kt)("td",{parentName:"tr",align:"left"},"that exists within the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from which the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated.")))),(0,i.kt)("p",null,"Notes:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"")," are comma-separated lists of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," and ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags")," respectively."),(0,i.kt)("li",{parentName:"ul"},"An ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," will only be added to the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction")," if it does not already exist.")),(0,i.kt)("details",null,(0,i.kt)("summary",null,"Examples"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,i.kt)("th",{parentName:"tr",align:"left"},"What it does when processed"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"terms[party]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"finds the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," associated with the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,i.kt)("inlineCode",{parentName:"td"},"party"),", and adds it to the selected set of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"tags[management,governance]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"finds the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," associated with the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," ",(0,i.kt)("inlineCode",{parentName:"td"},"management")," and ",(0,i.kt)("inlineCode",{parentName:"td"},"governance"),", and adds them to the selected set of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"*")),(0,i.kt)("td",{parentName:"tr",align:"left"},"selects all ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," from the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", and adds them to the selected set of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),"."))))),(0,i.kt)("h2",{id:"syntax-remove"},"Removing terms"),(0,i.kt)("p",null,"The following instructions can be used for removing ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," from the set of selected ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," (whitespace in the syntax is disregarded):"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,i.kt)("th",{parentName:"tr",align:"left"},"The instruction removes every ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," from the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction")," ..."))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"-terms [ ]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"whose ",(0,i.kt)("inlineCode",{parentName:"td"},"term"),"-field is an element of ",(0,i.kt)("inlineCode",{parentName:"td"},""),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"-tags [ ]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"whose ",(0,i.kt)("inlineCode",{parentName:"td"},"grouptags")," field contains an element that is also an element of ",(0,i.kt)("inlineCode",{parentName:"td"},""),".")))),(0,i.kt)("p",null,"Notes:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"")," are comma-separated lists of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),", and ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags")," respectively."),(0,i.kt)("li",{parentName:"ul"},"Elements of the ",(0,i.kt)("inlineCode",{parentName:"li"},"")," or ",(0,i.kt)("inlineCode",{parentName:"li"},"")," that do not lead to the removal of an ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," may be logged.")),(0,i.kt)("details",null,(0,i.kt)("summary",null,"Examples"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,i.kt)("th",{parentName:"tr",align:"left"},"What it does when processed"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"-terms[party, actor]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"removes the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that have either ",(0,i.kt)("inlineCode",{parentName:"td"},"party")," or ",(0,i.kt)("inlineCode",{parentName:"td"},"actor")," in its ",(0,i.kt)("inlineCode",{parentName:"td"},"term")," field.")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"-tags[management]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"removes all ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that have a ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptag")," ",(0,i.kt)("inlineCode",{parentName:"td"},"management"),"."))))))}h.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[9825],{3905:function(t,e,a){a.d(e,{Zo:function(){return d},kt:function(){return p}});var n=a(7294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function i(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function o(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var c=n.createContext({}),l=function(t){var e=n.useContext(c),a=e;return t&&(a="function"==typeof t?t(e):o(o({},e),t)),a},d=function(t){var e=l(t.components);return n.createElement(c.Provider,{value:e},t.children)},m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},u=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,i=t.originalType,c=t.parentName,d=s(t,["components","mdxType","originalType","parentName"]),u=l(a),p=r,h=u["".concat(c,".").concat(p)]||u[p]||m[p]||i;return a?n.createElement(h,o(o({ref:e},d),{},{components:a})):n.createElement(h,o({ref:e},d))}));function p(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var i=a.length,o=new Array(i);o[0]=u;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:r,o[1]=s;for(var l=2;l child <"+("string"==typeof t.type?t.type:t.type.name)+'>: all children of the component should be , and every should have a unique "value" prop.')})))?void 0:a.filter(Boolean))?e:[]}(t).map((function(t){var e=t.props;return{value:e.value,label:e.label,attributes:e.attributes,default:e.default}}))}function u(t){var e=t.values,a=t.children;return(0,r.useMemo)((function(){var t=null!=e?e:m(a);return function(t){var e=(0,l.l)(t,(function(t,e){return t.value===e.value}));if(e.length>0)throw new Error('Docusaurus error: Duplicate values "'+e.map((function(t){return t.value})).join(", ")+'" found in . Every value needs to be unique.')}(t),t}),[e,a])}function p(t){var e=t.value;return t.tabValues.some((function(t){return t.value===e}))}function h(t){var e=t.queryString,a=void 0!==e&&e,n=t.groupId,i=(0,s.k6)(),o=function(t){var e=t.queryString,a=void 0!==e&&e,n=t.groupId;if("string"==typeof a)return a;if(!1===a)return null;if(!0===a&&!n)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return null!=n?n:null}({queryString:a,groupId:n});return[(0,c._X)(o),(0,r.useCallback)((function(t){if(o){var e=new URLSearchParams(i.location.search);e.set(o,t),i.replace(Object.assign({},i.location,{search:e.toString()}))}}),[o,i])]}function f(t){var e,a,n,i,o=t.defaultValue,s=t.queryString,c=void 0!==s&&s,l=t.groupId,m=u(t),f=(0,r.useState)((function(){return function(t){var e,a=t.defaultValue,n=t.tabValues;if(0===n.length)throw new Error("Docusaurus error: the component requires at least one children component");if(a){if(!p({value:a,tabValues:n}))throw new Error('Docusaurus error: The has a defaultValue "'+a+'" but none of its children has the corresponding value. Available values are: '+n.map((function(t){return t.value})).join(", ")+". If you intend to show no default tab, use defaultValue={null} instead.");return a}var r=null!=(e=n.find((function(t){return t.default})))?e:n[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:o,tabValues:m})})),g=f[0],y=f[1],b=h({queryString:c,groupId:l}),v=b[0],k=b[1],T=(e=function(t){return t?"docusaurus.tab."+t:null}({groupId:l}.groupId),a=(0,d.Nk)(e),n=a[0],i=a[1],[n,(0,r.useCallback)((function(t){e&&i.set(t)}),[e,i])]),N=T[0],w=T[1],x=function(){var t=null!=v?v:N;return p({value:t,tabValues:m})?t:null}();return(0,r.useLayoutEffect)((function(){x&&y(x)}),[x]),{selectedValue:g,selectValue:(0,r.useCallback)((function(t){if(!p({value:t,tabValues:m}))throw new Error("Can't select invalid tab value="+t);y(t),k(t),w(t)}),[k,w,m]),tabValues:m}}var g=a(2389),y="tabList__CuJ",b="tabItem_LNqP";function v(t){var e=t.className,a=t.block,s=t.selectedValue,c=t.selectValue,l=t.tabValues,d=[],m=(0,o.o5)().blockElementScrollPositionUntilNextRender,u=function(t){var e=t.currentTarget,a=d.indexOf(e),n=l[a].value;n!==s&&(m(e),c(n))},p=function(t){var e,a=null;switch(t.key){case"Enter":u(t);break;case"ArrowRight":var n,r=d.indexOf(t.currentTarget)+1;a=null!=(n=d[r])?n:d[0];break;case"ArrowLeft":var i,o=d.indexOf(t.currentTarget)-1;a=null!=(i=d[o])?i:d[d.length-1]}null==(e=a)||e.focus()};return r.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.Z)("tabs",{"tabs--block":a},e)},l.map((function(t){var e=t.value,a=t.label,o=t.attributes;return r.createElement("li",(0,n.Z)({role:"tab",tabIndex:s===e?0:-1,"aria-selected":s===e,key:e,ref:function(t){return d.push(t)},onKeyDown:p,onClick:u},o,{className:(0,i.Z)("tabs__item",b,null==o?void 0:o.className,{"tabs__item--active":s===e})}),null!=a?a:e)})))}function k(t){var e=t.lazy,a=t.children,n=t.selectedValue,i=(Array.isArray(a)?a:[a]).filter(Boolean);if(e){var o=i.find((function(t){return t.props.value===n}));return o?(0,r.cloneElement)(o,{className:"margin-top--md"}):null}return r.createElement("div",{className:"margin-top--md"},i.map((function(t,e){return(0,r.cloneElement)(t,{key:e,hidden:t.props.value!==n})})))}function T(t){var e=f(t);return r.createElement("div",{className:(0,i.Z)("tabs-container",y)},r.createElement(v,(0,n.Z)({},t,e)),r.createElement(k,(0,n.Z)({},t,e)))}function N(t){var e=(0,g.Z)();return r.createElement(T,(0,n.Z)({key:String(e)},t))}},1056:function(t,e,a){a.r(e),a.d(e,{assets:function(){return d},contentTitle:function(){return c},default:function(){return h},frontMatter:function(){return s},mark:function(){return u},metadata:function(){return l},toc:function(){return m}});var n=a(7462),r=a(3366),i=(a(7294),a(3905)),o=(a(4996),a(4866),a(5162),["components"]),s={id:"hrg-termselcrit",date:20230103},c="HRG Selection Criteria",l={unversionedId:"spec-syntax/hrg-termselcrit",id:"spec-syntax/hrg-termselcrit",title:"HRG Selection Criteria",description:"text to mark",source:"@site/docs/spec-syntax/31-hrg-termselcrit.md",sourceDirName:"spec-syntax",slug:"/spec-syntax/hrg-termselcrit",permalink:"/tev2-specifications/docs/spec-syntax/hrg-termselcrit",draft:!1,editUrl:"https://github.com/tno-terminology-design/tev2-specifications/blob/master/docs/spec-syntax/31-hrg-termselcrit.md",tags:[],version:"current",lastUpdatedBy:"Rieks",lastUpdatedAt:1696248789,formattedLastUpdatedAt:"Oct 2, 2023",sidebarPosition:31,frontMatter:{id:"hrg-termselcrit",date:20230103},sidebar:"tev2SideBar",previous:{title:"Form Phrases",permalink:"/tev2-specifications/docs/spec-syntax/form-phrase-syntax"},next:{title:"Terminology Construction",permalink:"/tev2-specifications/docs/spec-tools/terminology-construction"}},d={},m=[{value:"Adding terms",id:"syntax-add",level:2},{value:"Removing terms",id:"syntax-remove",level:2}],u=function(t){var e=t.children;return(0,i.kt)("span",{style:{color:"black",backgroundColor:"yellow",padding:"0.2rem",borderRadius:"2px"}},e)},p={toc:m,mark:u};function h(t){var e=t.components,a=(0,r.Z)(t,o);return(0,i.kt)("wrapper",(0,n.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"hrg-selection-criteria"},"HRG Selection Criteria"),(0,i.kt)("p",null,"When ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curator",hovertext:"Curator: a person responsible for curating, managing, and maintaining the Terminologies, to ensure shared understanding among a Community working together on a particular set of objectives."},"curators")," generate an ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," from a particular ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", they may want to specify the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," to be included in the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," (or preventing specific ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," from being included)."),(0,i.kt)("p",null,"This can be done by using the same mechanism for ",(0,i.kt)("a",{parentName:"p",href:"/docs/spec-tools/terminology-construction"},"terminology construction")," as is used for generating ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRGs"),". The differences are that there is only one source, i.e. the particular ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from which the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated. Thus, references to ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that have no corresponding ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," in that ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," are invalid. Also, there is no need for renaming syntax."),(0,i.kt)("p",null,"If generating an ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," requires the selection of terms, the instructions are to be specified in the ",(0,i.kt)("inlineCode",{parentName:"p"},"termselcrit")," field of the configuration file specified as an argument on the command-line when calling the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrgt",hovertext:"Human Readable Glossary Tool (HRGT): a software tool designed to create, manage, and process Human Readable Glossaries (HRGs), as Specified By TEv2. HRGTs offer features for selecting Terms that are Curated within the Scope it is run in, or from other Scopes."},"HRGT"),"."),(0,i.kt)("h2",{id:"syntax-add"},"Adding terms"),(0,i.kt)("p",null,"The following instructions can be used for adding ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," (whitespace in the syntax is disregarded):"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,i.kt)("th",{parentName:"tr",align:"left"},"The instruction adds every ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," from the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," to the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction")," ..."))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"terms [ ]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"whose ",(0,i.kt)("inlineCode",{parentName:"td"},"term"),"-field is an element of ",(0,i.kt)("inlineCode",{parentName:"td"},""),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"tags [ ]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"whose ",(0,i.kt)("inlineCode",{parentName:"td"},"grouptags")," field contains an element that is also an element of ",(0,i.kt)("inlineCode",{parentName:"td"},""),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"*")),(0,i.kt)("td",{parentName:"tr",align:"left"},"that exists within the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG")," from which the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/hrg",hovertext:"Human Readable Glossary (HRG): a Glossary that is designed to be easily understandable and accessible to humans. HRGs present terms and their meanings in a format that prioritizes human comprehension and may include additional contextual information to aid understanding."},"HRG")," is generated.")))),(0,i.kt)("p",null,"Notes:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"")," are comma-separated lists of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," and ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags")," respectively."),(0,i.kt)("li",{parentName:"ul"},"An ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," will only be added to the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction")," if it does not already exist.")),(0,i.kt)("details",null,(0,i.kt)("summary",null,"Examples"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,i.kt)("th",{parentName:"tr",align:"left"},"What it does when processed"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"terms[party]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"finds the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," associated with the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"term")," ",(0,i.kt)("inlineCode",{parentName:"td"},"party"),", and adds it to the selected set of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"tags[management,governance]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"finds the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," associated with the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," ",(0,i.kt)("inlineCode",{parentName:"td"},"management")," and ",(0,i.kt)("inlineCode",{parentName:"td"},"governance"),", and adds them to the selected set of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"*")),(0,i.kt)("td",{parentName:"tr",align:"left"},"selects all ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," from the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg",hovertext:"MRG: a Glossary for a particular (version of a) Terminology that is formatted in YAML, according to the [TEv2 MRG specifications](/docs/spec-files/mrg), to enable automated processing and integration with software systems."},"MRG"),", and adds them to the selected set of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),"."))))),(0,i.kt)("h2",{id:"syntax-remove"},"Removing terms"),(0,i.kt)("p",null,"The following instructions can be used for removing ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," from the set of selected ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," (whitespace in the syntax is disregarded):"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,i.kt)("th",{parentName:"tr",align:"left"},"The instruction removes every ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," from the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology-under-construction",hovertext:"Terminology Under Construction: a set of Terms (that is initially empty), to which Terms can be added or removed as specified by Term Selection Criteria, so as to ultimately result in a proper Terminology."},"terminology under construction")," ..."))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"-terms [ ]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"whose ",(0,i.kt)("inlineCode",{parentName:"td"},"term"),"-field is an element of ",(0,i.kt)("inlineCode",{parentName:"td"},""),".")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"-tags [ ]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"whose ",(0,i.kt)("inlineCode",{parentName:"td"},"grouptags")," field contains an element that is also an element of ",(0,i.kt)("inlineCode",{parentName:"td"},""),".")))),(0,i.kt)("p",null,"Notes:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"")," are comma-separated lists of ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms"),", and ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptags")," respectively."),(0,i.kt)("li",{parentName:"ul"},"Elements of the ",(0,i.kt)("inlineCode",{parentName:"li"},"")," or ",(0,i.kt)("inlineCode",{parentName:"li"},"")," that do not lead to the removal of an ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entry")," may be logged.")),(0,i.kt)("details",null,(0,i.kt)("summary",null,"Examples"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:"left"},"Instruction"),(0,i.kt)("th",{parentName:"tr",align:"left"},"What it does when processed"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"-terms[party, actor]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"removes the ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that have either ",(0,i.kt)("inlineCode",{parentName:"td"},"party")," or ",(0,i.kt)("inlineCode",{parentName:"td"},"actor")," in its ",(0,i.kt)("inlineCode",{parentName:"td"},"term")," field.")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:"left"},(0,i.kt)("inlineCode",{parentName:"td"},"-tags[management]")),(0,i.kt)("td",{parentName:"tr",align:"left"},"removes all ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/mrg-entry",hovertext:"MRG Entry: A machine-readable (and interpretable) artifact that contains (pointers to) data and meta-data about a particular Semantic Unit, such as the associated Term(s), its Definition, etc., to make it easy for IT-tools to create, e.g. documentation, Glossaries, Dictionaries, whitepapers, etc. that uses such Terms (Definitions, etc.)."},"MRG entries")," that have a ",(0,i.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/grouptag",hovertext:"Grouptag: a Tag that is used to group Terms within a specific Scope."},"grouptag")," ",(0,i.kt)("inlineCode",{parentName:"td"},"management"),"."))))))}h.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/ee5834a7.f3d88637.js b/assets/js/ee5834a7.73693dec.js similarity index 99% rename from assets/js/ee5834a7.f3d88637.js rename to assets/js/ee5834a7.73693dec.js index a10d8963dc..e4d6db8bdc 100644 --- a/assets/js/ee5834a7.f3d88637.js +++ b/assets/js/ee5834a7.73693dec.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[4117],{3905:function(e,t,o){o.d(t,{Zo:function(){return l},kt:function(){return f}});var i=o(7294);function r(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function s(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,i)}return o}function n(e){for(var t=1;t=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=i.createContext({}),p=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):n(n({},t),e)),o},l=function(e){var t=p(e.components);return i.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},h=i.forwardRef((function(e,t){var o=e.components,r=e.mdxType,s=e.originalType,c=e.parentName,l=a(e,["components","mdxType","originalType","parentName"]),h=p(o),f=r,d=h["".concat(c,".").concat(f)]||h[f]||m[f]||s;return o?i.createElement(d,n(n({ref:t},l),{},{components:o})):i.createElement(d,n({ref:t},l))}));function f(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var s=o.length,n=new Array(s);n[0]=h;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:r,n[1]=a;for(var p=2;p=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=i.createContext({}),p=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):n(n({},t),e)),o},l=function(e){var t=p(e.components);return i.createElement(c.Provider,{value:t},e.children)},m={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},h=i.forwardRef((function(e,t){var o=e.components,r=e.mdxType,s=e.originalType,c=e.parentName,l=a(e,["components","mdxType","originalType","parentName"]),h=p(o),f=r,d=h["".concat(c,".").concat(f)]||h[f]||m[f]||s;return o?i.createElement(d,n(n({ref:t},l),{},{components:o})):i.createElement(d,n({ref:t},l))}));function f(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var s=o.length,n=new Array(s);n[0]=h;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:r,n[1]=a;for(var p=2;p=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),p=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},u=function(e){var t=p(e.components);return o.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},h=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),h=p(r),d=n,l=h["".concat(c,".").concat(d)]||h[d]||f[d]||a;return r?o.createElement(l,s(s({ref:t},u),{},{components:r})):o.createElement(l,s({ref:t},u))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,s=new Array(a);s[0]=h;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:n,s[1]=i;for(var p=2;p=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),p=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},u=function(e){var t=p(e.components);return o.createElement(c.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},h=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),h=p(r),d=n,l=h["".concat(c,".").concat(d)]||h[d]||f[d]||a;return r?o.createElement(l,s(s({ref:t},u),{},{components:r})):o.createElement(l,s({ref:t},u))}));function d(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,s=new Array(a);s[0]=h;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i.mdxType="string"==typeof e?e:n,s[1]=i;for(var p=2;p=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},m=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),f=p(r),u=i,d=f["".concat(c,".").concat(u)]||f[u]||l[u]||o;return r?n.createElement(d,a(a({ref:t},m),{},{components:r})):n.createElement(d,a({ref:t},m))}));function u(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,a=new Array(o);a[0]=f;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var p=2;p=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},m=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,c=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),f=p(r),u=i,d=f["".concat(c,".").concat(u)]||f[u]||l[u]||o;return r?n.createElement(d,a(a({ref:t},m),{},{components:r})):n.createElement(d,a({ref:t},m))}));function u(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,a=new Array(o);a[0]=f;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:i,a[1]=s;for(var p=2;p=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=r.createContext({}),l=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},u=function(e){var t=l(e.components);return r.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),d=l(n),f=i,m=d["".concat(s,".").concat(f)]||d[f]||p[f]||a;return n?r.createElement(m,o(o({ref:t},u),{},{components:n})):r.createElement(m,o({ref:t},u))}));function f(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,o=new Array(a);o[0]=d;var c={};for(var s in t)hasOwnProperty.call(t,s)&&(c[s]=t[s]);c.originalType=e,c.mdxType="string"==typeof e?e:i,o[1]=c;for(var l=2;l=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=r.createContext({}),l=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},u=function(e){var t=l(e.components);return r.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),d=l(n),f=i,m=d["".concat(s,".").concat(f)]||d[f]||p[f]||a;return n?r.createElement(m,o(o({ref:t},u),{},{components:n})):r.createElement(m,o({ref:t},u))}));function f(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,o=new Array(a);o[0]=d;var c={};for(var s in t)hasOwnProperty.call(t,s)&&(c[s]=t[s]);c.originalType=e,c.mdxType="string"==typeof e?e:i,o[1]=c;for(var l=2;l=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var c=n.createContext({}),h=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},d=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var i=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),m=h(i),p=o,f=m["".concat(c,".").concat(p)]||m[p]||l[p]||a;return i?n.createElement(f,s(s({ref:t},d),{},{components:i})):n.createElement(f,s({ref:t},d))}));function p(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=i.length,s=new Array(a);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:o,s[1]=r;for(var h=2;h@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier")," are as follows (note that such syntax is typically preceeded by the ",(0,a.kt)("inlineCode",{parentName:"p"},"@"),"-character): "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"(empty string, null)"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"scopetag")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"li"},"vsntag")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},":vsntag"))),(0,a.kt)("p",null,"where"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},"the empty string (null) ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," in the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that has the current version (or default version if there is no current version).")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"scopetag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". If ",(0,a.kt)("inlineCode",{parentName:"p"},"scopetag")," is omitted, the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," defaults to the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"vsntag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," to be used. If ",(0,a.kt)("inlineCode",{parentName:"p"},":vsntag")," (including the ",(0,a.kt)("inlineCode",{parentName:"p"},":"),") is omitted, the default version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is assumed, as specified in the ",(0,a.kt)("inlineCode",{parentName:"p"},"defaultvsn")," field in the ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#terminology"},"scope section")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is maintained."))),(0,a.kt)("h2",{id:"examples"},"Examples"),(0,a.kt)("p",null,"In the following examples, we assume that "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"tev2")," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")," ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is being ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated"),". "),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"terms")," is a ",(0,a.kt)("a",{parentName:"li",href:"@"},"vsntag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that consists of all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/define",hovertext:"Define: to provide a criterion and a Term, where the criterion can be used by people to determine whether or not something is an instance/example of a Concept (or other Terminological Artifact), and the Term is used to refer to that Concept, or an arbitrary instance thereof."},"defined")," within the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," identified by ",(0,a.kt)("inlineCode",{parentName:"li"},"tev2"),"."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"myscope")," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"terminology-identifier"),(0,a.kt)("th",{parentName:"tr",align:"left"},"refers to"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"@")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the default terminology of the current scope (i.e., ",(0,a.kt)("inlineCode",{parentName:"td"},"myscope"),").")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"@tev2")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the default terminology of the scope ",(0,a.kt)("inlineCode",{parentName:"td"},"tev2"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"@tev2:terms")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the terminology that contains all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are defined within the scope ",(0,a.kt)("inlineCode",{parentName:"td"},"tev2"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"@:terms")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the terminology that contains all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are defined within the current scope (i.e.: ",(0,a.kt)("inlineCode",{parentName:"td"},"myscope"),").")))))}p.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[1352],{3905:function(e,t,i){i.d(t,{Zo:function(){return d},kt:function(){return p}});var n=i(7294);function o(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,n)}return i}function s(e){for(var t=1;t=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var c=n.createContext({}),h=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):s(s({},t),e)),i},d=function(e){var t=h(e.components);return n.createElement(c.Provider,{value:t},e.children)},l={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var i=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),m=h(i),p=o,f=m["".concat(c,".").concat(p)]||m[p]||l[p]||a;return i?n.createElement(f,s(s({ref:t},d),{},{components:i})):n.createElement(f,s({ref:t},d))}));function p(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=i.length,s=new Array(a);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:o,s[1]=r;for(var h=2;h@`, that Identifies a Semantic Unit within a particular Terminology. If `` is omitted, the current (or default) Terminology is assumed."},"term identifier")," are as follows (note that such syntax is typically preceeded by the ",(0,a.kt)("inlineCode",{parentName:"p"},"@"),"-character): "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"(empty string, null)"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"scopetag")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"scopetag"),":",(0,a.kt)("inlineCode",{parentName:"li"},"vsntag")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},":vsntag"))),(0,a.kt)("p",null,"where"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},"the empty string (null) ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," in the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," that has the current version (or default version if there is no current version).")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"scopetag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology"),". If ",(0,a.kt)("inlineCode",{parentName:"p"},"scopetag")," is omitted, the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," defaults to the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},(0,a.kt)("strong",{parentName:"p"},(0,a.kt)("inlineCode",{parentName:"strong"},"vsntag"))," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/versiontag",hovertext:"Versiontag: a Tag that is used to Identify a specific version of a Terminology from within a specific Scope."},"versiontag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," to be used. If ",(0,a.kt)("inlineCode",{parentName:"p"},":vsntag")," (including the ",(0,a.kt)("inlineCode",{parentName:"p"},":"),") is omitted, the default version of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is assumed, as specified in the ",(0,a.kt)("inlineCode",{parentName:"p"},"defaultvsn")," field in the ",(0,a.kt)("a",{parentName:"p",href:"/docs/spec-files/saf#terminology"},"scope section")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/saf",hovertext:"SAF: a YAML file that contains essential data about a particular Scope (e.g., specifying where its Curated Texts, Glossaries etc. live), the relationships this Scope has with other Scopes, and the specifications of the different Terminologies that are Curated within that Scope."},"SAF")," of the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is maintained."))),(0,a.kt)("h2",{id:"examples"},"Examples"),(0,a.kt)("p",null,"In the following examples, we assume that "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"tev2")," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," in which the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/tev2",hovertext:"Tev2: a set of specifications and tools that caters for the Curation of Terminologies, as well as for its subsequent use in publications of different types (e.g. websites, whitepapers) and formats (e.g. html, LaTeX), as appropriate for different, individual Scopes."},"TEv2")," ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," is being ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/curate",hovertext:"Curate: to select, organize, and present Terms, Definitions, and other, related content in a thoughtful and purposeful manner to establish shared understanding among a Community working together on a particular set of objectives."},"curated"),". "),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"terms")," is a ",(0,a.kt)("a",{parentName:"li",href:"@"},"vsntag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/terminology",hovertext:"Terminology: a set of Terms that are used within a single Scope to refer to Concepts and other Semantic Units of a single Party (e.g. a Community), enabling Parties to reason and communicate ideas they have about one or more specific topics."},"terminology")," that consists of all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/define",hovertext:"Define: to provide a criterion and a Term, where the criterion can be used by people to determine whether or not something is an instance/example of a Concept (or other Terminological Artifact), and the Term is used to refer to that Concept, or an arbitrary instance thereof."},"defined")," within the ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope")," identified by ",(0,a.kt)("inlineCode",{parentName:"li"},"tev2"),"."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"myscope")," is a ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scopetag",hovertext:"Scopetag: a Tag that is used to Identify Scopes from within a specific Scope"},"scopetag")," that ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/identify",hovertext:"Identify: an Act, by or on behalf of a Party, that results in the selection of either\n- a single Partial Identity that the party Owns, given some (observed or received) data, or\n- a single Entity from a given set of entities that is the Subject of a specified Partial Identity that the party Owns."},"identifies")," the current ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/scope",hovertext:"Scope: the extent of the Terms, Definitions and other documentation that a Community (which we call the Owner of the Scope) needs to express, communicate and validate its Knowledge as relevant to achieving a specific subset of its Objectives."},"scope"),".")),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:"left"},"terminology-identifier"),(0,a.kt)("th",{parentName:"tr",align:"left"},"refers to"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"@")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the default terminology of the current scope (i.e., ",(0,a.kt)("inlineCode",{parentName:"td"},"myscope"),").")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"@tev2")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the default terminology of the scope ",(0,a.kt)("inlineCode",{parentName:"td"},"tev2"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"@tev2:terms")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the terminology that contains all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are defined within the scope ",(0,a.kt)("inlineCode",{parentName:"td"},"tev2"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:"left"},(0,a.kt)("inlineCode",{parentName:"td"},"@:terms")),(0,a.kt)("td",{parentName:"tr",align:"left"},"the terminology that contains all ",(0,a.kt)("a",{href:"https://tno-terminology-design.github.io/tev2-specifications/docs/terms/term",hovertext:"Term: a word or phrase (i.e.: text) that is used to represent (Identify) a specific Semantic Unit (in some Scope)."},"terms")," that are defined within the current scope (i.e.: ",(0,a.kt)("inlineCode",{parentName:"td"},"myscope"),").")))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f5824b3c.c747c586.js b/assets/js/f5824b3c.d33b0b14.js similarity index 99% rename from assets/js/f5824b3c.c747c586.js rename to assets/js/f5824b3c.d33b0b14.js index 3551a1471e..11fd5459b7 100644 --- a/assets/js/f5824b3c.c747c586.js +++ b/assets/js/f5824b3c.d33b0b14.js @@ -1 +1 @@ -"use strict";(self.webpackChunktev2_specifications=self.webpackChunktev2_specifications||[]).push([[2290],{3905:function(e,t,i){i.d(t,{Zo:function(){return l},kt:function(){return m}});var r=i(7294);function o(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function s(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,r)}return i}function a(e){for(var t=1;t=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var c=r.createContext({}),d=function(e){var t=r.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},l=function(e){var t=d(e.components);return r.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var i=e.components,o=e.mdxType,s=e.originalType,c=e.parentName,l=n(e,["components","mdxType","originalType","parentName"]),p=d(i),m=o,f=p["".concat(c,".").concat(m)]||p[m]||h[m]||s;return i?r.createElement(f,a(a({ref:t},l),{},{components:i})):r.createElement(f,a({ref:t},l))}));function m(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var s=i.length,a=new Array(s);a[0]=p;var n={};for(var c in t)hasOwnProperty.call(t,c)&&(n[c]=t[c]);n.originalType=e,n.mdxType="string"==typeof e?e:o,a[1]=n;for(var d=2;d=0||(o[i]=e[i]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(o[i]=e[i])}return o}var c=r.createContext({}),d=function(e){var t=r.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},l=function(e){var t=d(e.components);return r.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},p=r.forwardRef((function(e,t){var i=e.components,o=e.mdxType,s=e.originalType,c=e.parentName,l=n(e,["components","mdxType","originalType","parentName"]),p=d(i),m=o,f=p["".concat(c,".").concat(m)]||p[m]||h[m]||s;return i?r.createElement(f,a(a({ref:t},l),{},{components:i})):r.createElement(f,a({ref:t},l))}));function m(e,t){var i=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var s=i.length,a=new Array(s);a[0]=p;var n={};for(var c in t)hasOwnProperty.call(t,c)&&(n[c]=t[c]);n.originalType=e,n.mdxType="string"==typeof e?e:o,a[1]=n;for(var d=2;d=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=i.createContext({}),m=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},l=function(e){var t=m(e.components);return i.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,l=a(e,["components","mdxType","originalType","parentName"]),d=m(r),h=o,u=d["".concat(c,".").concat(h)]||d[h]||p[h]||n;return r?i.createElement(u,s(s({ref:t},l),{},{components:r})):i.createElement(u,s({ref:t},l))}));function h(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,s=new Array(n);s[0]=d;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:o,s[1]=a;for(var m=2;m=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=i.createContext({}),m=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},l=function(e){var t=m(e.components);return i.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,l=a(e,["components","mdxType","originalType","parentName"]),d=m(r),h=o,u=d["".concat(c,".").concat(h)]||d[h]||p[h]||n;return r?i.createElement(u,s(s({ref:t},l),{},{components:r})):i.createElement(u,s({ref:t},l))}));function h(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,s=new Array(n);s[0]=d;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a.mdxType="string"==typeof e?e:o,s[1]=a;for(var m=2;m=0||(a[o]=e[o]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(a[o]=e[o])}return a}var c=i.createContext({}),l=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},d=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var o=e.components,a=e.mdxType,n=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),m=l(o),p=a,g=m["".concat(c,".").concat(p)]||m[p]||h[p]||n;return o?i.createElement(g,s(s({ref:t},d),{},{components:o})):i.createElement(g,s({ref:t},d))}));function p(e,t){var o=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=o.length,s=new Array(n);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:a,s[1]=r;for(var l=2;l=0||(a[o]=e[o]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(a[o]=e[o])}return a}var c=i.createContext({}),l=function(e){var t=i.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):s(s({},t),e)),o},d=function(e){var t=l(e.components);return i.createElement(c.Provider,{value:t},e.children)},h={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var o=e.components,a=e.mdxType,n=e.originalType,c=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),m=l(o),p=a,g=m["".concat(c,".").concat(p)]||m[p]||h[p]||n;return o?i.createElement(g,s(s({ref:t},d),{},{components:o})):i.createElement(g,s({ref:t},d))}));function p(e,t){var o=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=o.length,s=new Array(n);s[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r.mdxType="string"==typeof e?e:a,s[1]=r;for(var l=2;l=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var u=n.createContext({}),s=function(t){var e=n.useContext(u),r=e;return t&&(r="function"==typeof t?t(e):a(a({},e),t)),r},l=function(t){var e=s(t.components);return n.createElement(u.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},f=n.forwardRef((function(t,e){var r=t.components,o=t.mdxType,i=t.originalType,u=t.parentName,l=c(t,["components","mdxType","originalType","parentName"]),f=s(r),d=o,b=f["".concat(u,".").concat(d)]||f[d]||p[d]||i;return r?n.createElement(b,a(a({ref:e},l),{},{components:r})):n.createElement(b,a({ref:e},l))}));function d(t,e){var r=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var i=r.length,a=new Array(i);a[0]=f;var c={};for(var u in e)hasOwnProperty.call(e,u)&&(c[u]=e[u]);c.originalType=t,c.mdxType="string"==typeof t?t:o,a[1]=c;for(var s=2;s=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}var u=n.createContext({}),s=function(t){var e=n.useContext(u),r=e;return t&&(r="function"==typeof t?t(e):a(a({},e),t)),r},l=function(t){var e=s(t.components);return n.createElement(u.Provider,{value:e},t.children)},p={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},f=n.forwardRef((function(t,e){var r=t.components,o=t.mdxType,i=t.originalType,u=t.parentName,l=c(t,["components","mdxType","originalType","parentName"]),f=s(r),d=o,b=f["".concat(u,".").concat(d)]||f[d]||p[d]||i;return r?n.createElement(b,a(a({ref:e},l),{},{components:r})):n.createElement(b,a({ref:e},l))}));function d(t,e){var r=arguments,o=e&&e.mdxType;if("string"==typeof t||o){var i=r.length,a=new Array(i);a[0]=f;var c={};for(var u in e)hasOwnProperty.call(e,u)&&(c[u]=e[u]);c.originalType=t,c.mdxType="string"==typeof t?t:o,a[1]=c;for(var s=2;s=a)&&Object.keys(n.O).every((function(e){return n.O[e](b[r])}))?b.splice(r--,1):(t=!1,a0&&e[i-1][2]>a;i--)e[i]=e[i-1];e[i]=[b,c,a]},n.n=function(e){var f=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(f,{a:f}),f},b=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},n.t=function(e,c){if(1&c&&(e=this(e)),8&c)return e;if("object"==typeof e&&e){if(4&c&&e.__esModule)return e;if(16&c&&"function"==typeof e.then)return e}var a=Object.create(null);n.r(a);var d={};f=f||[null,b({}),b([]),b(b)];for(var t=2&c&&e;"object"==typeof t&&!~f.indexOf(t);t=b(t))Object.getOwnPropertyNames(t).forEach((function(f){d[f]=function(){return e[f]}}));return d.default=function(){return e},n.d(a,d),a},n.d=function(e,f){for(var b in f)n.o(f,b)&&!n.o(e,b)&&Object.defineProperty(e,b,{enumerable:!0,get:f[b]})},n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(f,b){return n.f[b](e,f),f}),[]))},n.u=function(e){return"assets/js/"+({53:"935f2afb",328:"65f59a55",612:"a976b482",812:"0d70a313",879:"e0b00178",925:"b5976878",991:"67283e50",1062:"2f0ec223",1277:"0243614c",1351:"358bfd91",1352:"f3d51dcb",1374:"b9e2db8f",1408:"db749810",1437:"83d6452b",1480:"073edd59",1482:"f24909cd",1495:"feb0a068",1521:"6b1e0334",1536:"1437a887",1576:"41daa8b4",1789:"79248420",1895:"efbcea9d",1955:"9976dba8",2040:"c2c4426a",2120:"9f5dc2b0",2166:"ade96904",2174:"0b1184e8",2184:"c0bb789b",2214:"f8438414",2290:"f5824b3c",2352:"5395b836",2468:"73517f78",2595:"07990011",2766:"4cd795c8",2879:"8cadb544",2904:"37bf8d6e",2907:"c5a98701",2938:"68543202",2943:"c5f202a2",2999:"f27e77df",3107:"d061ed1e",3214:"6db347e8",3271:"e963bf71",3360:"b1f7a5f8",3379:"dca8ef5b",3504:"5ea46faf",3519:"49f969b0",3658:"85bdfa30",3743:"e129cf3c",3943:"33cdb9e8",3965:"cf9aab87",3991:"83bd4574",4054:"b139d961",4060:"3bc993c5",4069:"bcb93ad0",4117:"ee5834a7",4172:"5003321a",4193:"2ff88f8b",4195:"c4f5d8e4",4207:"5049cc12",4436:"8602ac2f",4510:"17aedecb",4658:"75cbb1e6",4988:"73053340",5107:"9956d717",5260:"a7c030b4",5316:"530622a1",5328:"03b39aaa",5418:"b09e837d",5446:"d58fc793",5505:"d71eb2ae",5516:"4e095fca",5587:"4cbfba96",6063:"2ea3555a",6098:"afb8980b",6122:"79495b8c",6135:"0cdee2ba",6202:"a11550d3",6211:"797e5329",6214:"6082c6f3",6551:"233866fe",6571:"b0474474",6752:"5f28d73f",6854:"042aab58",6903:"d9735dd1",7053:"e58d15ee",7082:"156e271d",7087:"1d857b0c",7142:"de8bc3ad",7211:"e6a4b882",7247:"9136c9f6",7485:"cfcdc3ca",7513:"dd8f50c9",7523:"205d9948",7644:"59f1a610",7711:"8677fb48",7773:"5afb2393",7833:"9c3f4df8",7918:"17896441",8113:"bc9a9474",8136:"0b24ef70",8260:"fd7be43f",8366:"d791b17e",8421:"23374ca6",8488:"e8dcf8cf",8572:"bf59d308",8675:"9a3eaf08",8830:"66fdd2ef",8948:"7567abf2",8994:"e768272c",9286:"bb7c9df2",9359:"d8ee5cce",9381:"5a2bb67b",9446:"0fbf73e8",9514:"1be78505",9545:"1a4b7b7c",9603:"d1ce265f",9617:"9fed84d8",9825:"eaf68872",9901:"1ebbe01d",9975:"cc3066cf"}[e]||e)+"."+{53:"fdb1ee36",328:"6fdb0c0a",612:"18e63f24",812:"3a516bb7",879:"75097866",925:"edc370f4",991:"491ca205",1062:"aba57ece",1277:"da95fba9",1351:"d55461a3",1352:"79651301",1374:"34d57bf3",1408:"d93d80e2",1437:"133566f5",1480:"e8189e3d",1482:"508f213b",1495:"2677a072",1521:"14c08e05",1536:"393f679c",1576:"7e8c8346",1789:"c7d73f43",1895:"2edeb41c",1955:"eb9496c8",2040:"d9914480",2120:"6c724322",2166:"968303fe",2174:"e56f679d",2184:"b64de463",2214:"67ce9e9f",2290:"c747c586",2352:"c7a64e57",2468:"f1748ecd",2595:"94a64d96",2766:"f3240c68",2879:"43754a14",2904:"3cc9a761",2907:"42f71b6e",2938:"5606828d",2943:"75689f8c",2999:"a8eb3104",3107:"d4a22f27",3214:"68f6e88b",3271:"168e4a25",3360:"7cc55dff",3379:"787897be",3504:"46386de4",3519:"3e797a4b",3658:"c0190789",3743:"06272e45",3943:"17d97ae6",3965:"886d9a4f",3991:"4e42d2b8",4054:"e43fabfd",4060:"db830c6e",4069:"5a378aef",4117:"f3d88637",4172:"78197302",4193:"a91fa958",4195:"6165fc87",4207:"0cae4352",4436:"bd912a0d",4510:"56882876",4658:"6b4c31f9",4972:"867f29b5",4988:"7e5f700f",5107:"31011553",5260:"d8d50372",5316:"8510d4ad",5328:"f601e365",5418:"ad0593c8",5446:"cf137846",5505:"58c9544e",5516:"b0a97ae6",5587:"8b845f31",6063:"9acd6b0b",6098:"b1318e45",6122:"4152c82d",6135:"8dbc3fd0",6202:"3a2fd597",6211:"6ae8987e",6214:"171e6ed2",6551:"01077ba3",6571:"d4c86084",6752:"7ff72104",6854:"70ea1dee",6903:"6140c6c5",7053:"b0e8de24",7082:"b5def4a8",7087:"f1acb3fc",7142:"e91e43e6",7211:"1c4d0ae6",7247:"ec5d00e6",7485:"b4e7f838",7513:"ca183094",7523:"b5806117",7644:"3368735f",7711:"04e184f2",7773:"bc27ab08",7833:"96702d3a",7918:"0a968261",8113:"2449d139",8136:"0a026f27",8260:"190c1b7a",8366:"e399f437",8421:"24da3043",8488:"201835bd",8572:"c9f0f35d",8675:"8308d770",8830:"f342617e",8948:"ee8721ef",8994:"26518dc0",9286:"279ae6e5",9359:"8c2bf752",9381:"88b73a16",9446:"177c6c67",9514:"a0285027",9545:"1e409224",9603:"6a75b1b2",9617:"f1a4f5f4",9825:"9677673c",9901:"60008461",9975:"3fbbd97e"}[e]+".js"},n.miniCssF=function(e){},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=function(e,f){return Object.prototype.hasOwnProperty.call(e,f)},c={},a="tev2-specifications:",n.l=function(e,f,b,d){if(c[e])c[e].push(f);else{var t,r;if(void 0!==b)for(var o=document.getElementsByTagName("script"),i=0;i=a)&&Object.keys(n.O).every((function(e){return n.O[e](f[r])}))?f.splice(r--,1):(t=!1,a0&&e[i-1][2]>a;i--)e[i]=e[i-1];e[i]=[f,b,a]},n.n=function(e){var c=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(c,{a:c}),c},f=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},n.t=function(e,b){if(1&b&&(e=this(e)),8&b)return e;if("object"==typeof e&&e){if(4&b&&e.__esModule)return e;if(16&b&&"function"==typeof e.then)return e}var a=Object.create(null);n.r(a);var d={};c=c||[null,f({}),f([]),f(f)];for(var t=2&b&&e;"object"==typeof t&&!~c.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach((function(c){d[c]=function(){return e[c]}}));return d.default=function(){return e},n.d(a,d),a},n.d=function(e,c){for(var f in c)n.o(c,f)&&!n.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:c[f]})},n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(c,f){return n.f[f](e,c),c}),[]))},n.u=function(e){return"assets/js/"+({53:"935f2afb",328:"65f59a55",612:"a976b482",812:"0d70a313",879:"e0b00178",925:"b5976878",991:"67283e50",1062:"2f0ec223",1277:"0243614c",1351:"358bfd91",1352:"f3d51dcb",1374:"b9e2db8f",1408:"db749810",1437:"83d6452b",1480:"073edd59",1482:"f24909cd",1495:"feb0a068",1521:"6b1e0334",1536:"1437a887",1576:"41daa8b4",1789:"79248420",1895:"efbcea9d",1955:"9976dba8",2040:"c2c4426a",2120:"9f5dc2b0",2166:"ade96904",2174:"0b1184e8",2184:"c0bb789b",2214:"f8438414",2290:"f5824b3c",2352:"5395b836",2468:"73517f78",2595:"07990011",2766:"4cd795c8",2879:"8cadb544",2904:"37bf8d6e",2907:"c5a98701",2938:"68543202",2943:"c5f202a2",2999:"f27e77df",3107:"d061ed1e",3214:"6db347e8",3271:"e963bf71",3360:"b1f7a5f8",3379:"dca8ef5b",3504:"5ea46faf",3519:"49f969b0",3658:"85bdfa30",3743:"e129cf3c",3943:"33cdb9e8",3965:"cf9aab87",3991:"83bd4574",4054:"b139d961",4060:"3bc993c5",4069:"bcb93ad0",4117:"ee5834a7",4172:"5003321a",4193:"2ff88f8b",4195:"c4f5d8e4",4207:"5049cc12",4436:"8602ac2f",4510:"17aedecb",4658:"75cbb1e6",4988:"73053340",5107:"9956d717",5260:"a7c030b4",5316:"530622a1",5328:"03b39aaa",5418:"b09e837d",5446:"d58fc793",5505:"d71eb2ae",5516:"4e095fca",5587:"4cbfba96",6063:"2ea3555a",6098:"afb8980b",6122:"79495b8c",6135:"0cdee2ba",6202:"a11550d3",6211:"797e5329",6214:"6082c6f3",6551:"233866fe",6571:"b0474474",6752:"5f28d73f",6854:"042aab58",6903:"d9735dd1",7053:"e58d15ee",7082:"156e271d",7087:"1d857b0c",7142:"de8bc3ad",7211:"e6a4b882",7247:"9136c9f6",7485:"cfcdc3ca",7513:"dd8f50c9",7523:"205d9948",7644:"59f1a610",7711:"8677fb48",7773:"5afb2393",7833:"9c3f4df8",7918:"17896441",8113:"bc9a9474",8136:"0b24ef70",8260:"fd7be43f",8366:"d791b17e",8421:"23374ca6",8488:"e8dcf8cf",8572:"bf59d308",8675:"9a3eaf08",8830:"66fdd2ef",8948:"7567abf2",8994:"e768272c",9286:"bb7c9df2",9359:"d8ee5cce",9381:"5a2bb67b",9446:"0fbf73e8",9514:"1be78505",9545:"1a4b7b7c",9603:"d1ce265f",9617:"9fed84d8",9825:"eaf68872",9901:"1ebbe01d",9975:"cc3066cf"}[e]||e)+"."+{53:"fdb1ee36",328:"1ed03a89",612:"5ef0d6d5",812:"ad7cca2e",879:"0a3956a9",925:"7d796c96",991:"9b244c71",1062:"237205a2",1277:"b9840413",1351:"2aaed235",1352:"91c1261a",1374:"079eab16",1408:"3dce921c",1437:"66085f0e",1480:"6f417c2b",1482:"6879cac6",1495:"2dd23284",1521:"d0742110",1536:"02576452",1576:"99fda98a",1789:"4d341d7b",1895:"bfcdae25",1955:"004b3a05",2040:"6062aeb2",2120:"b4a591e7",2166:"4ccc3a19",2174:"995fed41",2184:"f088f62f",2214:"2870ea2b",2290:"d33b0b14",2352:"f2317286",2468:"e75e790b",2595:"881d3c11",2766:"22cd317f",2879:"f2a0210a",2904:"3a37a0da",2907:"01063c35",2938:"3be6b74b",2943:"0de88027",2999:"79ac1abb",3107:"99c796a5",3214:"197f3a77",3271:"1008091b",3360:"00b044f1",3379:"3537b10c",3504:"bf60b71e",3519:"84b7357f",3658:"7a8cbaa3",3743:"a15fb621",3943:"17d97ae6",3965:"fff77539",3991:"1012a959",4054:"b727afe1",4060:"e4114370",4069:"aeb1d895",4117:"73693dec",4172:"6d7be331",4193:"684eae0b",4195:"6165fc87",4207:"f5be689e",4436:"4ac7ca72",4510:"905b8a95",4658:"b10bf7c6",4972:"867f29b5",4988:"1efed90c",5107:"9ec37859",5260:"4989b573",5316:"1a529df4",5328:"8a03ed97",5418:"c885539c",5446:"d2825834",5505:"cc673247",5516:"a1630930",5587:"8b845f31",6063:"b5dc82c3",6098:"5ab73ccf",6122:"d022a8e7",6135:"653a9f10",6202:"17a52408",6211:"e87585a8",6214:"a8d169f8",6551:"cbd6b4cd",6571:"128326ec",6752:"a326cfeb",6854:"ac8aa1f7",6903:"d1e44c17",7053:"78d00ff2",7082:"ad0b831c",7087:"e6e4ffe1",7142:"c0cc10dd",7211:"5f528e28",7247:"e11540e1",7485:"b61b847f",7513:"d09c401d",7523:"a4093f18",7644:"fa28b76f",7711:"3091f3b0",7773:"33bead34",7833:"fcfc5562",7918:"0a968261",8113:"58c5baf2",8136:"11ca0276",8260:"1bdc3c38",8366:"556632a4",8421:"97be4001",8488:"e1b716bf",8572:"8bc13703",8675:"9680ebee",8830:"b0ba0584",8948:"e3f49b62",8994:"11334187",9286:"e0674b0b",9359:"ffcaa474",9381:"70ebdbc9",9446:"d6f80576",9514:"a0285027",9545:"dbad8d7a",9603:"675340e1",9617:"92f91714",9825:"314fb4b8",9901:"e21a64d5",9975:"7217765b"}[e]+".js"},n.miniCssF=function(e){},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=function(e,c){return Object.prototype.hasOwnProperty.call(e,c)},b={},a="tev2-specifications:",n.l=function(e,c,f,d){if(b[e])b[e].push(c);else{var t,r;if(void 0!==f)for(var o=document.getElementsByTagName("script"),i=0;i Contributing to TEv2 Tools | TNO Terminology Design - +
-

Contributing to TEv2 Tools

Editor's note

This documentation is based on the ToIP TT-Tools Proposal memo, which we currently keep as a reference.

The 'Terminology Engine v2 (TEv2)' consists of two parts:

  1. The Terminology Toolbox is a set of (extendable) command-line tools that can be used for generic purposes, such as resolving TermReferences, and creating glossaries.
  2. The use of these, and other tools (in our case: Docusaurus, and github CI/CD), for facilitating the curation of terminologies by terms communities.

We are seeking parties that can contribute to the development of these (extendable) command-line tools, and do so in close collaboration with the eSSIF-Lab consortium. Please express your interest as an issue in the eSSIF-Lab repo.