diff --git a/404.html b/404.html new file mode 100644 index 00000000..a7bc779c --- /dev/null +++ b/404.html @@ -0,0 +1,37 @@ + + + + + + + + + TaxonWorks Docs + + + + + +

404

That's a Four-Oh-Four.
Take me home
+ + + diff --git a/CNAME b/CNAME new file mode 100644 index 00000000..e86e0e18 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +docs.taxonworks.org \ No newline at end of file diff --git a/about/branding.html b/about/branding.html new file mode 100644 index 00000000..59387e44 --- /dev/null +++ b/about/branding.html @@ -0,0 +1,37 @@ + + + + + + + + + Branding | TaxonWorks Docs + + + + + +
+ + + diff --git a/about/citing-taxonworks.html b/about/citing-taxonworks.html new file mode 100644 index 00000000..5d2a275b --- /dev/null +++ b/about/citing-taxonworks.html @@ -0,0 +1,73 @@ + + + + + + + + + Citing TaxonWorks | TaxonWorks Docs + + + + + +
+ + + diff --git a/about/contact.html b/about/contact.html new file mode 100644 index 00000000..9dc66c23 --- /dev/null +++ b/about/contact.html @@ -0,0 +1,37 @@ + + + + + + + + + Contact | TaxonWorks Docs + + + + + +
+ + + diff --git a/about/events.html b/about/events.html new file mode 100644 index 00000000..946cb4c7 --- /dev/null +++ b/about/events.html @@ -0,0 +1,37 @@ + + + + + + + + + Events | TaxonWorks Docs + + + + + +
+ + + diff --git a/about/glossary.html b/about/glossary.html new file mode 100644 index 00000000..de7118eb --- /dev/null +++ b/about/glossary.html @@ -0,0 +1,42 @@ + + + + + + + + + Glossary | TaxonWorks Docs + + + + + +
+ + + diff --git a/about/index.html b/about/index.html new file mode 100644 index 00000000..030ccb55 --- /dev/null +++ b/about/index.html @@ -0,0 +1,37 @@ + + + + + + + + + Overview | TaxonWorks Docs + + + + + +
+ + + diff --git a/assets/404.html-CxyMnPEA.js b/assets/404.html-CxyMnPEA.js new file mode 100644 index 00000000..6b0948ae --- /dev/null +++ b/assets/404.html-CxyMnPEA.js @@ -0,0 +1 @@ +import{_ as t,c as e,o,a}from"./app-Bwgh_xIT.js";const n={},c=a("p",null,"404 Not Found",-1),l=[c];function s(_,r){return o(),e("div",null,l)}const d=t(n,[["render",s],["__file","404.html.vue"]]),h=JSON.parse('{"path":"/404.html","title":"","lang":"en-US","frontmatter":{"layout":"NotFound"},"headers":[],"git":{},"filePathRelative":null}');export{d as comp,h as data}; diff --git a/assets/annotation.html-CcgTmaLE.js b/assets/annotation.html-CcgTmaLE.js new file mode 100644 index 00000000..1476070a --- /dev/null +++ b/assets/annotation.html-CcgTmaLE.js @@ -0,0 +1 @@ +import{_ as e,c as t,o as a,b as o}from"./app-Bwgh_xIT.js";const i={},n=o('

Annotation

TaxonWorks excels in annotating data. Tags, notes, custom data-attributes, citations, alternative value, confidence levels, attribution and more are all customizable by the user then usable to enrich and manage their projects.

TaxonWorks provides a nearly universally applicable set of "annotation" types that can be used on core and supporting data.

Use cases

Annotations have many potential uses in TaxonWorks. Some examples to get you thinking.

My data don't fit in TaxonWorks!

You're checking out TaxonWorks, it seems to have most of what you need, but the UI seems to be missing fields for key data that are critical to your project. See Data attributes

Export to a particular DarwinCore field

TaxonWorks maps its internal model to well over 50 Darwin Core fields automatically. In addition, users can add Controlled Vocabulary Terms that reference DarwinCore fields to further extend the data that can be exported. See Darwin core exportable URIs.

I need to make a group of records

As part of your SOP you are constantly needing to make temporary small groups of data to review and modify.

In TaxonWorks you can filter and select objects by Tags (and many other similar things). Tags can be batch created, destroyed in mass, and used to dynamically grow and shrink matrices, group your data into stages of a workflow, indicate things "TODO", filter records, add objects to loans, and much more. See Tags.

I need to annotate this data with how it came to be

In your project it's important to know (record a provenance trail) that some Observations came from one SOP, while others came from another. See Protocols.

User interface

Annotations are implemented in the UI in many different ways, but there are several key interfaces that are perhaps the most important.

Radial annotator

The radial annotator is used to call up and access the different types of annotations that are available for the object in question.

A radial annotator opened for a CollectionObject

Manage controlled vocabulary terms task

The Manage controlled vocabular terms task is used to customize the types of annotations you want to use. Think of it as creating the Keywords that your linking to your records, or the new column that you're adding to your table of data (e.g. names, collection objects, or collecting events).

The task open to the Predicates tab

"Custom fields"

UI inputs for data attributes.

If you are a project administrator you can make new fields (see Data attributes below) appear in the UI in various places.

Fields will now appear in the UI where pertinent, notably the Comprehensive digitization task, the OTU quick forms radial, and the New collecting event task.

Attributes inputs (bottom left) displaying for selected Predicates

Annotation types

Controlled vocabulary terms

Many annotation types start with the creation of a controlled vocabulary term (CVT). This is done in the Manage controlled vocabulary terms task.

All CVTs must have 2 parts:

  1. A name, or label - used to select the CVT in the interface, for display, etc.
  2. A definition - don't assume that your label is understandable, now, or over time! Provide a definition so that others may interpret and apply this CVT term as your project intends it to be used.

A third attribute is the Uri. This attribute is used to assert that the CVT in your project means the same things as data used in others projects.

Data attributes

Think of DataAttributes as custom columns on your table. There are two types in TaxonWorks, "Import", and "Internal". The latter are created in the user-interface, the former are used in the documentation of bulk-data import, typically for bespoke datasets. DataAttributes are key-value pairs that reference a record (or object. They reference the object the attribute is being attached to, a type of CVT called a Predicate, and the value.

Customizing models

For example you might add a DataAttribute referencing a Predicate you created called "TownshipAndRange" with the value "Smithville" to a CollectingEvent.

Darwin Core exportable URIs

TaxonWorks "knows" about certain DarwinCore fields that are not 1:1 mappable to its model. To add data to these fields, and have them export 1:1 (i.e. typing "Stuff; Things" results in "Stuff; Things" being exported into the field) to your DarwinCore exports do this:

You may want to add the field to directly to the UI, for example the New collecting event task or Comprehensive specimen digitization, see above for how to do this.

At this point you have a new field in TaxonWorks that will be exported to DwC when requested.

Note that on export no processing or validation is done on the export of these fields, you get in the export what you type in the field.

Tags

Tags are used an arbitrary label with your object. Think of tags as data attributes with no value. To create a type of Tag create a Keyword in the CVT manager. You can apply tags in the radial annotator, in batch in filter interfaces, and in various other ways.

Note that technically a Tag is the link (or join) between a Keyword (CVT) and an Object, not the Keyword itself.

Protocols

Tagging an object with a Protocol asserts "some or all of the data in here came from this process. Create new protocols via Data->Protocols. You can attach PDFs describing your protocol to your Protocol to expand its description.

Alternate values

Alternate values reference a TaxonWorks field and provide a way to include a Translation, Abbreviation, Misspelling or Alternate spelling. To create one:

Alternate values are not allowed on the name of a TaxonName, don't even think about requesting this.

Identifiers

Identifiers are broader subject (i.e. we need further discussion here). Briefly, there are two types in TaxonWorks, "Global", and "Local". The latter are in essence those types of identifiers that people thought really hard about, and tried to make universally applicable, the former, not so much.

In the real-world there are no-such-things as "unique" identifiers per object. TaxonWorks embraces this philosophy by allowing you to add as many identifiers to your data as you want. Identifiers can be used to say and do things like:

Notes

Notes are the most unrestricted annotation type, you're simply adding a block of text (Markdown is allowed) to a record. You should not assume that all notes of are of some type. You should also not use Notes because you want something to appear somewhere, it's much better to do this with a more defined annotation such as a data attribute.

Verifiers

A Verifier is a very generic way of saying "This Person verified this record". It links a Person object with a role "verifier" to your data. There are no sub-types of verification, for that functionality see Confidences.

Documentation

Some classes of data can be "documented", this simply means attaching a link to a binary document (e.g. pdf) to the record. The assertion being made is "this binary file contains the content of that thing", as in "This is the PDF of that Source".

Confidences

Projects can create their own arbitrary levels of Confidence (think data-quality) that they can use to annotate there data with. For example you might have a ConfidenceLevel "1 - Origin unknonw" or "B - Spelling check required".

',65),r=[n];function s(l,d){return a(),t("div",null,r)}const h=e(i,[["render",s],["__file","annotation.html.vue"]]),u=JSON.parse(`{"path":"/guide/Manual/annotation.html","title":"Annotation","lang":"en-US","frontmatter":{"sidebarPosition":500},"headers":[{"level":2,"title":"Use cases","slug":"use-cases","link":"#use-cases","children":[{"level":3,"title":"My data don't fit in TaxonWorks!","slug":"my-data-don-t-fit-in-taxonworks","link":"#my-data-don-t-fit-in-taxonworks","children":[]},{"level":3,"title":"Export to a particular DarwinCore field","slug":"export-to-a-particular-darwincore-field","link":"#export-to-a-particular-darwincore-field","children":[]},{"level":3,"title":"I need to make a group of records","slug":"i-need-to-make-a-group-of-records","link":"#i-need-to-make-a-group-of-records","children":[]},{"level":3,"title":"I need to annotate this data with how it came to be","slug":"i-need-to-annotate-this-data-with-how-it-came-to-be","link":"#i-need-to-annotate-this-data-with-how-it-came-to-be","children":[]}]},{"level":2,"title":"User interface","slug":"user-interface","link":"#user-interface","children":[{"level":3,"title":"Radial annotator","slug":"radial-annotator","link":"#radial-annotator","children":[]},{"level":3,"title":"Manage controlled vocabulary terms task","slug":"manage-controlled-vocabulary-terms-task","link":"#manage-controlled-vocabulary-terms-task","children":[]},{"level":3,"title":"\\"Custom fields\\"","slug":"custom-fields","link":"#custom-fields","children":[]}]},{"level":2,"title":"Annotation types","slug":"annotation-types","link":"#annotation-types","children":[{"level":3,"title":"Controlled vocabulary terms","slug":"controlled-vocabulary-terms","link":"#controlled-vocabulary-terms","children":[]},{"level":3,"title":"Data attributes","slug":"data-attributes","link":"#data-attributes","children":[{"level":4,"title":"Customizing models","slug":"customizing-models","link":"#customizing-models","children":[]},{"level":4,"title":"Darwin Core exportable URIs","slug":"darwin-core-exportable-uris","link":"#darwin-core-exportable-uris","children":[]}]},{"level":3,"title":"Tags","slug":"tags","link":"#tags","children":[]},{"level":3,"title":"Protocols","slug":"protocols","link":"#protocols","children":[]},{"level":3,"title":"Alternate values","slug":"alternate-values","link":"#alternate-values","children":[]},{"level":3,"title":"Identifiers","slug":"identifiers","link":"#identifiers","children":[]},{"level":3,"title":"Notes","slug":"notes","link":"#notes","children":[]},{"level":3,"title":"Verifiers","slug":"verifiers","link":"#verifiers","children":[]},{"level":3,"title":"Documentation","slug":"documentation","link":"#documentation","children":[]},{"level":3,"title":"Confidences","slug":"confidences","link":"#confidences","children":[]}]}],"git":{"updatedTime":1682535910000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":2}]},"filePathRelative":"guide/Manual/annotation.md"}`);export{h as comp,u as data}; diff --git a/assets/api.html-D3B5XnWH.js b/assets/api.html-D3B5XnWH.js new file mode 100644 index 00000000..0a171898 --- /dev/null +++ b/assets/api.html-D3B5XnWH.js @@ -0,0 +1 @@ +import{_ as a,c as e,o as i,b as n}from"./app-Bwgh_xIT.js";const t={},r=n('

API

When you use TaxonWorks you and your collaborators will likely want to take advantage of accessing and serving your data via the API(s).

An API is an application programing interface

Technically there are many APIs in TaxonWorks, however when we use the word in the context of TaxonWorks we almost always are doing so in reference to the functionality that lets you access your data outside the user-interfaces.

Very simply, the API lets you make a query on your data (and other's that have made it accessible), and returns you a response. It gives you "behind-the-scenes" access to the data the user interfaces are managing.

The API is currently documented here.

',6),o=[r];function s(c,p){return i(),e("div",null,o)}const h=a(t,[["render",s],["__file","api.html.vue"]]),d=JSON.parse('{"path":"/guide/api.html","title":"API","lang":"en-US","frontmatter":{"sidebarPosition":200},"headers":[{"level":2,"title":"An API is an application programing interface","slug":"an-api-is-an-application-programing-interface","link":"#an-api-is-an-application-programing-interface","children":[]}],"git":{"updatedTime":1678491307000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":3},{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":2}]},"filePathRelative":"guide/api.md"}');export{h as comp,d as data}; diff --git a/assets/app-Bwgh_xIT.js b/assets/app-Bwgh_xIT.js new file mode 100644 index 00000000..426d791a --- /dev/null +++ b/assets/app-Bwgh_xIT.js @@ -0,0 +1,26 @@ +/** +* @vue/shared v3.4.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Tl(e,t){const n=new Set(e.split(","));return i=>n.has(i)}const _e={},an=[],et=()=>{},ca=()=>!1,Un=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Ll=e=>e.startsWith("onUpdate:"),Le=Object.assign,Al=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},ua=Object.prototype.hasOwnProperty,he=(e,t)=>ua.call(e,t),ee=Array.isArray,cn=e=>Pi(e)==="[object Map]",_r=e=>Pi(e)==="[object Set]",oe=e=>typeof e=="function",Ae=e=>typeof e=="string",tn=e=>typeof e=="symbol",ke=e=>e!==null&&typeof e=="object",wr=e=>(ke(e)||oe(e))&&oe(e.then)&&oe(e.catch),xr=Object.prototype.toString,Pi=e=>xr.call(e),da=e=>Pi(e).slice(8,-1),Er=e=>Pi(e)==="[object Object]",Pl=e=>Ae(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,un=Tl(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Ri=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},ha=/-(\w)/g,nt=Ri(e=>e.replace(ha,(t,n)=>n?n.toUpperCase():"")),fa=/\B([A-Z])/g,nn=Ri(e=>e.replace(fa,"-$1").toLowerCase()),qn=Ri(e=>e.charAt(0).toUpperCase()+e.slice(1)),Gi=Ri(e=>e?`on${qn(e)}`:""),$t=(e,t)=>!Object.is(e,t),Ki=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:i,value:n})},ga=e=>{const t=parseFloat(e);return isNaN(t)?e:t},pa=e=>{const t=Ae(e)?Number(e):NaN;return isNaN(t)?e:t};let so;const Sr=()=>so||(so=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Gn(e){if(ee(e)){const t={};for(let n=0;n{if(n){const i=n.split(va);i.length>1&&(t[i[0].trim()]=i[1].trim())}}),t}function Ke(e){let t="";if(Ae(e))t=e;else if(ee(e))for(let n=0;nAe(e)?e:e==null?"":ee(e)||ke(e)&&(e.toString===xr||!oe(e.toString))?JSON.stringify(e,Lr,2):String(e),Lr=(e,t)=>t&&t.__v_isRef?Lr(e,t.value):cn(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[i,l],o)=>(n[Qi(i,o)+" =>"]=l,n),{})}:_r(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Qi(n))}:tn(t)?Qi(t):ke(t)&&!ee(t)&&!Er(t)?String(t):t,Qi=(e,t="")=>{var n;return tn(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.4.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Je;class wa{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Je,!t&&Je&&(this.index=(Je.scopes||(Je.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=Je;try{return Je=this,t()}finally{Je=n}}}on(){Je=this}off(){Je=this.parent}stop(t){if(this._active){let n,i;for(n=0,i=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),Bt()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=Dt,n=Xt;try{return Dt=!0,Xt=this,this._runnings++,ao(this),this.fn()}finally{co(this),this._runnings--,Xt=n,Dt=t}}stop(){this.active&&(ao(this),co(this),this.onStop&&this.onStop(),this.active=!1)}}function Ca(e){return e.value}function ao(e){e._trackId++,e._depsLength=0}function co(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},yi=new WeakMap,Zt=Symbol(""),fl=Symbol("");function Qe(e,t,n){if(Dt&&Xt){let i=yi.get(e);i||yi.set(e,i=new Map);let l=i.get(n);l||i.set(n,l=Mr(()=>i.delete(n))),Ir(Xt,l)}}function yt(e,t,n,i,l,o){const r=yi.get(e);if(!r)return;let s=[];if(t==="clear")s=[...r.values()];else if(n==="length"&&ee(e)){const a=Number(i);r.forEach((c,u)=>{(u==="length"||!tn(u)&&u>=a)&&s.push(c)})}else switch(n!==void 0&&s.push(r.get(n)),t){case"add":ee(e)?Pl(n)&&s.push(r.get("length")):(s.push(r.get(Zt)),cn(e)&&s.push(r.get(fl)));break;case"delete":ee(e)||(s.push(r.get(Zt)),cn(e)&&s.push(r.get(fl)));break;case"set":cn(e)&&s.push(r.get(Zt));break}Il();for(const a of s)a&&Or(a,4);Ol()}function Sa(e,t){const n=yi.get(e);return n&&n.get(t)}const Ta=Tl("__proto__,__v_isRef,__isVue"),Dr=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(tn)),uo=La();function La(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const i=fe(this);for(let o=0,r=this.length;o{e[t]=function(...n){zt(),Il();const i=fe(this)[t].apply(this,n);return Ol(),Bt(),i}}),e}function Aa(e){tn(e)||(e=String(e));const t=fe(this);return Qe(t,"has",e),t.hasOwnProperty(e)}class Nr{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,i){const l=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!l;if(n==="__v_isReadonly")return l;if(n==="__v_isShallow")return o;if(n==="__v_raw")return i===(l?o?Ba:jr:o?Hr:Fr).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(i)?t:void 0;const r=ee(t);if(!l){if(r&&he(uo,n))return Reflect.get(uo,n,i);if(n==="hasOwnProperty")return Aa}const s=Reflect.get(t,n,i);return(tn(n)?Dr.has(n):Ta(n))||(l||Qe(t,"get",n),o)?s:He(s)?r&&Pl(n)?s:s.value:ke(s)?l?Oi(s):Kn(s):s}}class $r extends Nr{constructor(t=!1){super(!1,t)}set(t,n,i,l){let o=t[n];if(!this._isShallow){const a=Mn(o);if(!ki(i)&&!Mn(i)&&(o=fe(o),i=fe(i)),!ee(t)&&He(o)&&!He(i))return a?!1:(o.value=i,!0)}const r=ee(t)&&Pl(n)?Number(n)e,Ii=e=>Reflect.getPrototypeOf(e);function ni(e,t,n=!1,i=!1){e=e.__v_raw;const l=fe(e),o=fe(t);n||($t(t,o)&&Qe(l,"get",t),Qe(l,"get",o));const{has:r}=Ii(l),s=i?Ml:n?$l:Dn;if(r.call(l,t))return s(e.get(t));if(r.call(l,o))return s(e.get(o));e!==l&&e.get(t)}function ii(e,t=!1){const n=this.__v_raw,i=fe(n),l=fe(e);return t||($t(e,l)&&Qe(i,"has",e),Qe(i,"has",l)),e===l?n.has(e):n.has(e)||n.has(l)}function li(e,t=!1){return e=e.__v_raw,!t&&Qe(fe(e),"iterate",Zt),Reflect.get(e,"size",e)}function ho(e){e=fe(e);const t=fe(this);return Ii(t).has.call(t,e)||(t.add(e),yt(t,"add",e,e)),this}function fo(e,t){t=fe(t);const n=fe(this),{has:i,get:l}=Ii(n);let o=i.call(n,e);o||(e=fe(e),o=i.call(n,e));const r=l.call(n,e);return n.set(e,t),o?$t(t,r)&&yt(n,"set",e,t):yt(n,"add",e,t),this}function go(e){const t=fe(this),{has:n,get:i}=Ii(t);let l=n.call(t,e);l||(e=fe(e),l=n.call(t,e)),i&&i.call(t,e);const o=t.delete(e);return l&&yt(t,"delete",e,void 0),o}function po(){const e=fe(this),t=e.size!==0,n=e.clear();return t&&yt(e,"clear",void 0,void 0),n}function oi(e,t){return function(i,l){const o=this,r=o.__v_raw,s=fe(r),a=t?Ml:e?$l:Dn;return!e&&Qe(s,"iterate",Zt),r.forEach((c,u)=>i.call(l,a(c),a(u),o))}}function ri(e,t,n){return function(...i){const l=this.__v_raw,o=fe(l),r=cn(o),s=e==="entries"||e===Symbol.iterator&&r,a=e==="keys"&&r,c=l[e](...i),u=n?Ml:t?$l:Dn;return!t&&Qe(o,"iterate",a?fl:Zt),{next(){const{value:d,done:h}=c.next();return h?{value:d,done:h}:{value:s?[u(d[0]),u(d[1])]:u(d),done:h}},[Symbol.iterator](){return this}}}}function St(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Ma(){const e={get(o){return ni(this,o)},get size(){return li(this)},has:ii,add:ho,set:fo,delete:go,clear:po,forEach:oi(!1,!1)},t={get(o){return ni(this,o,!1,!0)},get size(){return li(this)},has:ii,add:ho,set:fo,delete:go,clear:po,forEach:oi(!1,!0)},n={get(o){return ni(this,o,!0)},get size(){return li(this,!0)},has(o){return ii.call(this,o,!0)},add:St("add"),set:St("set"),delete:St("delete"),clear:St("clear"),forEach:oi(!0,!1)},i={get(o){return ni(this,o,!0,!0)},get size(){return li(this,!0)},has(o){return ii.call(this,o,!0)},add:St("add"),set:St("set"),delete:St("delete"),clear:St("clear"),forEach:oi(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(o=>{e[o]=ri(o,!1,!1),n[o]=ri(o,!0,!1),t[o]=ri(o,!1,!0),i[o]=ri(o,!0,!0)}),[e,n,t,i]}const[Da,Na,$a,Fa]=Ma();function Dl(e,t){const n=t?e?Fa:$a:e?Na:Da;return(i,l,o)=>l==="__v_isReactive"?!e:l==="__v_isReadonly"?e:l==="__v_raw"?i:Reflect.get(he(n,l)&&l in i?n:i,l,o)}const Ha={get:Dl(!1,!1)},ja={get:Dl(!1,!0)},za={get:Dl(!0,!1)};const Fr=new WeakMap,Hr=new WeakMap,jr=new WeakMap,Ba=new WeakMap;function Va(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Wa(e){return e.__v_skip||!Object.isExtensible(e)?0:Va(da(e))}function Kn(e){return Mn(e)?e:Nl(e,!1,Ra,Ha,Fr)}function zr(e){return Nl(e,!1,Oa,ja,Hr)}function Oi(e){return Nl(e,!0,Ia,za,jr)}function Nl(e,t,n,i,l){if(!ke(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=l.get(e);if(o)return o;const r=Wa(e);if(r===0)return e;const s=new Proxy(e,r===2?i:n);return l.set(e,s),s}function Sn(e){return Mn(e)?Sn(e.__v_raw):!!(e&&e.__v_isReactive)}function Mn(e){return!!(e&&e.__v_isReadonly)}function ki(e){return!!(e&&e.__v_isShallow)}function Br(e){return e?!!e.__v_raw:!1}function fe(e){const t=e&&e.__v_raw;return t?fe(t):e}function Ua(e){return Object.isExtensible(e)&&Cr(e,"__v_skip",!0),e}const Dn=e=>ke(e)?Kn(e):e,$l=e=>ke(e)?Oi(e):e;class Vr{constructor(t,n,i,l){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new Rl(()=>t(this._value),()=>Tn(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!l,this.__v_isReadonly=i}get value(){const t=fe(this);return(!t._cacheable||t.effect.dirty)&&$t(t._value,t._value=t.effect.run())&&Tn(t,4),Fl(t),t.effect._dirtyLevel>=2&&Tn(t,2),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function qa(e,t,n=!1){let i,l;const o=oe(e);return o?(i=e,l=et):(i=e.get,l=e.set),new Vr(i,l,o||!l,n)}function Fl(e){var t;Dt&&Xt&&(e=fe(e),Ir(Xt,(t=e.dep)!=null?t:e.dep=Mr(()=>e.dep=void 0,e instanceof Vr?e:void 0)))}function Tn(e,t=4,n){e=fe(e);const i=e.dep;i&&Or(i,t)}function He(e){return!!(e&&e.__v_isRef===!0)}function ae(e){return Wr(e,!1)}function vn(e){return Wr(e,!0)}function Wr(e,t){return He(e)?e:new Ga(e,t)}class Ga{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:fe(t),this._value=n?t:Dn(t)}get value(){return Fl(this),this._value}set value(t){const n=this.__v_isShallow||ki(t)||Mn(t);t=n?t:fe(t),$t(t,this._rawValue)&&(this._rawValue=t,this._value=n?t:Dn(t),Tn(this,4))}}function Q(e){return He(e)?e.value:e}const Ka={get:(e,t,n)=>Q(Reflect.get(e,t,n)),set:(e,t,n,i)=>{const l=e[t];return He(l)&&!He(n)?(l.value=n,!0):Reflect.set(e,t,n,i)}};function Ur(e){return Sn(e)?e:new Proxy(e,Ka)}class Qa{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:i}=t(()=>Fl(this),()=>Tn(this));this._get=n,this._set=i}get value(){return this._get()}set value(t){this._set(t)}}function Ya(e){return new Qa(e)}function Hl(e){const t=ee(e)?new Array(e.length):{};for(const n in e)t[n]=qr(e,n);return t}class Ja{constructor(t,n,i){this._object=t,this._key=n,this._defaultValue=i,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Sa(fe(this._object),this._key)}}class Xa{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Za(e,t,n){return He(e)?e:oe(e)?new Xa(e):ke(e)&&arguments.length>1?qr(e,t,n):ae(e)}function qr(e,t,n){const i=e[t];return He(i)?i:new Ja(e,t,n)}/** +* @vue/runtime-core v3.4.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function Nt(e,t,n,i){try{return i?e(...i):e()}catch(l){Qn(l,t,n)}}function tt(e,t,n,i){if(oe(e)){const l=Nt(e,t,n,i);return l&&wr(l)&&l.catch(o=>{Qn(o,t,n)}),l}if(ee(e)){const l=[];for(let o=0;o>>1,l=ze[i],o=$n(l);oht&&ze.splice(t,1)}function ic(e){ee(e)?dn.push(...e):(!Pt||!Pt.includes(e,e.allowRecurse?Kt+1:Kt))&&dn.push(e),Kr()}function mo(e,t,n=Nn?ht+1:0){for(;n$n(n)-$n(i));if(dn.length=0,Pt){Pt.push(...t);return}for(Pt=t,Kt=0;Kte.id==null?1/0:e.id,lc=(e,t)=>{const n=$n(e)-$n(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function Qr(e){gl=!1,Nn=!0,ze.sort(lc);try{for(ht=0;htAe(p)?p.trim():p)),d&&(l=n.map(ga))}let s,a=i[s=Gi(t)]||i[s=Gi(nt(t))];!a&&o&&(a=i[s=Gi(nn(t))]),a&&tt(a,e,6,l);const c=i[s+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[s])return;e.emitted[s]=!0,tt(c,e,6,l)}}function Yr(e,t,n=!1){const i=t.emitsCache,l=i.get(e);if(l!==void 0)return l;const o=e.emits;let r={},s=!1;if(!oe(e)){const a=c=>{const u=Yr(c,t,!0);u&&(s=!0,Le(r,u))};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}return!o&&!s?(ke(e)&&i.set(e,null),null):(ee(o)?o.forEach(a=>r[a]=null):Le(r,o),ke(e)&&i.set(e,r),r)}function Di(e,t){return!e||!Un(t)?!1:(t=t.slice(2).replace(/Once$/,""),he(e,t[0].toLowerCase()+t.slice(1))||he(e,nn(t))||he(e,t))}let Pe=null,Jr=null;function wi(e){const t=Pe;return Pe=e,Jr=e&&e.type.__scopeId||null,t}function Te(e,t=Pe,n){if(!t||e._n)return e;const i=(...l)=>{i._d&&Lo(-1);const o=wi(t);let r;try{r=e(...l)}finally{wi(o),i._d&&Lo(1)}return r};return i._n=!0,i._c=!0,i._d=!0,i}function Yi(e){const{type:t,vnode:n,proxy:i,withProxy:l,propsOptions:[o],slots:r,attrs:s,emit:a,render:c,renderCache:u,props:d,data:h,setupState:p,ctx:v,inheritAttrs:k}=e,A=wi(e);let x,C;try{if(n.shapeFlag&4){const w=l||i,H=w;x=lt(c.call(H,w,u,d,p,h,v)),C=s}else{const w=t;x=lt(w.length>1?w(d,{attrs:s,slots:r,emit:a}):w(d,null)),C=t.props?s:rc(s)}}catch(w){Rn.length=0,Qn(w,e,1),x=re(Ge)}let m=x;if(C&&k!==!1){const w=Object.keys(C),{shapeFlag:H}=m;w.length&&H&7&&(o&&w.some(Ll)&&(C=sc(C,o)),m=Ht(m,C,!1,!0))}return n.dirs&&(m=Ht(m,null,!1,!0),m.dirs=m.dirs?m.dirs.concat(n.dirs):n.dirs),n.transition&&(m.transition=n.transition),x=m,wi(A),x}const rc=e=>{let t;for(const n in e)(n==="class"||n==="style"||Un(n))&&((t||(t={}))[n]=e[n]);return t},sc=(e,t)=>{const n={};for(const i in e)(!Ll(i)||!(i.slice(9)in t))&&(n[i]=e[i]);return n};function ac(e,t,n){const{props:i,children:l,component:o}=e,{props:r,children:s,patchFlag:a}=t,c=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&a>=0){if(a&1024)return!0;if(a&16)return i?vo(i,r,c):!!r;if(a&8){const u=t.dynamicProps;for(let d=0;de.__isSuspense;function Zr(e,t){t&&t.pendingBranch?ee(e)?t.effects.push(...e):t.effects.push(e):ic(e)}const fc=Symbol.for("v-scx"),gc=()=>Ve(fc);function pc(e,t){return zl(e,null,t)}const si={};function Fe(e,t,n){return zl(e,t,n)}function zl(e,t,{immediate:n,deep:i,flush:l,once:o,onTrack:r,onTrigger:s}=_e){if(t&&o){const I=t;t=(...$)=>{I(...$),H()}}const a=De,c=I=>i===!0?I:Yt(I,i===!1?1:void 0);let u,d=!1,h=!1;if(He(e)?(u=()=>e.value,d=ki(e)):Sn(e)?(u=()=>c(e),d=!0):ee(e)?(h=!0,d=e.some(I=>Sn(I)||ki(I)),u=()=>e.map(I=>{if(He(I))return I.value;if(Sn(I))return c(I);if(oe(I))return Nt(I,a,2)})):oe(e)?t?u=()=>Nt(e,a,2):u=()=>(p&&p(),tt(e,a,3,[v])):u=et,t&&i){const I=u;u=()=>Yt(I())}let p,v=I=>{p=m.onStop=()=>{Nt(I,a,4),p=m.onStop=void 0}},k;if(Zn)if(v=et,t?n&&tt(t,a,3,[u(),h?[]:void 0,v]):u(),l==="sync"){const I=gc();k=I.__watcherHandles||(I.__watcherHandles=[])}else return et;let A=h?new Array(e.length).fill(si):si;const x=()=>{if(!(!m.active||!m.dirty))if(t){const I=m.run();(i||d||(h?I.some(($,b)=>$t($,A[b])):$t(I,A)))&&(p&&p(),tt(t,a,3,[I,A===si?void 0:h&&A[0]===si?[]:A,v]),A=I)}else m.run()};x.allowRecurse=!!t;let C;l==="sync"?C=x:l==="post"?C=()=>qe(x,a&&a.suspense):(x.pre=!0,a&&(x.id=a.uid),C=()=>Mi(x));const m=new Rl(u,et,C),w=Ar(),H=()=>{m.stop(),w&&Al(w.effects,m)};return t?n?x():A=m.run():l==="post"?qe(m.run.bind(m),a&&a.suspense):m.run(),k&&k.push(H),H}function mc(e,t,n){const i=this.proxy,l=Ae(e)?e.includes(".")?es(i,e):()=>i[e]:e.bind(i,i);let o;oe(t)?o=t:(o=t.handler,n=t);const r=Xn(this),s=zl(l,o.bind(i),n);return r(),s}function es(e,t){const n=t.split(".");return()=>{let i=e;for(let l=0;l{Yt(i,t,n)});else if(Er(e))for(const i in e)Yt(e[i],t,n);return e}function xi(e,t){if(Pe===null)return e;const n=ji(Pe)||Pe.proxy,i=e.dirs||(e.dirs=[]);for(let l=0;l{e.isMounted=!0}),$i(()=>{e.isUnmounting=!0}),e}const Xe=[Function,Array],ts={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Xe,onEnter:Xe,onAfterEnter:Xe,onEnterCancelled:Xe,onBeforeLeave:Xe,onLeave:Xe,onAfterLeave:Xe,onLeaveCancelled:Xe,onBeforeAppear:Xe,onAppear:Xe,onAfterAppear:Xe,onAppearCancelled:Xe},bc={name:"BaseTransition",props:ts,setup(e,{slots:t}){const n=Hi(),i=vc();return()=>{const l=t.default&&is(t.default(),!0);if(!l||!l.length)return;let o=l[0];if(l.length>1){for(const h of l)if(h.type!==Ge){o=h;break}}const r=fe(e),{mode:s}=r;if(i.isLeaving)return Ji(o);const a=yo(o);if(!a)return Ji(o);const c=pl(a,r,i,n);ml(a,c);const u=n.subTree,d=u&&yo(u);if(d&&d.type!==Ge&&!Qt(a,d)){const h=pl(d,r,i,n);if(ml(d,h),s==="out-in"&&a.type!==Ge)return i.isLeaving=!0,h.afterLeave=()=>{i.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},Ji(o);s==="in-out"&&a.type!==Ge&&(h.delayLeave=(p,v,k)=>{const A=ns(i,d);A[String(d.key)]=d,p[Rt]=()=>{v(),p[Rt]=void 0,delete c.delayedLeave},c.delayedLeave=k})}return o}}},yc=bc;function ns(e,t){const{leavingVNodes:n}=e;let i=n.get(t.type);return i||(i=Object.create(null),n.set(t.type,i)),i}function pl(e,t,n,i){const{appear:l,mode:o,persisted:r=!1,onBeforeEnter:s,onEnter:a,onAfterEnter:c,onEnterCancelled:u,onBeforeLeave:d,onLeave:h,onAfterLeave:p,onLeaveCancelled:v,onBeforeAppear:k,onAppear:A,onAfterAppear:x,onAppearCancelled:C}=t,m=String(e.key),w=ns(n,e),H=(b,K)=>{b&&tt(b,i,9,K)},I=(b,K)=>{const T=K[1];H(b,K),ee(b)?b.every(W=>W.length<=1)&&T():b.length<=1&&T()},$={mode:o,persisted:r,beforeEnter(b){let K=s;if(!n.isMounted)if(l)K=k||s;else return;b[Rt]&&b[Rt](!0);const T=w[m];T&&Qt(e,T)&&T.el[Rt]&&T.el[Rt](),H(K,[b])},enter(b){let K=a,T=c,W=u;if(!n.isMounted)if(l)K=A||a,T=x||c,W=C||u;else return;let _=!1;const N=b[ai]=te=>{_||(_=!0,te?H(W,[b]):H(T,[b]),$.delayedLeave&&$.delayedLeave(),b[ai]=void 0)};K?I(K,[b,N]):N()},leave(b,K){const T=String(e.key);if(b[ai]&&b[ai](!0),n.isUnmounting)return K();H(d,[b]);let W=!1;const _=b[Rt]=N=>{W||(W=!0,K(),N?H(v,[b]):H(p,[b]),b[Rt]=void 0,w[T]===e&&delete w[T])};w[T]=e,h?I(h,[b,_]):_()},clone(b){return pl(b,t,n,i)}};return $}function Ji(e){if(Jn(e))return e=Ht(e),e.children=null,e}function yo(e){if(!Jn(e))return e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&oe(n.default))return n.default()}}function ml(e,t){e.shapeFlag&6&&e.component?ml(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function is(e,t=!1,n){let i=[],l=0;for(let o=0;o1)for(let o=0;o!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function kc(e){oe(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:i,delay:l=200,timeout:o,suspensible:r=!0,onError:s}=e;let a=null,c,u=0;const d=()=>(u++,a=null,h()),h=()=>{let p;return a||(p=a=t().catch(v=>{if(v=v instanceof Error?v:new Error(String(v)),s)return new Promise((k,A)=>{s(v,()=>k(d()),()=>A(v),u+1)});throw v}).then(v=>p!==a&&a?a:(v&&(v.__esModule||v[Symbol.toStringTag]==="Module")&&(v=v.default),c=v,v)))};return pe({name:"AsyncComponentWrapper",__asyncLoader:h,get __asyncResolved(){return c},setup(){const p=De;if(c)return()=>Xi(c,p);const v=C=>{a=null,Qn(C,p,13,!i)};if(r&&p.suspense||Zn)return h().then(C=>()=>Xi(C,p)).catch(C=>(v(C),()=>i?re(i,{error:C}):null));const k=ae(!1),A=ae(),x=ae(!!l);return l&&setTimeout(()=>{x.value=!1},l),o!=null&&setTimeout(()=>{if(!k.value&&!A.value){const C=new Error(`Async component timed out after ${o}ms.`);v(C),A.value=C}},o),h().then(()=>{k.value=!0,p.parent&&Jn(p.parent.vnode)&&(p.parent.effect.dirty=!0,Mi(p.parent.update))}).catch(C=>{v(C),A.value=C}),()=>{if(k.value&&c)return Xi(c,p);if(A.value&&i)return re(i,{error:A.value});if(n&&!x.value)return re(n)}}})}function Xi(e,t){const{ref:n,props:i,children:l,ce:o}=t.vnode,r=re(e,i,l);return r.ref=n,r.ce=o,delete t.vnode.ce,r}const Jn=e=>e.type.__isKeepAlive;function _c(e,t){ls(e,"a",t)}function wc(e,t){ls(e,"da",t)}function ls(e,t,n=De){const i=e.__wdc||(e.__wdc=()=>{let l=n;for(;l;){if(l.isDeactivated)return;l=l.parent}return e()});if(Ni(t,i,n),n){let l=n.parent;for(;l&&l.parent;)Jn(l.parent.vnode)&&xc(i,t,n,l),l=l.parent}}function xc(e,t,n,i){const l=Ni(t,e,i,!0);Fi(()=>{Al(i[t],l)},n)}function Ni(e,t,n=De,i=!1){if(n){const l=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...r)=>{if(n.isUnmounted)return;zt();const s=Xn(n),a=tt(t,n,e,r);return s(),Bt(),a});return i?l.unshift(o):l.push(o),o}}const _t=e=>(t,n=De)=>(!Zn||e==="sp")&&Ni(e,(...i)=>t(...i),n),Ec=_t("bm"),We=_t("m"),Cc=_t("bu"),Sc=_t("u"),$i=_t("bum"),Fi=_t("um"),Tc=_t("sp"),Lc=_t("rtg"),Ac=_t("rtc");function Pc(e,t=De){Ni("ec",e,t)}function Ft(e,t,n,i){let l;const o=n;if(ee(e)||Ae(e)){l=new Array(e.length);for(let r=0,s=e.length;rt(r,s,void 0,o));else{const r=Object.keys(e);l=new Array(r.length);for(let s=0,a=r.length;sSi(t)?!(t.type===Ge||t.type===ye&&!os(t.children)):!0)?e:null}const vl=e=>e?_s(e)?ji(e)||e.proxy:vl(e.parent):null,Ln=Le(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>vl(e.parent),$root:e=>vl(e.root),$emit:e=>e.emit,$options:e=>Bl(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Mi(e.update)}),$nextTick:e=>e.n||(e.n=bn.bind(e.proxy)),$watch:e=>mc.bind(e)}),Zi=(e,t)=>e!==_e&&!e.__isScriptSetup&&he(e,t),Rc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:i,data:l,props:o,accessCache:r,type:s,appContext:a}=e;let c;if(t[0]!=="$"){const p=r[t];if(p!==void 0)switch(p){case 1:return i[t];case 2:return l[t];case 4:return n[t];case 3:return o[t]}else{if(Zi(i,t))return r[t]=1,i[t];if(l!==_e&&he(l,t))return r[t]=2,l[t];if((c=e.propsOptions[0])&&he(c,t))return r[t]=3,o[t];if(n!==_e&&he(n,t))return r[t]=4,n[t];bl&&(r[t]=0)}}const u=Ln[t];let d,h;if(u)return t==="$attrs"&&Qe(e.attrs,"get",""),u(e);if((d=s.__cssModules)&&(d=d[t]))return d;if(n!==_e&&he(n,t))return r[t]=4,n[t];if(h=a.config.globalProperties,he(h,t))return h[t]},set({_:e},t,n){const{data:i,setupState:l,ctx:o}=e;return Zi(l,t)?(l[t]=n,!0):i!==_e&&he(i,t)?(i[t]=n,!0):he(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:i,appContext:l,propsOptions:o}},r){let s;return!!n[r]||e!==_e&&he(e,r)||Zi(t,r)||(s=o[0])&&he(s,r)||he(i,r)||he(Ln,r)||he(l.config.globalProperties,r)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:he(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function ko(e){return ee(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let bl=!0;function Ic(e){const t=Bl(e),n=e.proxy,i=e.ctx;bl=!1,t.beforeCreate&&_o(t.beforeCreate,e,"bc");const{data:l,computed:o,methods:r,watch:s,provide:a,inject:c,created:u,beforeMount:d,mounted:h,beforeUpdate:p,updated:v,activated:k,deactivated:A,beforeDestroy:x,beforeUnmount:C,destroyed:m,unmounted:w,render:H,renderTracked:I,renderTriggered:$,errorCaptured:b,serverPrefetch:K,expose:T,inheritAttrs:W,components:_,directives:N,filters:te}=t;if(c&&Oc(c,i,null),r)for(const Y in r){const U=r[Y];oe(U)&&(i[Y]=U.bind(n))}if(l){const Y=l.call(n,n);ke(Y)&&(e.data=Kn(Y))}if(bl=!0,o)for(const Y in o){const U=o[Y],Ie=oe(U)?U.bind(n,n):oe(U.get)?U.get.bind(n,n):et,$e=!oe(U)&&oe(U.set)?U.set.bind(n):et,Ue=O({get:Ie,set:$e});Object.defineProperty(i,Y,{enumerable:!0,configurable:!0,get:()=>Ue.value,set:je=>Ue.value=je})}if(s)for(const Y in s)rs(s[Y],i,n,Y);if(a){const Y=oe(a)?a.call(n):a;Reflect.ownKeys(Y).forEach(U=>{en(U,Y[U])})}u&&_o(u,e,"c");function R(Y,U){ee(U)?U.forEach(Ie=>Y(Ie.bind(n))):U&&Y(U.bind(n))}if(R(Ec,d),R(We,h),R(Cc,p),R(Sc,v),R(_c,k),R(wc,A),R(Pc,b),R(Ac,I),R(Lc,$),R($i,C),R(Fi,w),R(Tc,K),ee(T))if(T.length){const Y=e.exposed||(e.exposed={});T.forEach(U=>{Object.defineProperty(Y,U,{get:()=>n[U],set:Ie=>n[U]=Ie})})}else e.exposed||(e.exposed={});H&&e.render===et&&(e.render=H),W!=null&&(e.inheritAttrs=W),_&&(e.components=_),N&&(e.directives=N)}function Oc(e,t,n=et){ee(e)&&(e=yl(e));for(const i in e){const l=e[i];let o;ke(l)?"default"in l?o=Ve(l.from||i,l.default,!0):o=Ve(l.from||i):o=Ve(l),He(o)?Object.defineProperty(t,i,{enumerable:!0,configurable:!0,get:()=>o.value,set:r=>o.value=r}):t[i]=o}}function _o(e,t,n){tt(ee(e)?e.map(i=>i.bind(t.proxy)):e.bind(t.proxy),t,n)}function rs(e,t,n,i){const l=i.includes(".")?es(n,i):()=>n[i];if(Ae(e)){const o=t[e];oe(o)&&Fe(l,o)}else if(oe(e))Fe(l,e.bind(n));else if(ke(e))if(ee(e))e.forEach(o=>rs(o,t,n,i));else{const o=oe(e.handler)?e.handler.bind(n):t[e.handler];oe(o)&&Fe(l,o,e)}}function Bl(e){const t=e.type,{mixins:n,extends:i}=t,{mixins:l,optionsCache:o,config:{optionMergeStrategies:r}}=e.appContext,s=o.get(t);let a;return s?a=s:!l.length&&!n&&!i?a=t:(a={},l.length&&l.forEach(c=>Ei(a,c,r,!0)),Ei(a,t,r)),ke(t)&&o.set(t,a),a}function Ei(e,t,n,i=!1){const{mixins:l,extends:o}=t;o&&Ei(e,o,n,!0),l&&l.forEach(r=>Ei(e,r,n,!0));for(const r in t)if(!(i&&r==="expose")){const s=Mc[r]||n&&n[r];e[r]=s?s(e[r],t[r]):t[r]}return e}const Mc={data:wo,props:xo,emits:xo,methods:En,computed:En,beforeCreate:Be,created:Be,beforeMount:Be,mounted:Be,beforeUpdate:Be,updated:Be,beforeDestroy:Be,beforeUnmount:Be,destroyed:Be,unmounted:Be,activated:Be,deactivated:Be,errorCaptured:Be,serverPrefetch:Be,components:En,directives:En,watch:Nc,provide:wo,inject:Dc};function wo(e,t){return t?e?function(){return Le(oe(e)?e.call(this,this):e,oe(t)?t.call(this,this):t)}:t:e}function Dc(e,t){return En(yl(e),yl(t))}function yl(e){if(ee(e)){const t={};for(let n=0;n1)return n&&oe(t)?t.call(i&&i.proxy):t}}const as={},cs=()=>Object.create(as),us=e=>Object.getPrototypeOf(e)===as;function Hc(e,t,n,i=!1){const l={},o=cs();e.propsDefaults=Object.create(null),ds(e,t,l,o);for(const r in e.propsOptions[0])r in l||(l[r]=void 0);n?e.props=i?l:zr(l):e.type.props?e.props=l:e.props=o,e.attrs=o}function jc(e,t,n,i){const{props:l,attrs:o,vnode:{patchFlag:r}}=e,s=fe(l),[a]=e.propsOptions;let c=!1;if((i||r>0)&&!(r&16)){if(r&8){const u=e.vnode.dynamicProps;for(let d=0;d{a=!0;const[h,p]=hs(d,t,!0);Le(r,h),p&&s.push(...p)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!o&&!a)return ke(e)&&i.set(e,an),an;if(ee(o))for(let u=0;u-1,p[1]=k<0||v-1||he(p,"default"))&&s.push(d)}}}const c=[r,s];return ke(e)&&i.set(e,c),c}function Eo(e){return e[0]!=="$"&&!un(e)}function Co(e){return e===null?"null":typeof e=="function"?e.name||"":typeof e=="object"&&e.constructor&&e.constructor.name||""}function So(e,t){return Co(e)===Co(t)}function To(e,t){return ee(t)?t.findIndex(n=>So(n,e)):oe(t)&&So(t,e)?0:-1}const fs=e=>e[0]==="_"||e==="$stable",Vl=e=>ee(e)?e.map(lt):[lt(e)],zc=(e,t,n)=>{if(t._n)return t;const i=Te((...l)=>Vl(t(...l)),n);return i._c=!1,i},gs=(e,t,n)=>{const i=e._ctx;for(const l in e){if(fs(l))continue;const o=e[l];if(oe(o))t[l]=zc(l,o,i);else if(o!=null){const r=Vl(o);t[l]=()=>r}}},ps=(e,t)=>{const n=Vl(t);e.slots.default=()=>n},Bc=(e,t)=>{const n=e.slots=cs();if(e.vnode.shapeFlag&32){const i=t._;i?(Le(n,t),Cr(n,"_",i,!0)):gs(t,n)}else t&&ps(e,t)},Vc=(e,t,n)=>{const{vnode:i,slots:l}=e;let o=!0,r=_e;if(i.shapeFlag&32){const s=t._;s?n&&s===1?o=!1:(Le(l,t),!n&&s===1&&delete l._):(o=!t.$stable,gs(t,l)),r=t}else t&&(ps(e,t),r={default:1});if(o)for(const s in l)!fs(s)&&r[s]==null&&delete l[s]};function Ci(e,t,n,i,l=!1){if(ee(e)){e.forEach((h,p)=>Ci(h,t&&(ee(t)?t[p]:t),n,i,l));return}if(hn(i)&&!l)return;const o=i.shapeFlag&4?ji(i.component)||i.component.proxy:i.el,r=l?null:o,{i:s,r:a}=e,c=t&&t.r,u=s.refs===_e?s.refs={}:s.refs,d=s.setupState;if(c!=null&&c!==a&&(Ae(c)?(u[c]=null,he(d,c)&&(d[c]=null)):He(c)&&(c.value=null)),oe(a))Nt(a,s,12,[r,u]);else{const h=Ae(a),p=He(a);if(h||p){const v=()=>{if(e.f){const k=h?he(d,a)?d[a]:u[a]:a.value;l?ee(k)&&Al(k,o):ee(k)?k.includes(o)||k.push(o):h?(u[a]=[o],he(d,a)&&(d[a]=u[a])):(a.value=[o],e.k&&(u[e.k]=a.value))}else h?(u[a]=r,he(d,a)&&(d[a]=r)):p&&(a.value=r,e.k&&(u[e.k]=r))};r?(v.id=-1,qe(v,n)):v()}}}let Tt=!1;const Wc=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",Uc=e=>e.namespaceURI.includes("MathML"),ci=e=>{if(Wc(e))return"svg";if(Uc(e))return"mathml"},ui=e=>e.nodeType===8;function qc(e){const{mt:t,p:n,o:{patchProp:i,createText:l,nextSibling:o,parentNode:r,remove:s,insert:a,createComment:c}}=e,u=(m,w)=>{if(!w.hasChildNodes()){n(null,m,w),_i(),w._vnode=m;return}Tt=!1,d(w.firstChild,m,null,null,null),_i(),w._vnode=m,Tt&&console.error("Hydration completed but contains mismatches.")},d=(m,w,H,I,$,b=!1)=>{b=b||!!w.dynamicChildren;const K=ui(m)&&m.data==="[",T=()=>k(m,w,H,I,$,K),{type:W,ref:_,shapeFlag:N,patchFlag:te}=w;let se=m.nodeType;w.el=m,te===-2&&(b=!1,w.dynamicChildren=null);let R=null;switch(W){case gn:se!==3?w.children===""?(a(w.el=l(""),r(m),m),R=m):R=T():(m.data!==w.children&&(Tt=!0,m.data=w.children),R=o(m));break;case Ge:C(m)?(R=o(m),x(w.el=m.content.firstChild,m,H)):se!==8||K?R=T():R=o(m);break;case Pn:if(K&&(m=o(m),se=m.nodeType),se===1||se===3){R=m;const Y=!w.children.length;for(let U=0;U{b=b||!!w.dynamicChildren;const{type:K,props:T,patchFlag:W,shapeFlag:_,dirs:N,transition:te}=w,se=K==="input"||K==="option";if(se||W!==-1){N&&dt(w,null,H,"created");let R=!1;if(C(m)){R=ms(I,te)&&H&&H.vnode.props&&H.vnode.props.appear;const U=m.content.firstChild;R&&te.beforeEnter(U),x(U,m,H),w.el=m=U}if(_&16&&!(T&&(T.innerHTML||T.textContent))){let U=p(m.firstChild,w,m,H,I,$,b);for(;U;){Tt=!0;const Ie=U;U=U.nextSibling,s(Ie)}}else _&8&&m.textContent!==w.children&&(Tt=!0,m.textContent=w.children);if(T)if(se||!b||W&48)for(const U in T)(se&&(U.endsWith("value")||U==="indeterminate")||Un(U)&&!un(U)||U[0]===".")&&i(m,U,null,T[U],void 0,void 0,H);else T.onClick&&i(m,"onClick",null,T.onClick,void 0,void 0,H);let Y;(Y=T&&T.onVnodeBeforeMount)&&Ze(Y,H,w),N&&dt(w,null,H,"beforeMount"),((Y=T&&T.onVnodeMounted)||N||R)&&Zr(()=>{Y&&Ze(Y,H,w),R&&te.enter(m),N&&dt(w,null,H,"mounted")},I)}return m.nextSibling},p=(m,w,H,I,$,b,K)=>{K=K||!!w.dynamicChildren;const T=w.children,W=T.length;for(let _=0;_{const{slotScopeIds:K}=w;K&&($=$?$.concat(K):K);const T=r(m),W=p(o(m),w,T,H,I,$,b);return W&&ui(W)&&W.data==="]"?o(w.anchor=W):(Tt=!0,a(w.anchor=c("]"),T,W),W)},k=(m,w,H,I,$,b)=>{if(Tt=!0,w.el=null,b){const W=A(m);for(;;){const _=o(m);if(_&&_!==W)s(_);else break}}const K=o(m),T=r(m);return s(m),n(null,w,T,K,H,I,ci(T),$),K},A=(m,w="[",H="]")=>{let I=0;for(;m;)if(m=o(m),m&&ui(m)&&(m.data===w&&I++,m.data===H)){if(I===0)return o(m);I--}return m},x=(m,w,H)=>{const I=w.parentNode;I&&I.replaceChild(m,w);let $=H;for(;$;)$.vnode.el===w&&($.vnode.el=$.subTree.el=m),$=$.parent},C=m=>m.nodeType===1&&m.tagName.toLowerCase()==="template";return[u,d]}const qe=Zr;function Gc(e){return Kc(e,qc)}function Kc(e,t){const n=Sr();n.__VUE__=!0;const{insert:i,remove:l,patchProp:o,createElement:r,createText:s,createComment:a,setText:c,setElementText:u,parentNode:d,nextSibling:h,setScopeId:p=et,insertStaticContent:v}=e,k=(f,g,y,L=null,E=null,M=null,z=void 0,D=null,F=!!g.dynamicChildren)=>{if(f===g)return;f&&!Qt(f,g)&&(L=S(f),je(f,E,M,!0),f=null),g.patchFlag===-2&&(F=!1,g.dynamicChildren=null);const{type:P,ref:q,shapeFlag:X}=g;switch(P){case gn:A(f,g,y,L);break;case Ge:x(f,g,y,L);break;case Pn:f==null&&C(g,y,L,z);break;case ye:_(f,g,y,L,E,M,z,D,F);break;default:X&1?H(f,g,y,L,E,M,z,D,F):X&6?N(f,g,y,L,E,M,z,D,F):(X&64||X&128)&&P.process(f,g,y,L,E,M,z,D,F,G)}q!=null&&E&&Ci(q,f&&f.ref,M,g||f,!g)},A=(f,g,y,L)=>{if(f==null)i(g.el=s(g.children),y,L);else{const E=g.el=f.el;g.children!==f.children&&c(E,g.children)}},x=(f,g,y,L)=>{f==null?i(g.el=a(g.children||""),y,L):g.el=f.el},C=(f,g,y,L)=>{[f.el,f.anchor]=v(f.children,g,y,L,f.el,f.anchor)},m=({el:f,anchor:g},y,L)=>{let E;for(;f&&f!==g;)E=h(f),i(f,y,L),f=E;i(g,y,L)},w=({el:f,anchor:g})=>{let y;for(;f&&f!==g;)y=h(f),l(f),f=y;l(g)},H=(f,g,y,L,E,M,z,D,F)=>{g.type==="svg"?z="svg":g.type==="math"&&(z="mathml"),f==null?I(g,y,L,E,M,z,D,F):K(f,g,E,M,z,D,F)},I=(f,g,y,L,E,M,z,D)=>{let F,P;const{props:q,shapeFlag:X,transition:J,dirs:le}=f;if(F=f.el=r(f.type,M,q&&q.is,q),X&8?u(F,f.children):X&16&&b(f.children,F,null,L,E,el(f,M),z,D),le&&dt(f,null,L,"created"),$(F,f,f.scopeId,z,L),q){for(const be in q)be!=="value"&&!un(be)&&o(F,be,null,q[be],M,f.children,L,E,Oe);"value"in q&&o(F,"value",null,q.value,M),(P=q.onVnodeBeforeMount)&&Ze(P,L,f)}le&&dt(f,null,L,"beforeMount");const ce=ms(E,J);ce&&J.beforeEnter(F),i(F,g,y),((P=q&&q.onVnodeMounted)||ce||le)&&qe(()=>{P&&Ze(P,L,f),ce&&J.enter(F),le&&dt(f,null,L,"mounted")},E)},$=(f,g,y,L,E)=>{if(y&&p(f,y),L)for(let M=0;M{for(let P=F;P{const D=g.el=f.el;let{patchFlag:F,dynamicChildren:P,dirs:q}=g;F|=f.patchFlag&16;const X=f.props||_e,J=g.props||_e;let le;if(y&&Vt(y,!1),(le=J.onVnodeBeforeUpdate)&&Ze(le,y,g,f),q&&dt(g,f,y,"beforeUpdate"),y&&Vt(y,!0),P?T(f.dynamicChildren,P,D,y,L,el(g,E),M):z||U(f,g,D,null,y,L,el(g,E),M,!1),F>0){if(F&16)W(D,g,X,J,y,L,E);else if(F&2&&X.class!==J.class&&o(D,"class",null,J.class,E),F&4&&o(D,"style",X.style,J.style,E),F&8){const ce=g.dynamicProps;for(let be=0;be{le&&Ze(le,y,g,f),q&&dt(g,f,y,"updated")},L)},T=(f,g,y,L,E,M,z)=>{for(let D=0;D{if(y!==L){if(y!==_e)for(const D in y)!un(D)&&!(D in L)&&o(f,D,y[D],null,z,g.children,E,M,Oe);for(const D in L){if(un(D))continue;const F=L[D],P=y[D];F!==P&&D!=="value"&&o(f,D,P,F,z,g.children,E,M,Oe)}"value"in L&&o(f,"value",y.value,L.value,z)}},_=(f,g,y,L,E,M,z,D,F)=>{const P=g.el=f?f.el:s(""),q=g.anchor=f?f.anchor:s("");let{patchFlag:X,dynamicChildren:J,slotScopeIds:le}=g;le&&(D=D?D.concat(le):le),f==null?(i(P,y,L),i(q,y,L),b(g.children||[],y,q,E,M,z,D,F)):X>0&&X&64&&J&&f.dynamicChildren?(T(f.dynamicChildren,J,y,E,M,z,D),(g.key!=null||E&&g===E.subTree)&&vs(f,g,!0)):U(f,g,y,q,E,M,z,D,F)},N=(f,g,y,L,E,M,z,D,F)=>{g.slotScopeIds=D,f==null?g.shapeFlag&512?E.ctx.activate(g,y,L,z,F):te(g,y,L,E,M,z,F):se(f,g,F)},te=(f,g,y,L,E,M,z)=>{const D=f.component=lu(f,L,E);if(Jn(f)&&(D.ctx.renderer=G),ou(D),D.asyncDep){if(E&&E.registerDep(D,R),!f.el){const F=D.subTree=re(Ge);x(null,F,g,y)}}else R(D,f,g,y,E,M,z)},se=(f,g,y)=>{const L=g.component=f.component;if(ac(f,g,y))if(L.asyncDep&&!L.asyncResolved){Y(L,g,y);return}else L.next=g,nc(L.update),L.effect.dirty=!0,L.update();else g.el=f.el,L.vnode=g},R=(f,g,y,L,E,M,z)=>{const D=()=>{if(f.isMounted){let{next:q,bu:X,u:J,parent:le,vnode:ce}=f;{const on=bs(f);if(on){q&&(q.el=ce.el,Y(f,q,z)),on.asyncDep.then(()=>{f.isUnmounted||D()});return}}let be=q,we;Vt(f,!1),q?(q.el=ce.el,Y(f,q,z)):q=ce,X&&Ki(X),(we=q.props&&q.props.onVnodeBeforeUpdate)&&Ze(we,le,q,ce),Vt(f,!0);const Me=Yi(f),it=f.subTree;f.subTree=Me,k(it,Me,d(it.el),S(it),f,E,M),q.el=Me.el,be===null&&cc(f,Me.el),J&&qe(J,E),(we=q.props&&q.props.onVnodeUpdated)&&qe(()=>Ze(we,le,q,ce),E)}else{let q;const{el:X,props:J}=g,{bm:le,m:ce,parent:be}=f,we=hn(g);if(Vt(f,!1),le&&Ki(le),!we&&(q=J&&J.onVnodeBeforeMount)&&Ze(q,be,g),Vt(f,!0),X&&ve){const Me=()=>{f.subTree=Yi(f),ve(X,f.subTree,f,E,null)};we?g.type.__asyncLoader().then(()=>!f.isUnmounted&&Me()):Me()}else{const Me=f.subTree=Yi(f);k(null,Me,y,L,f,E,M),g.el=Me.el}if(ce&&qe(ce,E),!we&&(q=J&&J.onVnodeMounted)){const Me=g;qe(()=>Ze(q,be,Me),E)}(g.shapeFlag&256||be&&hn(be.vnode)&&be.vnode.shapeFlag&256)&&f.a&&qe(f.a,E),f.isMounted=!0,g=y=L=null}},F=f.effect=new Rl(D,et,()=>Mi(P),f.scope),P=f.update=()=>{F.dirty&&F.run()};P.id=f.uid,Vt(f,!0),P()},Y=(f,g,y)=>{g.component=f;const L=f.vnode.props;f.vnode=g,f.next=null,jc(f,g.props,L,y),Vc(f,g.children,y),zt(),mo(f),Bt()},U=(f,g,y,L,E,M,z,D,F=!1)=>{const P=f&&f.children,q=f?f.shapeFlag:0,X=g.children,{patchFlag:J,shapeFlag:le}=g;if(J>0){if(J&128){$e(P,X,y,L,E,M,z,D,F);return}else if(J&256){Ie(P,X,y,L,E,M,z,D,F);return}}le&8?(q&16&&Oe(P,E,M),X!==P&&u(y,X)):q&16?le&16?$e(P,X,y,L,E,M,z,D,F):Oe(P,E,M,!0):(q&8&&u(y,""),le&16&&b(X,y,L,E,M,z,D,F))},Ie=(f,g,y,L,E,M,z,D,F)=>{f=f||an,g=g||an;const P=f.length,q=g.length,X=Math.min(P,q);let J;for(J=0;Jq?Oe(f,E,M,!0,!1,X):b(g,y,L,E,M,z,D,F,X)},$e=(f,g,y,L,E,M,z,D,F)=>{let P=0;const q=g.length;let X=f.length-1,J=q-1;for(;P<=X&&P<=J;){const le=f[P],ce=g[P]=F?It(g[P]):lt(g[P]);if(Qt(le,ce))k(le,ce,y,null,E,M,z,D,F);else break;P++}for(;P<=X&&P<=J;){const le=f[X],ce=g[J]=F?It(g[J]):lt(g[J]);if(Qt(le,ce))k(le,ce,y,null,E,M,z,D,F);else break;X--,J--}if(P>X){if(P<=J){const le=J+1,ce=leJ)for(;P<=X;)je(f[P],E,M,!0),P++;else{const le=P,ce=P,be=new Map;for(P=ce;P<=J;P++){const Ye=g[P]=F?It(g[P]):lt(g[P]);Ye.key!=null&&be.set(Ye.key,P)}let we,Me=0;const it=J-ce+1;let on=!1,lo=0;const yn=new Array(it);for(P=0;P=it){je(Ye,E,M,!0);continue}let ut;if(Ye.key!=null)ut=be.get(Ye.key);else for(we=ce;we<=J;we++)if(yn[we-ce]===0&&Qt(Ye,g[we])){ut=we;break}ut===void 0?je(Ye,E,M,!0):(yn[ut-ce]=P+1,ut>=lo?lo=ut:on=!0,k(Ye,g[ut],y,null,E,M,z,D,F),Me++)}const oo=on?Qc(yn):an;for(we=oo.length-1,P=it-1;P>=0;P--){const Ye=ce+P,ut=g[Ye],ro=Ye+1{const{el:M,type:z,transition:D,children:F,shapeFlag:P}=f;if(P&6){Ue(f.component.subTree,g,y,L);return}if(P&128){f.suspense.move(g,y,L);return}if(P&64){z.move(f,g,y,G);return}if(z===ye){i(M,g,y);for(let X=0;XD.enter(M),E);else{const{leave:X,delayLeave:J,afterLeave:le}=D,ce=()=>i(M,g,y),be=()=>{X(M,()=>{ce(),le&&le()})};J?J(M,ce,be):be()}else i(M,g,y)},je=(f,g,y,L=!1,E=!1)=>{const{type:M,props:z,ref:D,children:F,dynamicChildren:P,shapeFlag:q,patchFlag:X,dirs:J}=f;if(D!=null&&Ci(D,null,y,f,!0),q&256){g.ctx.deactivate(f);return}const le=q&1&&J,ce=!hn(f);let be;if(ce&&(be=z&&z.onVnodeBeforeUnmount)&&Ze(be,g,f),q&6)ct(f.component,y,L);else{if(q&128){f.suspense.unmount(y,L);return}le&&dt(f,null,g,"beforeUnmount"),q&64?f.type.remove(f,g,y,E,G,L):P&&(M!==ye||X>0&&X&64)?Oe(P,g,y,!1,!0):(M===ye&&X&384||!E&&q&16)&&Oe(F,g,y),L&&Et(f)}(ce&&(be=z&&z.onVnodeUnmounted)||le)&&qe(()=>{be&&Ze(be,g,f),le&&dt(f,null,g,"unmounted")},y)},Et=f=>{const{type:g,el:y,anchor:L,transition:E}=f;if(g===ye){Ct(y,L);return}if(g===Pn){w(f);return}const M=()=>{l(y),E&&!E.persisted&&E.afterLeave&&E.afterLeave()};if(f.shapeFlag&1&&E&&!E.persisted){const{leave:z,delayLeave:D}=E,F=()=>z(y,M);D?D(f.el,M,F):F()}else M()},Ct=(f,g)=>{let y;for(;f!==g;)y=h(f),l(f),f=y;l(g)},ct=(f,g,y)=>{const{bum:L,scope:E,update:M,subTree:z,um:D}=f;L&&Ki(L),E.stop(),M&&(M.active=!1,je(z,f,g,y)),D&&qe(D,g),qe(()=>{f.isUnmounted=!0},g),g&&g.pendingBranch&&!g.isUnmounted&&f.asyncDep&&!f.asyncResolved&&f.suspenseId===g.pendingId&&(g.deps--,g.deps===0&&g.resolve())},Oe=(f,g,y,L=!1,E=!1,M=0)=>{for(let z=M;zf.shapeFlag&6?S(f.component.subTree):f.shapeFlag&128?f.suspense.next():h(f.anchor||f.el);let B=!1;const j=(f,g,y)=>{f==null?g._vnode&&je(g._vnode,null,null,!0):k(g._vnode||null,f,g,null,null,null,y),B||(B=!0,mo(),_i(),B=!1),g._vnode=f},G={p:k,um:je,m:Ue,r:Et,mt:te,mc:b,pc:U,pbc:T,n:S,o:e};let ue,ve;return t&&([ue,ve]=t(G)),{render:j,hydrate:ue,createApp:Fc(j,ue)}}function el({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Vt({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function ms(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function vs(e,t,n=!1){const i=e.children,l=t.children;if(ee(i)&&ee(l))for(let o=0;o>1,e[n[s]]0&&(t[i]=n[o-1]),n[o]=i)}}for(o=n.length,r=n[o-1];o-- >0;)n[o]=r,r=t[r];return n}function bs(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:bs(t)}const Yc=e=>e.__isTeleport,ye=Symbol.for("v-fgt"),gn=Symbol.for("v-txt"),Ge=Symbol.for("v-cmt"),Pn=Symbol.for("v-stc"),Rn=[];let ot=null;function V(e=!1){Rn.push(ot=e?null:[])}function Jc(){Rn.pop(),ot=Rn[Rn.length-1]||null}let Fn=1;function Lo(e){Fn+=e}function ys(e){return e.dynamicChildren=Fn>0?ot||an:null,Jc(),Fn>0&&ot&&ot.push(e),e}function Z(e,t,n,i,l,o){return ys(ie(e,t,n,i,l,o,!0))}function Se(e,t,n,i,l){return ys(re(e,t,n,i,l,!0))}function Si(e){return e?e.__v_isVNode===!0:!1}function Qt(e,t){return e.type===t.type&&e.key===t.key}const ks=({key:e})=>e??null,mi=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Ae(e)||He(e)||oe(e)?{i:Pe,r:e,k:t,f:!!n}:e:null);function ie(e,t=null,n=null,i=0,l=null,o=e===ye?0:1,r=!1,s=!1){const a={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ks(t),ref:t&&mi(t),scopeId:Jr,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:i,dynamicProps:l,dynamicChildren:null,appContext:null,ctx:Pe};return s?(Wl(a,n),o&128&&e.normalize(a)):n&&(a.shapeFlag|=Ae(n)?8:16),Fn>0&&!r&&ot&&(a.patchFlag>0||o&6)&&a.patchFlag!==32&&ot.push(a),a}const re=Xc;function Xc(e,t=null,n=null,i=0,l=null,o=!1){if((!e||e===uc)&&(e=Ge),Si(e)){const s=Ht(e,t,!0);return n&&Wl(s,n),Fn>0&&!o&&ot&&(s.shapeFlag&6?ot[ot.indexOf(e)]=s:ot.push(s)),s.patchFlag|=-2,s}if(uu(e)&&(e=e.__vccOpts),t){t=Zc(t);let{class:s,style:a}=t;s&&!Ae(s)&&(t.class=Ke(s)),ke(a)&&(Br(a)&&!ee(a)&&(a=Le({},a)),t.style=Gn(a))}const r=Ae(e)?1:hc(e)?128:Yc(e)?64:ke(e)?4:oe(e)?2:0;return ie(e,t,n,i,l,r,o,!0)}function Zc(e){return e?Br(e)||us(e)?Le({},e):e:null}function Ht(e,t,n=!1,i=!1){const{props:l,ref:o,patchFlag:r,children:s,transition:a}=e,c=t?tu(l||{},t):l,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&ks(c),ref:t&&t.ref?n&&o?ee(o)?o.concat(mi(t)):[o,mi(t)]:mi(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ye?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:a,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ht(e.ssContent),ssFallback:e.ssFallback&&Ht(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return a&&i&&(u.transition=a.clone(u)),u}function gt(e=" ",t=0){return re(gn,null,e,t)}function eu(e,t){const n=re(Pn,null,e);return n.staticCount=t,n}function Re(e="",t=!1){return t?(V(),Se(Ge,null,e)):re(Ge,null,e)}function lt(e){return e==null||typeof e=="boolean"?re(Ge):ee(e)?re(ye,null,e.slice()):typeof e=="object"?It(e):re(gn,null,String(e))}function It(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ht(e)}function Wl(e,t){let n=0;const{shapeFlag:i}=e;if(t==null)t=null;else if(ee(t))n=16;else if(typeof t=="object")if(i&65){const l=t.default;l&&(l._c&&(l._d=!1),Wl(e,l()),l._c&&(l._d=!0));return}else{n=32;const l=t._;!l&&!us(t)?t._ctx=Pe:l===3&&Pe&&(Pe.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else oe(t)?(t={default:t,_ctx:Pe},n=32):(t=String(t),i&64?(n=16,t=[gt(t)]):n=8);e.children=t,e.shapeFlag|=n}function tu(...e){const t={};for(let n=0;nDe||Pe;let Ti,_l;{const e=Sr(),t=(n,i)=>{let l;return(l=e[n])||(l=e[n]=[]),l.push(i),o=>{l.length>1?l.forEach(r=>r(o)):l[0](o)}};Ti=t("__VUE_INSTANCE_SETTERS__",n=>De=n),_l=t("__VUE_SSR_SETTERS__",n=>Zn=n)}const Xn=e=>{const t=De;return Ti(e),e.scope.on(),()=>{e.scope.off(),Ti(t)}},Ao=()=>{De&&De.scope.off(),Ti(null)};function _s(e){return e.vnode.shapeFlag&4}let Zn=!1;function ou(e,t=!1){t&&_l(t);const{props:n,children:i}=e.vnode,l=_s(e);Hc(e,n,l,t),Bc(e,i);const o=l?ru(e,t):void 0;return t&&_l(!1),o}function ru(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Rc);const{setup:i}=n;if(i){const l=e.setupContext=i.length>1?au(e):null,o=Xn(e);zt();const r=Nt(i,e,0,[e.props,l]);if(Bt(),o(),wr(r)){if(r.then(Ao,Ao),t)return r.then(s=>{Po(e,s,t)}).catch(s=>{Qn(s,e,0)});e.asyncDep=r}else Po(e,r,t)}else ws(e,t)}function Po(e,t,n){oe(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ke(t)&&(e.setupState=Ur(t)),ws(e,n)}let Ro;function ws(e,t,n){const i=e.type;if(!e.render){if(!t&&Ro&&!i.render){const l=i.template||Bl(e).template;if(l){const{isCustomElement:o,compilerOptions:r}=e.appContext.config,{delimiters:s,compilerOptions:a}=i,c=Le(Le({isCustomElement:o,delimiters:s},r),a);i.render=Ro(l,c)}}e.render=i.render||et}{const l=Xn(e);zt();try{Ic(e)}finally{Bt(),l()}}}const su={get(e,t){return Qe(e,"get",""),e[t]}};function au(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,su),slots:e.slots,emit:e.emit,expose:t}}function ji(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy(Ur(Ua(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Ln)return Ln[n](e)},has(t,n){return n in t||n in Ln}}))}function cu(e,t=!0){return oe(e)?e.displayName||e.name:e.name||t&&e.__name}function uu(e){return oe(e)&&"__vccOpts"in e}const O=(e,t)=>qa(e,t,Zn);function ge(e,t,n){const i=arguments.length;return i===2?ke(t)&&!ee(t)?Si(t)?re(e,null,[t]):re(e,t):re(e,null,t):(i>3?n=Array.prototype.slice.call(arguments,2):i===3&&Si(n)&&(n=[n]),re(e,t,n))}const du="3.4.27";/** +* @vue/runtime-dom v3.4.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const hu="http://www.w3.org/2000/svg",fu="http://www.w3.org/1998/Math/MathML",Ot=typeof document<"u"?document:null,Io=Ot&&Ot.createElement("template"),gu={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,i)=>{const l=t==="svg"?Ot.createElementNS(hu,e):t==="mathml"?Ot.createElementNS(fu,e):Ot.createElement(e,n?{is:n}:void 0);return e==="select"&&i&&i.multiple!=null&&l.setAttribute("multiple",i.multiple),l},createText:e=>Ot.createTextNode(e),createComment:e=>Ot.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ot.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,i,l,o){const r=n?n.previousSibling:t.lastChild;if(l&&(l===o||l.nextSibling))for(;t.insertBefore(l.cloneNode(!0),n),!(l===o||!(l=l.nextSibling)););else{Io.innerHTML=i==="svg"?`${e}`:i==="mathml"?`${e}`:e;const s=Io.content;if(i==="svg"||i==="mathml"){const a=s.firstChild;for(;a.firstChild;)s.appendChild(a.firstChild);s.removeChild(a)}t.insertBefore(s,n)}return[r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Lt="transition",kn="animation",Hn=Symbol("_vtc"),ei=(e,{slots:t})=>ge(yc,pu(e),t);ei.displayName="Transition";const xs={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};ei.props=Le({},ts,xs);const Wt=(e,t=[])=>{ee(e)?e.forEach(n=>n(...t)):e&&e(...t)},Oo=e=>e?ee(e)?e.some(t=>t.length>1):e.length>1:!1;function pu(e){const t={};for(const _ in e)_ in xs||(t[_]=e[_]);if(e.css===!1)return t;const{name:n="v",type:i,duration:l,enterFromClass:o=`${n}-enter-from`,enterActiveClass:r=`${n}-enter-active`,enterToClass:s=`${n}-enter-to`,appearFromClass:a=o,appearActiveClass:c=r,appearToClass:u=s,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,v=mu(l),k=v&&v[0],A=v&&v[1],{onBeforeEnter:x,onEnter:C,onEnterCancelled:m,onLeave:w,onLeaveCancelled:H,onBeforeAppear:I=x,onAppear:$=C,onAppearCancelled:b=m}=t,K=(_,N,te)=>{Ut(_,N?u:s),Ut(_,N?c:r),te&&te()},T=(_,N)=>{_._isLeaving=!1,Ut(_,d),Ut(_,p),Ut(_,h),N&&N()},W=_=>(N,te)=>{const se=_?$:C,R=()=>K(N,_,te);Wt(se,[N,R]),Mo(()=>{Ut(N,_?a:o),At(N,_?u:s),Oo(se)||Do(N,i,k,R)})};return Le(t,{onBeforeEnter(_){Wt(x,[_]),At(_,o),At(_,r)},onBeforeAppear(_){Wt(I,[_]),At(_,a),At(_,c)},onEnter:W(!1),onAppear:W(!0),onLeave(_,N){_._isLeaving=!0;const te=()=>T(_,N);At(_,d),At(_,h),yu(),Mo(()=>{_._isLeaving&&(Ut(_,d),At(_,p),Oo(w)||Do(_,i,A,te))}),Wt(w,[_,te])},onEnterCancelled(_){K(_,!1),Wt(m,[_])},onAppearCancelled(_){K(_,!0),Wt(b,[_])},onLeaveCancelled(_){T(_),Wt(H,[_])}})}function mu(e){if(e==null)return null;if(ke(e))return[tl(e.enter),tl(e.leave)];{const t=tl(e);return[t,t]}}function tl(e){return pa(e)}function At(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Hn]||(e[Hn]=new Set)).add(t)}function Ut(e,t){t.split(/\s+/).forEach(i=>i&&e.classList.remove(i));const n=e[Hn];n&&(n.delete(t),n.size||(e[Hn]=void 0))}function Mo(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let vu=0;function Do(e,t,n,i){const l=e._endId=++vu,o=()=>{l===e._endId&&i()};if(n)return setTimeout(o,n);const{type:r,timeout:s,propCount:a}=bu(e,t);if(!r)return i();const c=r+"end";let u=0;const d=()=>{e.removeEventListener(c,h),o()},h=p=>{p.target===e&&++u>=a&&d()};setTimeout(()=>{u(n[v]||"").split(", "),l=i(`${Lt}Delay`),o=i(`${Lt}Duration`),r=No(l,o),s=i(`${kn}Delay`),a=i(`${kn}Duration`),c=No(s,a);let u=null,d=0,h=0;t===Lt?r>0&&(u=Lt,d=r,h=o.length):t===kn?c>0&&(u=kn,d=c,h=a.length):(d=Math.max(r,c),u=d>0?r>c?Lt:kn:null,h=u?u===Lt?o.length:a.length:0);const p=u===Lt&&/\b(transform|all)(,|$)/.test(i(`${Lt}Property`).toString());return{type:u,timeout:d,propCount:h,hasTransform:p}}function No(e,t){for(;e.length$o(n)+$o(e[i])))}function $o(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function yu(){return document.body.offsetHeight}function ku(e,t,n){const i=e[Hn];i&&(t=(t?[t,...i]:[...i]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Li=Symbol("_vod"),Es=Symbol("_vsh"),Ai={beforeMount(e,{value:t},{transition:n}){e[Li]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):_n(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:i}){!t!=!n&&(i?t?(i.beforeEnter(e),_n(e,!0),i.enter(e)):i.leave(e,()=>{_n(e,!1)}):_n(e,t))},beforeUnmount(e,{value:t}){_n(e,t)}};function _n(e,t){e.style.display=t?e[Li]:"none",e[Es]=!t}const _u=Symbol(""),wu=/(^|;)\s*display\s*:/;function xu(e,t,n){const i=e.style,l=Ae(n);let o=!1;if(n&&!l){if(t)if(Ae(t))for(const r of t.split(";")){const s=r.slice(0,r.indexOf(":")).trim();n[s]==null&&vi(i,s,"")}else for(const r in t)n[r]==null&&vi(i,r,"");for(const r in n)r==="display"&&(o=!0),vi(i,r,n[r])}else if(l){if(t!==n){const r=i[_u];r&&(n+=";"+r),i.cssText=n,o=wu.test(n)}}else t&&e.removeAttribute("style");Li in e&&(e[Li]=o?i.display:"",e[Es]&&(i.display="none"))}const Fo=/\s*!important$/;function vi(e,t,n){if(ee(n))n.forEach(i=>vi(e,t,i));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const i=Eu(e,t);Fo.test(n)?e.setProperty(nn(i),n.replace(Fo,""),"important"):e[i]=n}}const Ho=["Webkit","Moz","ms"],nl={};function Eu(e,t){const n=nl[t];if(n)return n;let i=nt(t);if(i!=="filter"&&i in e)return nl[t]=i;i=qn(i);for(let l=0;lil||(Ru.then(()=>il=0),il=Date.now());function Ou(e,t){const n=i=>{if(!i._vts)i._vts=Date.now();else if(i._vts<=n.attached)return;tt(Mu(i,n.value),t,5,[i])};return n.value=e,n.attached=Iu(),n}function Mu(e,t){if(ee(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(i=>l=>!l._stopped&&i&&i(l))}else return t}const Vo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Du=(e,t,n,i,l,o,r,s,a)=>{const c=l==="svg";t==="class"?ku(e,i,c):t==="style"?xu(e,n,i):Un(t)?Ll(t)||Au(e,t,n,i,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Nu(e,t,i,c))?Su(e,t,i,o,r,s,a):(t==="true-value"?e._trueValue=i:t==="false-value"&&(e._falseValue=i),Cu(e,t,i,c))};function Nu(e,t,n,i){if(i)return!!(t==="innerHTML"||t==="textContent"||t in e&&Vo(t)&&oe(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const l=e.tagName;if(l==="IMG"||l==="VIDEO"||l==="CANVAS"||l==="SOURCE")return!1}return Vo(t)&&Ae(n)?!1:t in e}const $u={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Fu=(e,t)=>{const n=e._withKeys||(e._withKeys={}),i=t.join(".");return n[i]||(n[i]=l=>{if(!("key"in l))return;const o=nn(l.key);if(t.some(r=>r===o||$u[r]===o))return e(l)})},Hu=Le({patchProp:Du},gu);let ll,Wo=!1;function ju(){return ll=Wo?ll:Gc(Hu),Wo=!0,ll}const zu=(...e)=>{const t=ju().createApp(...e),{mount:n}=t;return t.mount=i=>{const l=Vu(i);if(l)return n(l,!0,Bu(l))},t};function Bu(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Vu(e){return Ae(e)?document.querySelector(e):e}var Wu=["link","meta","script","style","noscript","template"],Uu=["title","base"],qu=([e,t,n])=>Uu.includes(e)?e:Wu.includes(e)?e==="meta"&&t.name?`${e}.${t.name}`:e==="template"&&t.id?`${e}.${t.id}`:JSON.stringify([e,Object.entries(t).map(([i,l])=>typeof l=="boolean"?l?[i,""]:null:[i,l]).filter(i=>i!=null).sort(([i],[l])=>i.localeCompare(l)),n]):null,Gu=e=>{const t=new Set,n=[];return e.forEach(i=>{const l=qu(i);l&&!t.has(l)&&(t.add(l),n.push(i))}),n},Uo=e=>{if(!e||e.endsWith("/"))return e;let t=e.replace(/(^|\/)README.md$/i,"$1index.html");return t.endsWith(".md")?t=t.substring(0,t.length-3)+".html":t.endsWith(".html")||(t=t+".html"),t.endsWith("/index.html")&&(t=t.substring(0,t.length-10)),t},Cs=e=>/^[a-z][a-z0-9+.-]*:/.test(e)||e.startsWith("//"),zi=e=>/^(https?:)?\/\//.test(e),Ul=e=>Object.prototype.toString.call(e)==="[object Object]",Ku="http://.",Qu=(e,t)=>{if(!e.startsWith("/")&&t){const l=t.slice(0,t.lastIndexOf("/")),{pathname:o,search:r,hash:s}=new URL(`${l}/${e}`,Ku);return Uo(o)+r+s}const[n,...i]=e.split(/(\?|#)/);return Uo(n)+i.join("")},Ss=e=>e[e.length-1]==="/"?e.slice(0,-1):e,Ts=e=>e[0]==="/"?e.slice(1):e,Ls=(e,t)=>{const n=Object.keys(e).sort((i,l)=>{const o=l.split("/").length-i.split("/").length;return o!==0?o:l.length-i.length});for(const i of n)if(t.startsWith(i))return i;return"/"},rt=e=>typeof e=="string";const Yu="modulepreload",Ju=function(e){return"/"+e},qo={},ne=function(t,n,i){let l=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),r=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));l=Promise.all(n.map(s=>{if(s=Ju(s),s in qo)return;qo[s]=!0;const a=s.endsWith(".css"),c=a?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${s}"]${c}`))return;const u=document.createElement("link");if(u.rel=a?"stylesheet":Yu,a||(u.as="script",u.crossOrigin=""),u.href=s,r&&u.setAttribute("nonce",r),document.head.appendChild(u),a)return new Promise((d,h)=>{u.addEventListener("load",d),u.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${s}`)))})}))}return l.then(()=>t()).catch(o=>{const r=new Event("vite:preloadError",{cancelable:!0});if(r.payload=o,window.dispatchEvent(r),!r.defaultPrevented)throw o})},Xu=JSON.parse("{}"),Zu=Object.fromEntries([["/",{loader:()=>ne(()=>import("./index.html-B_Sr65y4.js"),[]),meta:{title:"Home"}}],["/about/",{loader:()=>ne(()=>import("./index.html-Dm5tlExW.js"),[]),meta:{title:"Overview"}}],["/about/branding.html",{loader:()=>ne(()=>import("./branding.html-Cw6Z3OFd.js"),[]),meta:{title:"Branding"}}],["/about/citing-taxonworks.html",{loader:()=>ne(()=>import("./citing-taxonworks.html-DDur_T5C.js"),[]),meta:{title:"Citing TaxonWorks"}}],["/about/contact.html",{loader:()=>ne(()=>import("./contact.html-DcLCm-PO.js"),[]),meta:{title:"Contact"}}],["/about/events.html",{loader:()=>ne(()=>import("./events.html-BvhDNAz9.js"),[]),meta:{title:"Events"}}],["/about/glossary.html",{loader:()=>ne(()=>import("./glossary.html-h1YJcZRI.js"),[]),meta:{title:"Glossary"}}],["/develop/",{loader:()=>ne(()=>import("./index.html-GD_sZnvb.js"),[]),meta:{title:"The big picture"}}],["/develop/bug-reporting.html",{loader:()=>ne(()=>import("./bug-reporting.html-Bt1RegO0.js"),[]),meta:{title:"Bug reporting"}}],["/develop/coding.html",{loader:()=>ne(()=>import("./coding.html-4yeWtbKl.js"),[]),meta:{title:"Coding"}}],["/develop/contributing.html",{loader:()=>ne(()=>import("./contributing.html-fneavcB-.js"),[]),meta:{title:"Contributing"}}],["/develop/installation.html",{loader:()=>ne(()=>import("./installation.html-Dm117ntV.js"),[]),meta:{title:"Installation"}}],["/es/",{loader:()=>ne(()=>import("./index.html-Db11gV9a.js"),[]),meta:{title:"Inicio"}}],["/guide/",{loader:()=>ne(()=>import("./index.html-BaZZjf64.js"),[]),meta:{title:"The big picture"}}],["/guide/api.html",{loader:()=>ne(()=>import("./api.html-D3B5XnWH.js"),[]),meta:{title:"API"}}],["/guide/community-resources.html",{loader:()=>ne(()=>import("./community-resources.html-7VeJB79f.js"),[]),meta:{title:"Community Documentation"}}],["/guide/data-quality.html",{loader:()=>ne(()=>import("./data-quality.html-DbfyvRgN.js"),[]),meta:{title:"Data Quality Help and Hints"}}],["/guide/export.html",{loader:()=>ne(()=>import("./export.html-Kta3YHgi.js"),[]),meta:{title:"Export"}}],["/guide/getting-started.html",{loader:()=>ne(()=>import("./getting-started.html-RycraOQW.js"),[]),meta:{title:"Getting started with some basics"}}],["/guide/import.html",{loader:()=>ne(()=>import("./import.html-CCynoaFR.js"),[]),meta:{title:"Import"}}],["/guide/migrate-to-TaxonWorks.html",{loader:()=>ne(()=>import("./migrate-to-TaxonWorks.html-DawmXU2R.js"),[]),meta:{title:"Migrate to TaxonWorks"}}],["/guide/other-documents.html",{loader:()=>ne(()=>import("./other-documents.html-D2b_hTIS.js"),[]),meta:{title:"Other documents"}}],["/guide/start-a-project.html",{loader:()=>ne(()=>import("./start-a-project.html-nrFH6MA2.js"),[]),meta:{title:"Start a project"}}],["/guide/videos.html",{loader:()=>ne(()=>import("./videos.html-DCMbaAFr.js"),[]),meta:{title:"Videos"}}],["/develop/Data/",{loader:()=>ne(()=>import("./index.html-CohxOsIQ.js"),[]),meta:{title:"Overview"}}],["/develop/Data/models.html",{loader:()=>ne(()=>import("./models.html-CKtLdWnZ.js"),[]),meta:{title:"Models"}}],["/develop/Data/tables.html",{loader:()=>ne(()=>import("./tables.html-BkPAyJ3-.js"),[]),meta:{title:"Tables"}}],["/es/about/",{loader:()=>ne(()=>import("./index.html-kUO2BIpO.js"),[]),meta:{title:"Acerca"}}],["/es/develop/",{loader:()=>ne(()=>import("./index.html-CJG0iPrK.js"),[]),meta:{title:"El panorama general"}}],["/es/develop/bug-reporting.html",{loader:()=>ne(()=>import("./bug-reporting.html-D9ecm319.js"),[]),meta:{title:"Reportar un bug"}}],["/es/develop/contributing.html",{loader:()=>ne(()=>import("./contributing.html-CroaaUjK.js"),[]),meta:{title:"Contribuyendo"}}],["/es/develop/installation.html",{loader:()=>ne(()=>import("./installation.html-C5TqQ23A.js"),[]),meta:{title:"Instalación"}}],["/es/guide/",{loader:()=>ne(()=>import("./index.html-CKgkt9my.js"),[]),meta:{title:"El panorama general"}}],["/guide/FAQs/",{loader:()=>ne(()=>import("./index.html-B6PPCidR.js"),[]),meta:{title:"Introduction"}}],["/guide/Manual/",{loader:()=>ne(()=>import("./index.html-BoUmPZh2.js"),[]),meta:{title:"Introduction"}}],["/guide/Manual/annotation.html",{loader:()=>ne(()=>import("./annotation.html-CcgTmaLE.js"),[]),meta:{title:"Annotation"}}],["/guide/Manual/collecting_event.html",{loader:()=>ne(()=>import("./collecting_event.html-B7s0zL9d.js"),[]),meta:{title:"Collecting Events"}}],["/guide/Manual/collectionobject.html",{loader:()=>ne(()=>import("./collectionobject.html-PgkJVJ26.js"),[]),meta:{title:"Collection Objects"}}],["/guide/Manual/conventions.html",{loader:()=>ne(()=>import("./conventions.html-zLGNohUl.js"),[]),meta:{title:"The User Interface"}}],["/guide/Manual/customization.html",{loader:()=>ne(()=>import("./customization.html-BPiCMdGT.js"),[]),meta:{title:"Customization"}}],["/guide/Manual/digitization.html",{loader:()=>ne(()=>import("./digitization.html-DUdm7cWf.js"),[]),meta:{title:"Digitization"}}],["/guide/Manual/identifiers.html",{loader:()=>ne(()=>import("./identifiers.html-BA8g1PWZ.js"),[]),meta:{title:"Identifiers"}}],["/guide/Manual/matrices.html",{loader:()=>ne(()=>import("./matrices.html-BBek7Ay5.js"),[]),meta:{title:"Matrices"}}],["/guide/Manual/nomenclature.html",{loader:()=>ne(()=>import("./nomenclature.html-B4dF5ngD.js"),[]),meta:{title:"Nomenclature"}}],["/guide/Manual/Sources/",{loader:()=>ne(()=>import("./index.html-DAxUMUpM.js"),[]),meta:{title:"About Sources in TW"}}],["/404.html",{loader:()=>ne(()=>import("./404.html-CxyMnPEA.js"),[]),meta:{title:""}}]]);/*! + * vue-router v4.3.2 + * (c) 2024 Eduardo San Martin Morote + * @license MIT + */const sn=typeof document<"u";function ed(e){return e.__esModule||e[Symbol.toStringTag]==="Module"}const me=Object.assign;function ol(e,t){const n={};for(const i in t){const l=t[i];n[i]=st(l)?l.map(e):e(l)}return n}const In=()=>{},st=Array.isArray,As=/#/g,td=/&/g,nd=/\//g,id=/=/g,ld=/\?/g,Ps=/\+/g,od=/%5B/g,rd=/%5D/g,Rs=/%5E/g,sd=/%60/g,Is=/%7B/g,ad=/%7C/g,Os=/%7D/g,cd=/%20/g;function ql(e){return encodeURI(""+e).replace(ad,"|").replace(od,"[").replace(rd,"]")}function ud(e){return ql(e).replace(Is,"{").replace(Os,"}").replace(Rs,"^")}function wl(e){return ql(e).replace(Ps,"%2B").replace(cd,"+").replace(As,"%23").replace(td,"%26").replace(sd,"`").replace(Is,"{").replace(Os,"}").replace(Rs,"^")}function dd(e){return wl(e).replace(id,"%3D")}function hd(e){return ql(e).replace(As,"%23").replace(ld,"%3F")}function fd(e){return e==null?"":hd(e).replace(nd,"%2F")}function jn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const gd=/\/$/,pd=e=>e.replace(gd,"");function rl(e,t,n="/"){let i,l={},o="",r="";const s=t.indexOf("#");let a=t.indexOf("?");return s=0&&(a=-1),a>-1&&(i=t.slice(0,a),o=t.slice(a+1,s>-1?s:t.length),l=e(o)),s>-1&&(i=i||t.slice(0,s),r=t.slice(s,t.length)),i=yd(i??t,n),{fullPath:i+(o&&"?")+o+r,path:i,query:l,hash:jn(r)}}function md(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Go(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function vd(e,t,n){const i=t.matched.length-1,l=n.matched.length-1;return i>-1&&i===l&&pn(t.matched[i],n.matched[l])&&Ms(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function pn(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Ms(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!bd(e[n],t[n]))return!1;return!0}function bd(e,t){return st(e)?Ko(e,t):st(t)?Ko(t,e):e===t}function Ko(e,t){return st(t)?e.length===t.length&&e.every((n,i)=>n===t[i]):e.length===1&&e[0]===t}function yd(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),i=e.split("/"),l=i[i.length-1];(l===".."||l===".")&&i.push("");let o=n.length-1,r,s;for(r=0;r1&&o--;else break;return n.slice(0,o).join("/")+"/"+i.slice(r).join("/")}var zn;(function(e){e.pop="pop",e.push="push"})(zn||(zn={}));var On;(function(e){e.back="back",e.forward="forward",e.unknown=""})(On||(On={}));function kd(e){if(!e)if(sn){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),pd(e)}const _d=/^[^#]+#/;function wd(e,t){return e.replace(_d,"#")+t}function xd(e,t){const n=document.documentElement.getBoundingClientRect(),i=e.getBoundingClientRect();return{behavior:t.behavior,left:i.left-n.left-(t.left||0),top:i.top-n.top-(t.top||0)}}const Bi=()=>({left:window.scrollX,top:window.scrollY});function Ed(e){let t;if("el"in e){const n=e.el,i=typeof n=="string"&&n.startsWith("#"),l=typeof n=="string"?i?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!l)return;t=xd(l,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Qo(e,t){return(history.state?history.state.position-t:-1)+e}const xl=new Map;function Cd(e,t){xl.set(e,t)}function Sd(e){const t=xl.get(e);return xl.delete(e),t}let Td=()=>location.protocol+"//"+location.host;function Ds(e,t){const{pathname:n,search:i,hash:l}=t,o=e.indexOf("#");if(o>-1){let s=l.includes(e.slice(o))?e.slice(o).length:1,a=l.slice(s);return a[0]!=="/"&&(a="/"+a),Go(a,"")}return Go(n,e)+i+l}function Ld(e,t,n,i){let l=[],o=[],r=null;const s=({state:h})=>{const p=Ds(e,location),v=n.value,k=t.value;let A=0;if(h){if(n.value=p,t.value=h,r&&r===v){r=null;return}A=k?h.position-k.position:0}else i(p);l.forEach(x=>{x(n.value,v,{delta:A,type:zn.pop,direction:A?A>0?On.forward:On.back:On.unknown})})};function a(){r=n.value}function c(h){l.push(h);const p=()=>{const v=l.indexOf(h);v>-1&&l.splice(v,1)};return o.push(p),p}function u(){const{history:h}=window;h.state&&h.replaceState(me({},h.state,{scroll:Bi()}),"")}function d(){for(const h of o)h();o=[],window.removeEventListener("popstate",s),window.removeEventListener("beforeunload",u)}return window.addEventListener("popstate",s),window.addEventListener("beforeunload",u,{passive:!0}),{pauseListeners:a,listen:c,destroy:d}}function Yo(e,t,n,i=!1,l=!1){return{back:e,current:t,forward:n,replaced:i,position:window.history.length,scroll:l?Bi():null}}function Ad(e){const{history:t,location:n}=window,i={value:Ds(e,n)},l={value:t.state};l.value||o(i.value,{back:null,current:i.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(a,c,u){const d=e.indexOf("#"),h=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+a:Td()+e+a;try{t[u?"replaceState":"pushState"](c,"",h),l.value=c}catch(p){console.error(p),n[u?"replace":"assign"](h)}}function r(a,c){const u=me({},t.state,Yo(l.value.back,a,l.value.forward,!0),c,{position:l.value.position});o(a,u,!0),i.value=a}function s(a,c){const u=me({},l.value,t.state,{forward:a,scroll:Bi()});o(u.current,u,!0);const d=me({},Yo(i.value,a,null),{position:u.position+1},c);o(a,d,!1),i.value=a}return{location:i,state:l,push:s,replace:r}}function Pd(e){e=kd(e);const t=Ad(e),n=Ld(e,t.state,t.location,t.replace);function i(o,r=!0){r||n.pauseListeners(),history.go(o)}const l=me({location:"",base:e,go:i,createHref:wd.bind(null,e)},t,n);return Object.defineProperty(l,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(l,"state",{enumerable:!0,get:()=>t.state.value}),l}function Rd(e){return typeof e=="string"||e&&typeof e=="object"}function Ns(e){return typeof e=="string"||typeof e=="symbol"}const bt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0},$s=Symbol("");var Jo;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Jo||(Jo={}));function mn(e,t){return me(new Error,{type:e,[$s]:!0},t)}function vt(e,t){return e instanceof Error&&$s in e&&(t==null||!!(e.type&t))}const Xo="[^/]+?",Id={sensitive:!1,strict:!1,start:!0,end:!0},Od=/[.+*?^${}()[\]/\\]/g;function Md(e,t){const n=me({},Id,t),i=[];let l=n.start?"^":"";const o=[];for(const c of e){const u=c.length?[]:[90];n.strict&&!c.length&&(l+="/");for(let d=0;dt.length?t.length===1&&t[0]===80?1:-1:0}function Nd(e,t){let n=0;const i=e.score,l=t.score;for(;n0&&t[t.length-1]<0}const $d={type:0,value:""},Fd=/[a-zA-Z0-9_]/;function Hd(e){if(!e)return[[]];if(e==="/")return[[$d]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=0,i=n;const l=[];let o;function r(){o&&l.push(o),o=[]}let s=0,a,c="",u="";function d(){c&&(n===0?o.push({type:0,value:c}):n===1||n===2||n===3?(o.length>1&&(a==="*"||a==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:c,regexp:u,repeatable:a==="*"||a==="+",optional:a==="*"||a==="?"})):t("Invalid state to consume buffer"),c="")}function h(){c+=a}for(;s{r(C)}:In}function r(u){if(Ns(u)){const d=i.get(u);d&&(i.delete(u),n.splice(n.indexOf(d),1),d.children.forEach(r),d.alias.forEach(r))}else{const d=n.indexOf(u);d>-1&&(n.splice(d,1),u.record.name&&i.delete(u.record.name),u.children.forEach(r),u.alias.forEach(r))}}function s(){return n}function a(u){let d=0;for(;d=0&&(u.record.path!==n[d].record.path||!Fs(u,n[d]));)d++;n.splice(d,0,u),u.record.name&&!tr(u)&&i.set(u.record.name,u)}function c(u,d){let h,p={},v,k;if("name"in u&&u.name){if(h=i.get(u.name),!h)throw mn(1,{location:u});k=h.record.name,p=me(er(d.params,h.keys.filter(C=>!C.optional).concat(h.parent?h.parent.keys.filter(C=>C.optional):[]).map(C=>C.name)),u.params&&er(u.params,h.keys.map(C=>C.name))),v=h.stringify(p)}else if(u.path!=null)v=u.path,h=n.find(C=>C.re.test(v)),h&&(p=h.parse(v),k=h.record.name);else{if(h=d.name?i.get(d.name):n.find(C=>C.re.test(d.path)),!h)throw mn(1,{location:u,currentLocation:d});k=h.record.name,p=me({},d.params,u.params),v=h.stringify(p)}const A=[];let x=h;for(;x;)A.unshift(x.record),x=x.parent;return{name:k,path:v,params:p,matched:A,meta:Wd(A)}}return e.forEach(u=>o(u)),{addRoute:o,resolve:c,removeRoute:r,getRoutes:s,getRecordMatcher:l}}function er(e,t){const n={};for(const i of t)i in e&&(n[i]=e[i]);return n}function Bd(e){return{path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:void 0,beforeEnter:e.beforeEnter,props:Vd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}}}function Vd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const i in e.components)t[i]=typeof n=="object"?n[i]:n;return t}function tr(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Wd(e){return e.reduce((t,n)=>me(t,n.meta),{})}function nr(e,t){const n={};for(const i in e)n[i]=i in t?t[i]:e[i];return n}function Fs(e,t){return t.children.some(n=>n===e||Fs(e,n))}function Ud(e){const t={};if(e===""||e==="?")return t;const i=(e[0]==="?"?e.slice(1):e).split("&");for(let l=0;lo&&wl(o)):[i&&wl(i)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function qd(e){const t={};for(const n in e){const i=e[n];i!==void 0&&(t[n]=st(i)?i.map(l=>l==null?null:""+l):i==null?i:""+i)}return t}const Gd=Symbol(""),lr=Symbol(""),Vi=Symbol(""),Gl=Symbol(""),El=Symbol("");function wn(){let e=[];function t(i){return e.push(i),()=>{const l=e.indexOf(i);l>-1&&e.splice(l,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Mt(e,t,n,i,l,o=r=>r()){const r=i&&(i.enterCallbacks[l]=i.enterCallbacks[l]||[]);return()=>new Promise((s,a)=>{const c=h=>{h===!1?a(mn(4,{from:n,to:t})):h instanceof Error?a(h):Rd(h)?a(mn(2,{from:t,to:h})):(r&&i.enterCallbacks[l]===r&&typeof h=="function"&&r.push(h),s())},u=o(()=>e.call(i&&i.instances[l],t,n,c));let d=Promise.resolve(u);e.length<3&&(d=d.then(c)),d.catch(h=>a(h))})}function sl(e,t,n,i,l=o=>o()){const o=[];for(const r of e)for(const s in r.components){let a=r.components[s];if(!(t!=="beforeRouteEnter"&&!r.instances[s]))if(Kd(a)){const u=(a.__vccOpts||a)[t];u&&o.push(Mt(u,n,i,r,s,l))}else{let c=a();o.push(()=>c.then(u=>{if(!u)return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${r.path}"`));const d=ed(u)?u.default:u;r.components[s]=d;const p=(d.__vccOpts||d)[t];return p&&Mt(p,n,i,r,s,l)()}))}}return o}function Kd(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function or(e){const t=Ve(Vi),n=Ve(Gl),i=O(()=>{const a=Q(e.to);return t.resolve(a)}),l=O(()=>{const{matched:a}=i.value,{length:c}=a,u=a[c-1],d=n.matched;if(!u||!d.length)return-1;const h=d.findIndex(pn.bind(null,u));if(h>-1)return h;const p=rr(a[c-2]);return c>1&&rr(u)===p&&d[d.length-1].path!==p?d.findIndex(pn.bind(null,a[c-2])):h}),o=O(()=>l.value>-1&&Xd(n.params,i.value.params)),r=O(()=>l.value>-1&&l.value===n.matched.length-1&&Ms(n.params,i.value.params));function s(a={}){return Jd(a)?t[Q(e.replace)?"replace":"push"](Q(e.to)).catch(In):Promise.resolve()}return{route:i,href:O(()=>i.value.href),isActive:o,isExactActive:r,navigate:s}}const Qd=pe({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:or,setup(e,{slots:t}){const n=Kn(or(e)),{options:i}=Ve(Vi),l=O(()=>({[sr(e.activeClass,i.linkActiveClass,"router-link-active")]:n.isActive,[sr(e.exactActiveClass,i.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&t.default(n);return e.custom?o:ge("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:l.value},o)}}}),Yd=Qd;function Jd(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Xd(e,t){for(const n in t){const i=t[n],l=e[n];if(typeof i=="string"){if(i!==l)return!1}else if(!st(l)||l.length!==i.length||i.some((o,r)=>o!==l[r]))return!1}return!0}function rr(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const sr=(e,t,n)=>e??t??n,Zd=pe({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const i=Ve(El),l=O(()=>e.route||i.value),o=Ve(lr,0),r=O(()=>{let c=Q(o);const{matched:u}=l.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),s=O(()=>l.value.matched[r.value]);en(lr,O(()=>r.value+1)),en(Gd,s),en(El,l);const a=ae();return Fe(()=>[a.value,s.value,e.name],([c,u,d],[h,p,v])=>{u&&(u.instances[d]=c,p&&p!==u&&c&&c===h&&(u.leaveGuards.size||(u.leaveGuards=p.leaveGuards),u.updateGuards.size||(u.updateGuards=p.updateGuards))),c&&u&&(!p||!pn(u,p)||!h)&&(u.enterCallbacks[d]||[]).forEach(k=>k(c))},{flush:"post"}),()=>{const c=l.value,u=e.name,d=s.value,h=d&&d.components[u];if(!h)return ar(n.default,{Component:h,route:c});const p=d.props[u],v=p?p===!0?c.params:typeof p=="function"?p(c):p:null,A=ge(h,me({},v,t,{onVnodeUnmounted:x=>{x.component.isUnmounted&&(d.instances[u]=null)},ref:a}));return ar(n.default,{Component:A,route:c})||A}}});function ar(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const eh=Zd;function th(e){const t=zd(e.routes,e),n=e.parseQuery||Ud,i=e.stringifyQuery||ir,l=e.history,o=wn(),r=wn(),s=wn(),a=vn(bt);let c=bt;sn&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=ol.bind(null,S=>""+S),d=ol.bind(null,fd),h=ol.bind(null,jn);function p(S,B){let j,G;return Ns(S)?(j=t.getRecordMatcher(S),G=B):G=S,t.addRoute(G,j)}function v(S){const B=t.getRecordMatcher(S);B&&t.removeRoute(B)}function k(){return t.getRoutes().map(S=>S.record)}function A(S){return!!t.getRecordMatcher(S)}function x(S,B){if(B=me({},B||a.value),typeof S=="string"){const g=rl(n,S,B.path),y=t.resolve({path:g.path},B),L=l.createHref(g.fullPath);return me(g,y,{params:h(y.params),hash:jn(g.hash),redirectedFrom:void 0,href:L})}let j;if(S.path!=null)j=me({},S,{path:rl(n,S.path,B.path).path});else{const g=me({},S.params);for(const y in g)g[y]==null&&delete g[y];j=me({},S,{params:d(g)}),B.params=d(B.params)}const G=t.resolve(j,B),ue=S.hash||"";G.params=u(h(G.params));const ve=md(i,me({},S,{hash:ud(ue),path:G.path})),f=l.createHref(ve);return me({fullPath:ve,hash:ue,query:i===ir?qd(S.query):S.query||{}},G,{redirectedFrom:void 0,href:f})}function C(S){return typeof S=="string"?rl(n,S,a.value.path):me({},S)}function m(S,B){if(c!==S)return mn(8,{from:B,to:S})}function w(S){return $(S)}function H(S){return w(me(C(S),{replace:!0}))}function I(S){const B=S.matched[S.matched.length-1];if(B&&B.redirect){const{redirect:j}=B;let G=typeof j=="function"?j(S):j;return typeof G=="string"&&(G=G.includes("?")||G.includes("#")?G=C(G):{path:G},G.params={}),me({query:S.query,hash:S.hash,params:G.path!=null?{}:S.params},G)}}function $(S,B){const j=c=x(S),G=a.value,ue=S.state,ve=S.force,f=S.replace===!0,g=I(j);if(g)return $(me(C(g),{state:typeof g=="object"?me({},ue,g.state):ue,force:ve,replace:f}),B||j);const y=j;y.redirectedFrom=B;let L;return!ve&&vd(i,G,j)&&(L=mn(16,{to:y,from:G}),Ue(G,G,!0,!1)),(L?Promise.resolve(L):T(y,G)).catch(E=>vt(E)?vt(E,2)?E:$e(E):U(E,y,G)).then(E=>{if(E){if(vt(E,2))return $(me({replace:f},C(E.to),{state:typeof E.to=="object"?me({},ue,E.to.state):ue,force:ve}),B||y)}else E=_(y,G,!0,f,ue);return W(y,G,E),E})}function b(S,B){const j=m(S,B);return j?Promise.reject(j):Promise.resolve()}function K(S){const B=Ct.values().next().value;return B&&typeof B.runWithContext=="function"?B.runWithContext(S):S()}function T(S,B){let j;const[G,ue,ve]=nh(S,B);j=sl(G.reverse(),"beforeRouteLeave",S,B);for(const g of G)g.leaveGuards.forEach(y=>{j.push(Mt(y,S,B))});const f=b.bind(null,S,B);return j.push(f),Oe(j).then(()=>{j=[];for(const g of o.list())j.push(Mt(g,S,B));return j.push(f),Oe(j)}).then(()=>{j=sl(ue,"beforeRouteUpdate",S,B);for(const g of ue)g.updateGuards.forEach(y=>{j.push(Mt(y,S,B))});return j.push(f),Oe(j)}).then(()=>{j=[];for(const g of ve)if(g.beforeEnter)if(st(g.beforeEnter))for(const y of g.beforeEnter)j.push(Mt(y,S,B));else j.push(Mt(g.beforeEnter,S,B));return j.push(f),Oe(j)}).then(()=>(S.matched.forEach(g=>g.enterCallbacks={}),j=sl(ve,"beforeRouteEnter",S,B,K),j.push(f),Oe(j))).then(()=>{j=[];for(const g of r.list())j.push(Mt(g,S,B));return j.push(f),Oe(j)}).catch(g=>vt(g,8)?g:Promise.reject(g))}function W(S,B,j){s.list().forEach(G=>K(()=>G(S,B,j)))}function _(S,B,j,G,ue){const ve=m(S,B);if(ve)return ve;const f=B===bt,g=sn?history.state:{};j&&(G||f?l.replace(S.fullPath,me({scroll:f&&g&&g.scroll},ue)):l.push(S.fullPath,ue)),a.value=S,Ue(S,B,j,f),$e()}let N;function te(){N||(N=l.listen((S,B,j)=>{if(!ct.listening)return;const G=x(S),ue=I(G);if(ue){$(me(ue,{replace:!0}),G).catch(In);return}c=G;const ve=a.value;sn&&Cd(Qo(ve.fullPath,j.delta),Bi()),T(G,ve).catch(f=>vt(f,12)?f:vt(f,2)?($(f.to,G).then(g=>{vt(g,20)&&!j.delta&&j.type===zn.pop&&l.go(-1,!1)}).catch(In),Promise.reject()):(j.delta&&l.go(-j.delta,!1),U(f,G,ve))).then(f=>{f=f||_(G,ve,!1),f&&(j.delta&&!vt(f,8)?l.go(-j.delta,!1):j.type===zn.pop&&vt(f,20)&&l.go(-1,!1)),W(G,ve,f)}).catch(In)}))}let se=wn(),R=wn(),Y;function U(S,B,j){$e(S);const G=R.list();return G.length?G.forEach(ue=>ue(S,B,j)):console.error(S),Promise.reject(S)}function Ie(){return Y&&a.value!==bt?Promise.resolve():new Promise((S,B)=>{se.add([S,B])})}function $e(S){return Y||(Y=!S,te(),se.list().forEach(([B,j])=>S?j(S):B()),se.reset()),S}function Ue(S,B,j,G){const{scrollBehavior:ue}=e;if(!sn||!ue)return Promise.resolve();const ve=!j&&Sd(Qo(S.fullPath,0))||(G||!j)&&history.state&&history.state.scroll||null;return bn().then(()=>ue(S,B,ve)).then(f=>f&&Ed(f)).catch(f=>U(f,S,B))}const je=S=>l.go(S);let Et;const Ct=new Set,ct={currentRoute:a,listening:!0,addRoute:p,removeRoute:v,hasRoute:A,getRoutes:k,resolve:x,options:e,push:w,replace:H,go:je,back:()=>je(-1),forward:()=>je(1),beforeEach:o.add,beforeResolve:r.add,afterEach:s.add,onError:R.add,isReady:Ie,install(S){const B=this;S.component("RouterLink",Yd),S.component("RouterView",eh),S.config.globalProperties.$router=B,Object.defineProperty(S.config.globalProperties,"$route",{enumerable:!0,get:()=>Q(a)}),sn&&!Et&&a.value===bt&&(Et=!0,w(l.location).catch(ue=>{}));const j={};for(const ue in bt)Object.defineProperty(j,ue,{get:()=>a.value[ue],enumerable:!0});S.provide(Vi,B),S.provide(Gl,zr(j)),S.provide(El,a);const G=S.unmount;Ct.add(S),S.unmount=function(){Ct.delete(S),Ct.size<1&&(c=bt,N&&N(),N=null,a.value=bt,Et=!1,Y=!1),G()}}};function Oe(S){return S.reduce((B,j)=>B.then(()=>K(j)),Promise.resolve())}return ct}function nh(e,t){const n=[],i=[],l=[],o=Math.max(t.matched.length,e.matched.length);for(let r=0;rpn(c,s))?i.push(s):n.push(s));const a=e.matched[r];a&&(t.matched.find(c=>pn(c,a))||l.push(a))}return[n,i,l]}function ln(){return Ve(Vi)}function wt(){return Ve(Gl)}var Kl=Symbol(""),mt=()=>{const e=Ve(Kl);if(!e)throw new Error("useClientData() is called without provider.");return e},ih=()=>mt().pageComponent,fn=()=>mt().pageData,ft=()=>mt().pageFrontmatter,lh=()=>mt().pageHead,oh=()=>mt().pageLang,rh=()=>mt().pageLayout,ti=()=>mt().routeLocale,sh=()=>mt().routes,Hs=()=>mt().siteData,Ql=()=>mt().siteLocaleData,ah=Symbol(""),Cl=vn(Xu),Bn=vn(Zu),js=(e,t)=>{const n=Qu(e,t);if(Bn.value[n])return n;const i=encodeURI(n);return Bn.value[i]?i:Cl.value[n]||Cl.value[i]||n},Vn=(e,t)=>{const n=js(e,t),i=Bn.value[n]??{...Bn.value["/404.html"],notFound:!0};return{path:n,notFound:!1,...i}},ch=e=>{if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget){const t=e.currentTarget.getAttribute("target");if(t!=null&&t.match(/\b_blank\b/i))return}return e.preventDefault(),!0}},Wi=pe({name:"RouteLink",props:{to:{type:String,required:!0},active:Boolean,activeClass:{type:String,default:"route-link-active"}},slots:Object,setup(e,{slots:t}){const n=ln(),i=wt(),l=O(()=>e.to.startsWith("#")||e.to.startsWith("?")?e.to:`/${js(e.to,i.path).substring(1)}`);return()=>{var o;return ge("a",{class:["route-link",{[e.activeClass]:e.active}],href:l.value,onClick:(r={})=>{ch(r)&&n.push(e.to).catch()}},(o=t.default)==null?void 0:o.call(t))}}}),kt=pe({name:"AutoLink",props:{config:{type:Object,required:!0}},slots:Object,setup(e,{slots:t}){const n=Za(e,"config"),i=wt(),l=Hs(),o=O(()=>Cs(n.value.link)),r=O(()=>n.value.target||(o.value?"_blank":void 0)),s=O(()=>r.value==="_blank"),a=O(()=>!o.value&&!s.value),c=O(()=>n.value.rel||(s.value?"noopener noreferrer":null)),u=O(()=>n.value.ariaLabel??n.value.text),d=O(()=>{if(n.value.exact)return!1;const p=Object.keys(l.value.locales);return p.length?p.every(v=>v!==n.value.link):n.value.link!=="/"}),h=O(()=>a.value?n.value.activeMatch?(n.value.activeMatch instanceof RegExp?n.value.activeMatch:new RegExp(n.value.activeMatch,"u")).test(i.path):d.value?i.path.startsWith(n.value.link):i.path===n.value.link:!1);return()=>{const{before:p,after:v,default:k}=t,A=(k==null?void 0:k(n.value))||[p==null?void 0:p(n.value),n.value.text,v==null?void 0:v(n.value)];return a.value?ge(Wi,{class:"auto-link",to:n.value.link,active:h.value,"aria-label":u.value},()=>A):ge("a",{class:"auto-link external-link",href:n.value.link,"aria-label":u.value,rel:c.value,target:r.value},A)}}}),Yl=pe({name:"ClientOnly",setup(e,t){const n=ae(!1);return We(()=>{n.value=!0}),()=>{var i,l;return n.value?(l=(i=t.slots).default)==null?void 0:l.call(i):null}}}),uh=pe({name:"Content",props:{path:{type:String,required:!1,default:""}},setup(e){const t=ih(),n=O(()=>{if(!e.path)return t.value;const i=Vn(e.path);return kc(()=>i.loader().then(({comp:l})=>l))});return()=>ge(n.value)}}),dh="Layout",hh="en-US",qt=Kn({resolveLayouts:e=>e.reduce((t,n)=>({...t,...n.layouts}),{}),resolvePageHead:(e,t,n)=>{const i=rt(t.description)?t.description:n.description,l=[...Array.isArray(t.head)?t.head:[],...n.head,["title",{},e],["meta",{name:"description",content:i}]];return Gu(l)},resolvePageHeadTitle:(e,t)=>[e.title,t.title].filter(n=>!!n).join(" | "),resolvePageLang:(e,t)=>e.lang||t.lang||hh,resolvePageLayout:(e,t)=>{const n=rt(e.frontmatter.layout)?e.frontmatter.layout:dh;if(!t[n])throw new Error(`[vuepress] Cannot resolve layout: ${n}`);return t[n]},resolveRouteLocale:(e,t)=>Ls(e,t),resolveSiteLocaleData:({base:e,locales:t,...n},i)=>{var l;return{...n,...t[i],head:[...((l=t[i])==null?void 0:l.head)??[],...n.head??[]]}}}),xt=(e={})=>e,Jl=e=>zi(e)?e:`/${Ts(e)}`;function Ui(e){return Ar()?(Ea(e),!0):!1}function pt(e){return typeof e=="function"?e():Q(e)}const Xl=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const fh=Object.prototype.toString,gh=e=>fh.call(e)==="[object Object]",Sl=()=>{};function zs(e,t){function n(...i){return new Promise((l,o)=>{Promise.resolve(e(()=>t.apply(this,i),{fn:t,thisArg:this,args:i})).then(l).catch(o)})}return n}const Bs=e=>e();function ph(e,t={}){let n,i,l=Sl;const o=s=>{clearTimeout(s),l(),l=Sl};return s=>{const a=pt(e),c=pt(t.maxWait);return n&&o(n),a<=0||c!==void 0&&c<=0?(i&&(o(i),i=null),Promise.resolve(s())):new Promise((u,d)=>{l=t.rejectOnCancel?d:u,c&&!i&&(i=setTimeout(()=>{n&&o(n),i=null,u(s())},c)),n=setTimeout(()=>{i&&o(i),i=null,u(s())},a)})}}function mh(e=Bs){const t=ae(!0);function n(){t.value=!1}function i(){t.value=!0}const l=(...o)=>{t.value&&e(...o)};return{isActive:Oi(t),pause:n,resume:i,eventFilter:l}}function vh(e){let t;function n(){return t||(t=e()),t}return n.reset=async()=>{const i=t;t=void 0,i&&await i},n}function bh(e){return Hi()}function yh(e,t=200,n={}){return zs(ph(t,n),e)}function kh(e,t,n={}){const{eventFilter:i=Bs,...l}=n;return Fe(e,zs(i,t),l)}function _h(e,t,n={}){const{eventFilter:i,...l}=n,{eventFilter:o,pause:r,resume:s,isActive:a}=mh(i);return{stop:kh(e,t,{...l,eventFilter:o}),pause:r,resume:s,isActive:a}}function Zl(e,t=!0,n){bh()?We(e,n):t?e():bn(e)}function wh(e,t,n={}){const{immediate:i=!0}=n,l=ae(!1);let o=null;function r(){o&&(clearTimeout(o),o=null)}function s(){l.value=!1,r()}function a(...c){r(),l.value=!0,o=setTimeout(()=>{l.value=!1,o=null,e(...c)},pt(t))}return i&&(l.value=!0,Xl&&a()),Ui(s),{isPending:Oi(l),start:a,stop:s}}function xh(e=!1,t={}){const{truthyValue:n=!0,falsyValue:i=!1}=t,l=He(e),o=ae(e);function r(s){if(arguments.length)return o.value=s,o.value;{const a=pt(n);return o.value=o.value===a?pt(i):a,o.value}}return l?r:[o,r]}function Jt(e){var t;const n=pt(e);return(t=n==null?void 0:n.$el)!=null?t:n}const jt=Xl?window:void 0,Vs=Xl?window.navigator:void 0;function at(...e){let t,n,i,l;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,i,l]=e,t=jt):[t,n,i,l]=e,!t)return Sl;Array.isArray(n)||(n=[n]),Array.isArray(i)||(i=[i]);const o=[],r=()=>{o.forEach(u=>u()),o.length=0},s=(u,d,h,p)=>(u.addEventListener(d,h,p),()=>u.removeEventListener(d,h,p)),a=Fe(()=>[Jt(t),pt(l)],([u,d])=>{if(r(),!u)return;const h=gh(d)?{...d}:d;o.push(...n.flatMap(p=>i.map(v=>s(u,p,v,h))))},{immediate:!0,flush:"post"}),c=()=>{a(),r()};return Ui(c),c}function Eh(){const e=ae(!1),t=Hi();return t&&We(()=>{e.value=!0},t),e}function qi(e){const t=Eh();return O(()=>(t.value,!!e()))}function Ws(e,t={}){const{window:n=jt}=t,i=qi(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let l;const o=ae(!1),r=c=>{o.value=c.matches},s=()=>{l&&("removeEventListener"in l?l.removeEventListener("change",r):l.removeListener(r))},a=pc(()=>{i.value&&(s(),l=n.matchMedia(pt(e)),"addEventListener"in l?l.addEventListener("change",r):l.addListener(r),o.value=l.matches)});return Ui(()=>{a(),s(),l=void 0}),o}function cr(e,t={}){const{controls:n=!1,navigator:i=Vs}=t,l=qi(()=>i&&"permissions"in i);let o;const r=typeof e=="string"?{name:e}:e,s=ae(),a=()=>{o&&(s.value=o.state)},c=vh(async()=>{if(l.value){if(!o)try{o=await i.permissions.query(r),at(o,"change",a),a()}catch{s.value="prompt"}return o}});return c(),n?{state:s,isSupported:l,query:c}:s}function Ch(e={}){const{navigator:t=Vs,read:n=!1,source:i,copiedDuring:l=1500,legacy:o=!1}=e,r=qi(()=>t&&"clipboard"in t),s=cr("clipboard-read"),a=cr("clipboard-write"),c=O(()=>r.value||o),u=ae(""),d=ae(!1),h=wh(()=>d.value=!1,l);function p(){r.value&&x(s.value)?t.clipboard.readText().then(C=>{u.value=C}):u.value=A()}c.value&&n&&at(["copy","cut"],p);async function v(C=pt(i)){c.value&&C!=null&&(r.value&&x(a.value)?await t.clipboard.writeText(C):k(C),u.value=C,d.value=!0,h.start())}function k(C){const m=document.createElement("textarea");m.value=C??"",m.style.position="absolute",m.style.opacity="0",document.body.appendChild(m),m.select(),document.execCommand("copy"),m.remove()}function A(){var C,m,w;return(w=(m=(C=document==null?void 0:document.getSelection)==null?void 0:C.call(document))==null?void 0:m.toString())!=null?w:""}function x(C){return C==="granted"||C==="prompt"}return{isSupported:c,text:u,copied:d,copy:v}}const di=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},hi="__vueuse_ssr_handlers__",Sh=Th();function Th(){return hi in di||(di[hi]=di[hi]||{}),di[hi]}function Lh(e,t){return Sh[e]||t}function Ah(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const Ph={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},ur="vueuse-storage";function Us(e,t,n,i={}){var l;const{flush:o="pre",deep:r=!0,listenToStorageChanges:s=!0,writeDefaults:a=!0,mergeDefaults:c=!1,shallow:u,window:d=jt,eventFilter:h,onError:p=T=>{console.error(T)},initOnMounted:v}=i,k=(u?vn:ae)(typeof t=="function"?t():t);if(!n)try{n=Lh("getDefaultStorage",()=>{var T;return(T=jt)==null?void 0:T.localStorage})()}catch(T){p(T)}if(!n)return k;const A=pt(t),x=Ah(A),C=(l=i.serializer)!=null?l:Ph[x],{pause:m,resume:w}=_h(k,()=>I(k.value),{flush:o,deep:r,eventFilter:h});d&&s&&Zl(()=>{at(d,"storage",b),at(d,ur,K),v&&b()}),v||b();function H(T,W){d&&d.dispatchEvent(new CustomEvent(ur,{detail:{key:e,oldValue:T,newValue:W,storageArea:n}}))}function I(T){try{const W=n.getItem(e);if(T==null)H(W,null),n.removeItem(e);else{const _=C.write(T);W!==_&&(n.setItem(e,_),H(W,_))}}catch(W){p(W)}}function $(T){const W=T?T.newValue:n.getItem(e);if(W==null)return a&&A!=null&&n.setItem(e,C.write(A)),A;if(!T&&c){const _=C.read(W);return typeof c=="function"?c(_,A):x==="object"&&!Array.isArray(_)?{...A,..._}:_}else return typeof W!="string"?W:C.read(W)}function b(T){if(!(T&&T.storageArea!==n)){if(T&&T.key==null){k.value=A;return}if(!(T&&T.key!==e)){m();try{(T==null?void 0:T.newValue)!==C.write(k.value)&&(k.value=$(T))}catch(W){p(W)}finally{T?bn(w):w()}}}}function K(T){b(T.detail)}return k}function Rh(e){return Ws("(prefers-color-scheme: dark)",e)}function Ih(e,t,n={}){const{window:i=jt,...l}=n;let o;const r=qi(()=>i&&"ResizeObserver"in i),s=()=>{o&&(o.disconnect(),o=void 0)},a=O(()=>Array.isArray(e)?e.map(d=>Jt(d)):[Jt(e)]),c=Fe(a,d=>{if(s(),r.value&&i){o=new ResizeObserver(t);for(const h of d)h&&o.observe(h,l)}},{immediate:!0,flush:"post"}),u=()=>{s(),c()};return Ui(u),{isSupported:r,stop:u}}function Oh(e,t={width:0,height:0},n={}){const{window:i=jt,box:l="content-box"}=n,o=O(()=>{var d,h;return(h=(d=Jt(e))==null?void 0:d.namespaceURI)==null?void 0:h.includes("svg")}),r=ae(t.width),s=ae(t.height),{stop:a}=Ih(e,([d])=>{const h=l==="border-box"?d.borderBoxSize:l==="content-box"?d.contentBoxSize:d.devicePixelContentBoxSize;if(i&&o.value){const p=Jt(e);if(p){const v=i.getComputedStyle(p);r.value=Number.parseFloat(v.width),s.value=Number.parseFloat(v.height)}}else if(h){const p=Array.isArray(h)?h:[h];r.value=p.reduce((v,{inlineSize:k})=>v+k,0),s.value=p.reduce((v,{blockSize:k})=>v+k,0)}else r.value=d.contentRect.width,s.value=d.contentRect.height},n);Zl(()=>{const d=Jt(e);d&&(r.value="offsetWidth"in d?d.offsetWidth:t.width,s.value="offsetHeight"in d?d.offsetHeight:t.height)});const c=Fe(()=>Jt(e),d=>{r.value=d?t.width:0,s.value=d?t.height:0});function u(){a(),c()}return{width:r,height:s,stop:u}}function Mh(e={}){const{window:t=jt,behavior:n="auto"}=e;if(!t)return{x:ae(0),y:ae(0)};const i=ae(t.scrollX),l=ae(t.scrollY),o=O({get(){return i.value},set(s){scrollTo({left:s,behavior:n})}}),r=O({get(){return l.value},set(s){scrollTo({top:s,behavior:n})}});return at(t,"scroll",()=>{i.value=t.scrollX,l.value=t.scrollY},{capture:!1,passive:!0}),{x:o,y:r}}function Dh(e={}){const{window:t=jt,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:i=Number.POSITIVE_INFINITY,listenOrientation:l=!0,includeScrollbar:o=!0}=e,r=ae(n),s=ae(i),a=()=>{t&&(o?(r.value=t.innerWidth,s.value=t.innerHeight):(r.value=t.document.documentElement.clientWidth,s.value=t.document.documentElement.clientHeight))};if(a(),Zl(a),at("resize",a,{passive:!0}),l){const c=Ws("(orientation: portrait)");Fe(c,()=>a())}return{width:r,height:s}}const dr=async(e,t)=>{const{path:n,query:i}=e.currentRoute.value,{scrollBehavior:l}=e.options;e.options.scrollBehavior=void 0,await e.replace({path:n,query:i,hash:t}),e.options.scrollBehavior=l},Nh=({headerLinkSelector:e,headerAnchorSelector:t,delay:n,offset:i=5})=>{const l=ln();at("scroll",yh(()=>{var v,k;const r=Math.max(window.scrollY,document.documentElement.scrollTop,document.body.scrollTop);if(Math.abs(r-0)d.some(x=>x.hash===A.hash));for(let A=0;A=(((v=x.parentElement)==null?void 0:v.offsetTop)??0)-i,w=!C||r<(((k=C.parentElement)==null?void 0:k.offsetTop)??0)-i;if(!(m&&w))continue;const I=decodeURIComponent(l.currentRoute.value.hash),$=decodeURIComponent(x.hash);if(I===$)return;if(u){for(let b=A+1;b{const t=ti();return O(()=>e[t.value]??{})},Bh=()=>{const e=sh();return O(()=>Object.keys(e.value))},al=(e,t)=>{var i;const n=(i=Hi())==null?void 0:i.appContext.components;return n?e in n||nt(e)in n||qn(nt(e))in n:!1},Gs=e=>new Promise(t=>setTimeout(t,e)),Vh=(e,t)=>rt(e)&&e.startsWith(t),Wh=e=>Vh(e,"/");var Uh={"/es/":{backToTop:"Volver arriba"},"/":{backToTop:"Back to top"}};const qh=pe({name:"BackToTop",setup(){const e=ft(),t=qs(Uh),n=vn(),{height:i}=Oh(n),{height:l}=Dh(),{y:o}=Mh(),r=O(()=>e.value.backToTop!==!1&&o.value>100),s=O(()=>o.value/(i.value-l.value)*100);return We(()=>{n.value=document.body}),()=>ge(ei,{name:"back-to-top"},()=>r.value?ge("button",{type:"button",class:"vp-back-to-top-button","aria-label":t.value.backToTop,onClick:()=>{window.scrollTo({top:0,behavior:"smooth"})}},[ge("span",{class:"vp-scroll-progress",role:"progressbar","aria-labelledby":"loadinglabel","aria-valuenow":s.value},ge("svg",ge("circle",{cx:"26",cy:"26",r:"24",fill:"none",stroke:"currentColor","stroke-width":"4","stroke-dasharray":`${Math.PI*s.value*.48} ${Math.PI*(100-s.value)*.48}`}))),ge("div",{class:"back-to-top-icon"})]):null)}}),Gh=xt({rootComponents:[qh]}),Kh=/\b(?:Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini)/i,Qh=()=>typeof window<"u"&&window.navigator&&"userAgent"in window.navigator&&Kh.test(navigator.userAgent),Yh=({delay:e=500,duration:t=2e3,locales:n,selector:i,showInMobile:l})=>{const{copy:o,copied:r}=Ch({legacy:!0,copiedDuring:t}),s=qs(n),a=fn(),c=h=>{if(!h.hasAttribute("copy-code-registered")){const p=document.createElement("button");p.type="button",p.classList.add("vp-copy-code-button"),p.innerHTML='
',p.setAttribute("aria-label",s.value.copy),p.setAttribute("data-copied",s.value.copied),h.parentElement&&h.parentElement.insertBefore(p,h),h.setAttribute("copy-code-registered","")}},u=()=>{bn().then(()=>Gs(e)).then(()=>{i.forEach(h=>{document.querySelectorAll(h).forEach(c)})})},d=(h,p,v)=>{let{innerText:k=""}=p;/language-(shellscript|shell|bash|sh|zsh)/.test(h.classList.toString())&&(k=k.replace(/^ *(\$|>) /gm,"")),o(k).then(()=>{v.classList.add("copied"),Fe(r,()=>{v.classList.remove("copied"),v.blur()},{once:!0})})};We(()=>{const h=!Qh()||l;h&&u(),at("click",p=>{const v=p.target;if(v.matches('div[class*="language-"] > button.copy')){const k=v.parentElement,A=v.nextElementSibling;A&&d(k,A,v)}else if(v.matches('div[class*="language-"] div.vp-copy-icon')){const k=v.parentElement,A=k.parentElement,x=k.nextElementSibling;x&&d(A,x,k)}}),Fe(()=>a.value.path,()=>{h&&u()})})};var Jh={"/es/":{copy:"Copiar código",copied:"Copiado"},"/":{copy:"Copy code",copied:"Copied"}},Xh=['.theme-default-content div[class*="language-"] pre'];const Zh=xt({setup:()=>{Yh({selector:Xh,locales:Jh,duration:2e3,delay:500,showInMobile:!1})}});/*! medium-zoom 1.1.0 | MIT License | https://github.com/francoischalifour/medium-zoom */var Gt=Object.assign||function(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{},i=window.Promise||function(_){function N(){}_(N,N)},l=function(_){var N=_.target;if(N===K){v();return}m.indexOf(N)!==-1&&k({target:N})},o=function(){if(!(H||!b.original)){var _=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;Math.abs(I-_)>$.scrollOffset&&setTimeout(v,150)}},r=function(_){var N=_.key||_.keyCode;(N==="Escape"||N==="Esc"||N===27)&&v()},s=function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},N=_;if(_.background&&(K.style.background=_.background),_.container&&_.container instanceof Object&&(N.container=Gt({},$.container,_.container)),_.template){var te=bi(_.template)?_.template:document.querySelector(_.template);N.template=te}return $=Gt({},$,N),m.forEach(function(se){se.dispatchEvent(rn("medium-zoom:update",{detail:{zoom:T}}))}),T},a=function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return e(Gt({},$,_))},c=function(){for(var _=arguments.length,N=Array(_),te=0;te<_;te++)N[te]=arguments[te];var se=N.reduce(function(R,Y){return[].concat(R,fr(Y))},[]);return se.filter(function(R){return m.indexOf(R)===-1}).forEach(function(R){m.push(R),R.classList.add("medium-zoom-image")}),w.forEach(function(R){var Y=R.type,U=R.listener,Ie=R.options;se.forEach(function($e){$e.addEventListener(Y,U,Ie)})}),T},u=function(){for(var _=arguments.length,N=Array(_),te=0;te<_;te++)N[te]=arguments[te];b.zoomed&&v();var se=N.length>0?N.reduce(function(R,Y){return[].concat(R,fr(Y))},[]):m;return se.forEach(function(R){R.classList.remove("medium-zoom-image"),R.dispatchEvent(rn("medium-zoom:detach",{detail:{zoom:T}}))}),m=m.filter(function(R){return se.indexOf(R)===-1}),T},d=function(_,N){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return m.forEach(function(se){se.addEventListener("medium-zoom:"+_,N,te)}),w.push({type:"medium-zoom:"+_,listener:N,options:te}),T},h=function(_,N){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return m.forEach(function(se){se.removeEventListener("medium-zoom:"+_,N,te)}),w=w.filter(function(se){return!(se.type==="medium-zoom:"+_&&se.listener.toString()===N.toString())}),T},p=function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},N=_.target,te=function(){var R={width:document.documentElement.clientWidth,height:document.documentElement.clientHeight,left:0,top:0,right:0,bottom:0},Y=void 0,U=void 0;if($.container)if($.container instanceof Object)R=Gt({},R,$.container),Y=R.width-R.left-R.right-$.margin*2,U=R.height-R.top-R.bottom-$.margin*2;else{var Ie=bi($.container)?$.container:document.querySelector($.container),$e=Ie.getBoundingClientRect(),Ue=$e.width,je=$e.height,Et=$e.left,Ct=$e.top;R=Gt({},R,{width:Ue,height:je,left:Et,top:Ct})}Y=Y||R.width-$.margin*2,U=U||R.height-$.margin*2;var ct=b.zoomedHd||b.original,Oe=hr(ct)?Y:ct.naturalWidth||Y,S=hr(ct)?U:ct.naturalHeight||U,B=ct.getBoundingClientRect(),j=B.top,G=B.left,ue=B.width,ve=B.height,f=Math.min(Math.max(ue,Oe),Y)/ue,g=Math.min(Math.max(ve,S),U)/ve,y=Math.min(f,g),L=(-G+(Y-ue)/2+$.margin+R.left)/y,E=(-j+(U-ve)/2+$.margin+R.top)/y,M="scale("+y+") translate3d("+L+"px, "+E+"px, 0)";b.zoomed.style.transform=M,b.zoomedHd&&(b.zoomedHd.style.transform=M)};return new i(function(se){if(N&&m.indexOf(N)===-1){se(T);return}var R=function Ue(){H=!1,b.zoomed.removeEventListener("transitionend",Ue),b.original.dispatchEvent(rn("medium-zoom:opened",{detail:{zoom:T}})),se(T)};if(b.zoomed){se(T);return}if(N)b.original=N;else if(m.length>0){var Y=m;b.original=Y[0]}else{se(T);return}if(b.original.dispatchEvent(rn("medium-zoom:open",{detail:{zoom:T}})),I=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,H=!0,b.zoomed=nf(b.original),document.body.appendChild(K),$.template){var U=bi($.template)?$.template:document.querySelector($.template);b.template=document.createElement("div"),b.template.appendChild(U.content.cloneNode(!0)),document.body.appendChild(b.template)}if(b.original.parentElement&&b.original.parentElement.tagName==="PICTURE"&&b.original.currentSrc&&(b.zoomed.src=b.original.currentSrc),document.body.appendChild(b.zoomed),window.requestAnimationFrame(function(){document.body.classList.add("medium-zoom--opened")}),b.original.classList.add("medium-zoom-image--hidden"),b.zoomed.classList.add("medium-zoom-image--opened"),b.zoomed.addEventListener("click",v),b.zoomed.addEventListener("transitionend",R),b.original.getAttribute("data-zoom-src")){b.zoomedHd=b.zoomed.cloneNode(),b.zoomedHd.removeAttribute("srcset"),b.zoomedHd.removeAttribute("sizes"),b.zoomedHd.removeAttribute("loading"),b.zoomedHd.src=b.zoomed.getAttribute("data-zoom-src"),b.zoomedHd.onerror=function(){clearInterval(Ie),console.warn("Unable to reach the zoom image target "+b.zoomedHd.src),b.zoomedHd=null,te()};var Ie=setInterval(function(){b.zoomedHd.complete&&(clearInterval(Ie),b.zoomedHd.classList.add("medium-zoom-image--opened"),b.zoomedHd.addEventListener("click",v),document.body.appendChild(b.zoomedHd),te())},10)}else if(b.original.hasAttribute("srcset")){b.zoomedHd=b.zoomed.cloneNode(),b.zoomedHd.removeAttribute("sizes"),b.zoomedHd.removeAttribute("loading");var $e=b.zoomedHd.addEventListener("load",function(){b.zoomedHd.removeEventListener("load",$e),b.zoomedHd.classList.add("medium-zoom-image--opened"),b.zoomedHd.addEventListener("click",v),document.body.appendChild(b.zoomedHd),te()})}else te()})},v=function(){return new i(function(_){if(H||!b.original){_(T);return}var N=function te(){b.original.classList.remove("medium-zoom-image--hidden"),document.body.removeChild(b.zoomed),b.zoomedHd&&document.body.removeChild(b.zoomedHd),document.body.removeChild(K),b.zoomed.classList.remove("medium-zoom-image--opened"),b.template&&document.body.removeChild(b.template),H=!1,b.zoomed.removeEventListener("transitionend",te),b.original.dispatchEvent(rn("medium-zoom:closed",{detail:{zoom:T}})),b.original=null,b.zoomed=null,b.zoomedHd=null,b.template=null,_(T)};H=!0,document.body.classList.remove("medium-zoom--opened"),b.zoomed.style.transform="",b.zoomedHd&&(b.zoomedHd.style.transform=""),b.template&&(b.template.style.transition="opacity 150ms",b.template.style.opacity=0),b.original.dispatchEvent(rn("medium-zoom:close",{detail:{zoom:T}})),b.zoomed.addEventListener("transitionend",N)})},k=function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},N=_.target;return b.original?v():p({target:N})},A=function(){return $},x=function(){return m},C=function(){return b.original},m=[],w=[],H=!1,I=0,$=n,b={original:null,zoomed:null,zoomedHd:null,template:null};Object.prototype.toString.call(t)==="[object Object]"?$=t:(t||typeof t=="string")&&c(t),$=Gt({margin:0,background:"#fff",scrollOffset:40,container:null,template:null},$);var K=tf($.background);document.addEventListener("click",l),document.addEventListener("keyup",r),document.addEventListener("scroll",o),window.addEventListener("resize",v);var T={open:p,close:v,toggle:k,update:s,clone:a,attach:c,detach:u,on:d,off:h,getOptions:A,getImages:x,getZoomedImage:C};return T};function of(e,t){t===void 0&&(t={});var n=t.insertAt;if(!(typeof document>"u")){var i=document.head||document.getElementsByTagName("head")[0],l=document.createElement("style");l.type="text/css",n==="top"&&i.firstChild?i.insertBefore(l,i.firstChild):i.appendChild(l),l.styleSheet?l.styleSheet.cssText=e:l.appendChild(document.createTextNode(e))}}var rf=".medium-zoom-overlay{position:fixed;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .3s;will-change:opacity}.medium-zoom--opened .medium-zoom-overlay{cursor:pointer;cursor:zoom-out;opacity:1}.medium-zoom-image{cursor:pointer;cursor:zoom-in;transition:transform .3s cubic-bezier(.2,0,.2,1)!important}.medium-zoom-image--hidden{visibility:hidden}.medium-zoom-image--opened{position:relative;cursor:pointer;cursor:zoom-out;will-change:transform}";of(rf);const sf=Symbol("mediumZoom");var af={};const cf=".theme-default-content > img, .theme-default-content :not(a) > img",uf=af,df=300,hf=xt({enhance({app:e,router:t}){const n=lf(uf);n.refresh=(i=cf)=>{n.detach(),n.attach(i)},e.provide(sf,n),t.afterEach(()=>{Gs(df).then(()=>n.refresh())})}});/** + * NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress + * @license MIT + */const de={settings:{minimum:.08,easing:"ease",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,barSelector:'[role="bar"]',parent:"body",template:'
'},status:null,set:e=>{const t=de.isStarted();e=cl(e,de.settings.minimum,1),de.status=e===1?null:e;const n=de.render(!t),i=n.querySelector(de.settings.barSelector),l=de.settings.speed,o=de.settings.easing;return n.offsetWidth,ff(r=>{gi(i,{transform:"translate3d("+gr(e)+"%,0,0)",transition:"all "+l+"ms "+o}),e===1?(gi(n,{transition:"none",opacity:"1"}),n.offsetWidth,setTimeout(()=>{gi(n,{transition:"all "+l+"ms linear",opacity:"0"}),setTimeout(()=>{de.remove(),r()},l)},l)):setTimeout(()=>r(),l)}),de},isStarted:()=>typeof de.status=="number",start:()=>{de.status||de.set(0);const e=()=>{setTimeout(()=>{de.status&&(de.trickle(),e())},de.settings.trickleSpeed)};return de.settings.trickle&&e(),de},done:e=>!e&&!de.status?de:de.inc(.3+.5*Math.random()).set(1),inc:e=>{let t=de.status;return t?(typeof e!="number"&&(e=(1-t)*cl(Math.random()*t,.1,.95)),t=cl(t+e,0,.994),de.set(t)):de.start()},trickle:()=>de.inc(Math.random()*de.settings.trickleRate),render:e=>{if(de.isRendered())return document.getElementById("nprogress");pr(document.documentElement,"nprogress-busy");const t=document.createElement("div");t.id="nprogress",t.innerHTML=de.settings.template;const n=t.querySelector(de.settings.barSelector),i=e?"-100":gr(de.status||0),l=document.querySelector(de.settings.parent);return gi(n,{transition:"all 0 linear",transform:"translate3d("+i+"%,0,0)"}),l!==document.body&&pr(l,"nprogress-custom-parent"),l==null||l.appendChild(t),t},remove:()=>{mr(document.documentElement,"nprogress-busy"),mr(document.querySelector(de.settings.parent),"nprogress-custom-parent");const e=document.getElementById("nprogress");e&&gf(e)},isRendered:()=>!!document.getElementById("nprogress")},cl=(e,t,n)=>en?n:e,gr=e=>(-1+e)*100,ff=function(){const e=[];function t(){const n=e.shift();n&&n(t)}return function(n){e.push(n),e.length===1&&t()}}(),gi=function(){const e=["Webkit","O","Moz","ms"],t={};function n(r){return r.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,function(s,a){return a.toUpperCase()})}function i(r){const s=document.body.style;if(r in s)return r;let a=e.length;const c=r.charAt(0).toUpperCase()+r.slice(1);let u;for(;a--;)if(u=e[a]+c,u in s)return u;return r}function l(r){return r=n(r),t[r]??(t[r]=i(r))}function o(r,s,a){s=l(s),r.style[s]=a}return function(r,s){for(const a in s){const c=s[a];c!==void 0&&Object.prototype.hasOwnProperty.call(s,a)&&o(r,a,c)}}}(),Ks=(e,t)=>(typeof e=="string"?e:eo(e)).indexOf(" "+t+" ")>=0,pr=(e,t)=>{const n=eo(e),i=n+t;Ks(n,t)||(e.className=i.substring(1))},mr=(e,t)=>{const n=eo(e);if(!Ks(e,t))return;const i=n.replace(" "+t+" "," ");e.className=i.substring(1,i.length-1)},eo=e=>(" "+(e.className||"")+" ").replace(/\s+/gi," "),gf=e=>{e&&e.parentNode&&e.parentNode.removeChild(e)},pf=()=>{We(()=>{const e=ln(),t=new Set;t.add(e.currentRoute.value.path),e.beforeEach(n=>{t.has(n.path)||de.start()}),e.afterEach(n=>{t.add(n.path),de.done()})})},mf=xt({setup(){pf()}}),vf=JSON.parse(`{"docsRepo":"https://github.com/SpeciesFileGroup/taxonworks_doc","docsBranch":"development","docsDir":"docs","editLinkPattern":":repo/edit/:branch/:path","logo":"/images/taxonworks-black-circle.svg","logoDark":"/images/taxonworks-white-circle.svg","locales":{"/":{"lang":"en-US","navbar":[{"text":"Guide","link":"/guide/"},{"text":"Develop","link":"/develop/"},{"text":"About","link":"/about/"},{"text":"Start a project","link":"/guide/start-a-project"},{"text":"Cite","link":"/about/citing-taxonworks"},{"text":"API","link":"https://api.taxonworks.org/"},{"text":"Bug report","link":"https://github.com/SpeciesFileGroup/taxonworks/issues/new/choose"},{"text":"Contact","link":"/about/contact"},{"text":"GitHub","children":[{"text":"Docs","link":"https://github.com/SpeciesFileGroup/taxonworks_doc"},{"text":"Code","link":"https://github.com/SpeciesFileGroup/taxonworks"},{"text":"API","link":"https://github.com/SpeciesFileGroup/taxonworks_api"}]}],"sidebar":{"/develop/":[{"text":"Develop","link":"/develop/","children":["/develop/README.md","/develop/installation.md","/develop/contributing.md","/develop/bug-reporting.md","/develop/coding.md",{"text":"Data","link":"/develop/Data/","children":["/develop/Data/README.md","/develop/Data/models.md","/develop/Data/tables.md"]}]}],"/guide/":[{"text":"Guide","link":"/guide/","children":["/guide/README.md","/guide/start-a-project.md","/guide/migrate-to-TaxonWorks.md","/guide/getting-started.md",{"text":"Manual","link":"/guide/Manual/","children":["/guide/Manual/README.md","/guide/Manual/conventions.md",{"text":"Sources","link":"/guide/Manual/Sources/","children":["/guide/Manual/Sources/README.md"]},"/guide/Manual/collectionobject.md","/guide/Manual/collecting_event.md","/guide/Manual/digitization.md","/guide/Manual/matrices.md","/guide/Manual/identifiers.md","/guide/Manual/customization.md","/guide/Manual/nomenclature.md","/guide/Manual/annotation.md"]},"/guide/community-resources.md","/guide/data-quality.md","/guide/import.md","/guide/export.md","/guide/videos.md",{"text":"FAQs","link":"/guide/FAQs/","children":["/guide/FAQs/README.md"]},"/guide/api.md","/guide/other-documents.md"]}],"/about/":[{"text":"About","link":"/about/","children":["/about/README.md","/about/contact.md","/about/events.md","/about/citing-taxonworks.md","/about/glossary.md","/about/branding.md"]}]},"sidebarDepth":3,"selectLanguageName":"English"},"/es/":{"navbar":[{"text":"Guía","link":"/es/guide/"},{"text":"Desarrollar","link":"/es/develop/"},{"text":"Comience un proyecto","link":"/es/guide/start-a-project"},{"text":"Citar","link":"/es/about/citing-taxonworks"},{"text":"API","link":"https://api.taxonworks.org/"},{"text":"Informe un error","link":"https://github.com/SpeciesFileGroup/taxonworks/issues/new/choose"},{"text":"Contacto","link":"/about/contact"},{"text":"GitHub","children":[{"text":"Documentación","link":"https://github.com/SpeciesFileGroup/taxonworks_doc"},{"text":"Codigo","link":"https://github.com/SpeciesFileGroup/taxonworks"},{"text":"API","link":"https://github.com/SpeciesFileGroup/taxonworks_api"}]}],"selectLanguageName":"Español","selectLanguageText":"Español","selectLanguageAriaLabel":"Español","sidebar":{"/es/develop/":[{"text":"Desarollar","link":"/es/develop/","children":["/es/develop/README.md","/es/develop/installation.md","/es/develop/contributing.md","/es/develop/bug-reporting.md"]}],"/es/guide/":[{"text":"Guía","link":"/es/guide/","children":["/es/guide/README.md"]}],"/es/about/":[{"text":"Acerca","link":"/es/about/","children":["/es/about/README.md"]}]},"sidebarDepth":3,"editLinkText":"Edita esta pagina en GitHub","lastUpdatedText":"Ultima actualización","contributorsText":"Contribuidores","tip":"Tip","warning":"Advertencia","danger":"Cuidado","notFound":["Esta pagina no existe","Parece que ha entrado a un link erroneo"],"backToHome":"Volver al inicio","openInNewWindow":"Abrir en nueva ventana","toggleDarkMode":"Alternar al modo oscuro","toggleSidebar":"Alternar barra lateral"}},"colorMode":"auto","colorModeSwitch":true,"navbar":[],"repo":null,"selectLanguageText":"Languages","selectLanguageAriaLabel":"Select language","sidebar":"auto","sidebarDepth":2,"editLink":true,"editLinkText":"Edit this page","lastUpdated":true,"lastUpdatedText":"Last Updated","contributors":true,"contributorsText":"Contributors","notFound":["There's nothing here.","How did we get here?","That's a Four-Oh-Four.","Looks like we've got some broken links."],"backToHome":"Take me home","openInNewWindow":"open in new window","toggleColorMode":"toggle color mode","toggleSidebar":"toggle sidebar"}`),bf=ae(vf),Qs=()=>bf,Ys=Symbol(""),yf=()=>{const e=Ve(Ys);if(!e)throw new Error("useThemeLocaleData() is called without provider.");return e},kf=(e,t)=>{const{locales:n,...i}=e;return{...i,...n==null?void 0:n[t]}},_f=xt({enhance({app:e}){const t=Qs(),n=e._context.provides[Kl],i=O(()=>kf(t.value,n.routeLocale.value));e.provide(Ys,i),Object.defineProperties(e.config.globalProperties,{$theme:{get(){return t.value}},$themeLocale:{get(){return i.value}}})}}),wf=pe({__name:"Badge",props:{type:{type:String,required:!1,default:"tip"},text:{type:String,required:!1,default:""},vertical:{type:String,required:!1,default:void 0}},setup(e){return(t,n)=>(V(),Z("span",{class:Ke(["badge",e.type]),style:Gn({verticalAlign:e.vertical})},[Ee(t.$slots,"default",{},()=>[gt(Ce(e.text),1)])],6))}}),xe=(e,t)=>{const n=e.__vccOpts||e;for(const[i,l]of t)n[i]=l;return n},xf=xe(wf,[["__file","Badge.vue"]]),Ef=pe({name:"CodeGroup",slots:Object,setup(e,{slots:t}){const n=ae([]),i=ae(-1),l=Us("vuepress-code-group",{}),o=O(()=>n.value.map(c=>c.innerText).join(","));We(()=>{Fe(()=>l.value[o.value],(c=-1)=>{i.value!==c&&(i.value=c)},{immediate:!0}),Fe(i,c=>{l.value[o.value]!==c&&(l.value[o.value]=c)})});const r=(c=i.value)=>{c{c>0?i.value=c-1:i.value=n.value.length-1,n.value[i.value].focus()},a=(c,u)=>{c.key===" "||c.key==="Enter"?(c.preventDefault(),i.value=u):c.key==="ArrowRight"?(c.preventDefault(),r(u)):c.key==="ArrowLeft"&&(c.preventDefault(),s(u))};return()=>{var u;const c=(((u=t.default)==null?void 0:u.call(t))||[]).filter(d=>d.type.name==="CodeGroupItem").map(d=>(d.props===null&&(d.props={}),d));return c.length===0?null:(i.value<0||i.value>c.length-1?(i.value=c.findIndex(d=>d.props.active===""||d.props.active===!0),i.value===-1&&(i.value=0)):c.forEach((d,h)=>{d.props.active=h===i.value}),ge("div",{class:"code-group"},[ge("div",{class:"code-group__nav",role:"tablist"},c.map((d,h)=>{const p=h===i.value;return ge("button",{ref:v=>{v&&(n.value[h]=v)},class:{"code-group__nav-tab":!0,"code-group__nav-tab-active":p},role:"tab",ariaSelected:p,onClick:()=>i.value=h,onKeydown:v=>a(v,h)},d.props.title)})),c]))}}}),Cf=pe({name:"CodeGroupItem",__name:"CodeGroupItem",props:{title:{type:String,required:!0},active:{type:Boolean,required:!1,default:!1}},setup(e){return(t,n)=>(V(),Z("div",{class:Ke(["code-group-item",{"code-group-item__active":e.active}]),role:"tabpanel"},[Ee(t.$slots,"default")],2))}}),Sf=xe(Cf,[["__file","CodeGroupItem.vue"]]),Tf=()=>Qs(),Ne=()=>yf(),Js=Symbol(""),to=()=>{const e=Ve(Js);if(!e)throw new Error("useDarkMode() is called without provider.");return e},Lf=()=>{const e=Ne(),t=Rh(),n=Us("vuepress-color-scheme",e.value.colorMode),i=O({get(){return e.value.colorModeSwitch?n.value==="auto"?t.value:n.value==="dark":e.value.colorMode==="dark"},set(l){l===t.value?n.value="auto":n.value=l?"dark":"light"}});en(Js,i),Af(i)},Af=e=>{const t=(n=e.value)=>{const i=window==null?void 0:window.document.querySelector("html");i==null||i.classList.toggle("dark",n)};We(()=>{Fe(e,t,{immediate:!0})}),Fi(()=>t())},Pf="http://.",Rf=()=>{const e=ln(),t=wt();return n=>{if(n)if(Wh(n))t.path!==n&&e.push(n);else if(Cs(n))window&&window.open(n);else{const i=t.path.slice(0,t.path.lastIndexOf("/"));e.push(new URL(`${i}/${encodeURI(n)}`,Pf).pathname)}}};let ul=null,xn=null;const If={wait:()=>ul,pending:()=>{ul=new Promise(e=>xn=e)},resolve:()=>{xn==null||xn(),ul=null,xn=null}},Xs=()=>If,Zs=e=>{const{notFound:t,meta:n,path:i}=Vn(e);return t?{text:i,link:i}:{text:n.title||i,link:i}},vr=e=>decodeURI(e).replace(/#.*$/,"").replace(/(index)?\.(md|html)$/,""),Of=(e,t)=>{if(t.hash===e)return!0;const n=vr(t.path),i=vr(e);return n===i},ea=(e,t)=>e.link&&Of(e.link,t)?!0:e.children?e.children.some(n=>ea(n,t)):!1,ta=e=>!zi(e)||/github\.com/.test(e)?"GitHub":/bitbucket\.org/.test(e)?"Bitbucket":/gitlab\.com/.test(e)?"GitLab":/gitee\.com/.test(e)?"Gitee":null,Mf={GitHub:":repo/edit/:branch/:path",GitLab:":repo/-/edit/:branch/:path",Gitee:":repo/edit/:branch/:path",Bitbucket:":repo/src/:branch/:path?mode=edit&spa=0&at=:branch&fileviewer=file-view-default"},Df=({docsRepo:e,editLinkPattern:t})=>{if(t)return t;const n=ta(e);return n!==null?Mf[n]:null},Nf=({docsRepo:e,docsBranch:t,docsDir:n,filePathRelative:i,editLinkPattern:l})=>{if(!i)return null;const o=Df({docsRepo:e,editLinkPattern:l});return o?o.replace(/:repo/,zi(e)?e:`https://github.com/${e}`).replace(/:branch/,t).replace(/:path/,Ts(`${Ss(n)}/${i}`)):null},na=Symbol("sidebarItems"),no=()=>{const e=Ve(na);if(!e)throw new Error("useSidebarItems() is called without provider.");return e},$f=()=>{const e=Ne(),t=ft(),n=fn(),i=wt(),l=O(()=>Ff(t.value,e.value,n.value,i.path));en(na,l)},Ff=(e,t,n,i)=>{const l=e.sidebar??t.sidebar??"auto",o=e.sidebarDepth??t.sidebarDepth??2;return e.home||l===!1?[]:l==="auto"?ia(n,o):Array.isArray(l)?la(n,i,l,o):Ul(l)?jf(n,i,l,o):[]},Hf=(e,t)=>({text:e.title,link:e.link,children:io(e.children,t)}),io=(e,t)=>t>0?e.map(n=>Hf(n,t-1)):[],ia=(e,t)=>[{text:e.title,children:io(e.headers,t)}],la=(e,t,n,i)=>{const l=o=>{var s;let r;if(rt(o)?r=Zs(o):r=o,r.children)return{...r,children:r.children.map(a=>l(a))};if(r.link===t){const a=((s=e.headers[0])==null?void 0:s.level)===1?e.headers[0].children:e.headers;return{...r,children:io(a,i)}}return r};return n.map(o=>l(o))},jf=(e,t,n,i)=>{const l=Ls(n,t),o=n[l]??[];return o==="heading"?ia(e,i):la(e,t,o,i)},zf="719px",Bf={mobile:zf};var Wn;(function(e){e.MOBILE="mobile"})(Wn||(Wn={}));var kr;const Vf={[Wn.MOBILE]:Number.parseInt((kr=Bf.mobile)==null?void 0:kr.replace("px",""),10)},oa=(e,t)=>{const n=Vf[e];Number.isInteger(n)&&(at("orientationchange",()=>t(n),!1),at("resize",()=>t(n),!1),We(()=>{t(n)}))},Wf={},Uf={class:"theme-default-content"};function qf(e,t){const n=Yn("Content");return V(),Z("div",Uf,[re(n)])}const Gf=xe(Wf,[["render",qf],["__file","HomeContent.vue"]]),Kf={key:0,class:"features"},Qf=pe({__name:"HomeFeatures",setup(e){const t=ft(),n=O(()=>Array.isArray(t.value.features)?t.value.features:[]);return(i,l)=>n.value.length?(V(),Z("div",Kf,[(V(!0),Z(ye,null,Ft(n.value,o=>(V(),Z("div",{key:o.title,class:"feature"},[ie("h2",null,Ce(o.title),1),ie("p",null,Ce(o.details),1)]))),128))])):Re("",!0)}}),Yf=xe(Qf,[["__file","HomeFeatures.vue"]]),Jf=["innerHTML"],Xf=["textContent"],Zf=pe({__name:"HomeFooter",setup(e){const t=ft(),n=O(()=>t.value.footer),i=O(()=>t.value.footerHtml);return(l,o)=>n.value?(V(),Z(ye,{key:0},[i.value?(V(),Z("div",{key:0,class:"footer",innerHTML:n.value},null,8,Jf)):(V(),Z("div",{key:1,class:"footer",textContent:Ce(n.value)},null,8,Xf))],64)):Re("",!0)}}),eg=xe(Zf,[["__file","HomeFooter.vue"]]),tg={class:"hero"},ng={key:0,id:"main-title"},ig={key:1,class:"description"},lg={key:2,class:"actions"},og=pe({__name:"HomeHero",setup(e){const t=ft(),n=Ql(),i=to(),l=O(()=>i.value&&t.value.heroImageDark!==void 0?t.value.heroImageDark:t.value.heroImage),o=O(()=>t.value.heroAlt||s.value||"hero"),r=O(()=>t.value.heroHeight||280),s=O(()=>t.value.heroText===null?null:t.value.heroText||n.value.title||"Hello"),a=O(()=>t.value.tagline===null?null:t.value.tagline||n.value.description||"Welcome to your VuePress site"),c=O(()=>Array.isArray(t.value.actions)?t.value.actions.map(({text:d,link:h,type:p="primary"})=>({text:d,link:h,type:p})):[]),u=()=>{if(!l.value)return null;const d=ge("img",{src:Jl(l.value),alt:o.value,height:r.value});return t.value.heroImageDark===void 0?d:ge(Yl,()=>d)};return(d,h)=>(V(),Z("header",tg,[re(u),s.value?(V(),Z("h1",ng,Ce(s.value),1)):Re("",!0),a.value?(V(),Z("p",ig,Ce(a.value),1)):Re("",!0),c.value.length?(V(),Z("p",lg,[(V(!0),Z(ye,null,Ft(c.value,p=>(V(),Se(Q(kt),{key:p.text,class:Ke(["action-button",[p.type]]),config:p},null,8,["class","config"]))),128))])):Re("",!0)]))}}),rg=xe(og,[["__file","HomeHero.vue"]]),sg={class:"home"},ag=pe({__name:"Home",setup(e){return(t,n)=>(V(),Z("main",sg,[re(rg),re(Yf),re(Gf),re(eg)]))}}),cg=xe(ag,[["__file","Home.vue"]]),ug=["aria-hidden"],dg=pe({__name:"NavbarBrand",setup(e){const t=ti(),n=Ql(),i=Ne(),l=to(),o=O(()=>i.value.home||t.value),r=O(()=>n.value.title),s=O(()=>l.value&&i.value.logoDark!==void 0?i.value.logoDark:i.value.logo),a=O(()=>i.value.logoAlt??r.value),c=O(()=>r.value.toLocaleUpperCase().trim()===a.value.toLocaleUpperCase().trim()),u=()=>{if(!s.value)return null;const d=ge("img",{class:"logo",src:Jl(s.value),alt:a.value});return i.value.logoDark===void 0?d:ge(Yl,()=>d)};return(d,h)=>(V(),Se(Q(Wi),{to:o.value},{default:Te(()=>[re(u),r.value?(V(),Z("span",{key:0,class:Ke(["site-name",{"can-hide":s.value}]),"aria-hidden":c.value},Ce(r.value),11,ug)):Re("",!0)]),_:1},8,["to"]))}}),hg=xe(dg,[["__file","NavbarBrand.vue"]]),fg=pe({__name:"DropdownTransition",setup(e){const t=i=>{i.style.height=i.scrollHeight+"px"},n=i=>{i.style.height=""};return(i,l)=>(V(),Se(ei,{name:"dropdown",onEnter:t,onAfterEnter:n,onBeforeLeave:t},{default:Te(()=>[Ee(i.$slots,"default")]),_:3}))}}),ra=xe(fg,[["__file","DropdownTransition.vue"]]),gg=["aria-label"],pg={class:"title"},mg=ie("span",{class:"arrow down"},null,-1),vg=["aria-label"],bg={class:"title"},yg={class:"navbar-dropdown"},kg={class:"navbar-dropdown-subtitle"},_g={key:1},wg={class:"navbar-dropdown-subitem-wrapper"},xg=pe({__name:"NavbarDropdown",props:{item:{type:Object,required:!0}},setup(e){const t=e,{item:n}=Hl(t),i=O(()=>n.value.ariaLabel||n.value.text),l=ae(!1),o=wt();Fe(()=>o.path,()=>{l.value=!1});const r=a=>{a.detail===0?l.value=!l.value:l.value=!1},s=(a,c)=>c[c.length-1]===a;return(a,c)=>(V(),Z("div",{class:Ke(["navbar-dropdown-wrapper",{open:l.value}])},[ie("button",{class:"navbar-dropdown-title",type:"button","aria-label":i.value,onClick:r},[ie("span",pg,Ce(Q(n).text),1),mg],8,gg),ie("button",{class:"navbar-dropdown-title-mobile",type:"button","aria-label":i.value,onClick:c[0]||(c[0]=u=>l.value=!l.value)},[ie("span",bg,Ce(Q(n).text),1),ie("span",{class:Ke(["arrow",l.value?"down":"right"])},null,2)],8,vg),re(ra,null,{default:Te(()=>[xi(ie("ul",yg,[(V(!0),Z(ye,null,Ft(Q(n).children,u=>(V(),Z("li",{key:u.text,class:"navbar-dropdown-item"},[u.children?(V(),Z(ye,{key:0},[ie("h4",kg,[u.link?(V(),Se(Q(kt),{key:0,config:u,onFocusout:d=>s(u,Q(n).children)&&u.children.length===0&&(l.value=!1)},null,8,["config","onFocusout"])):(V(),Z("span",_g,Ce(u.text),1))]),ie("ul",wg,[(V(!0),Z(ye,null,Ft(u.children,d=>(V(),Z("li",{key:d.link,class:"navbar-dropdown-subitem"},[re(Q(kt),{config:d,onFocusout:h=>s(d,u.children)&&s(u,Q(n).children)&&(l.value=!1)},null,8,["config","onFocusout"])]))),128))])],64)):(V(),Se(Q(kt),{key:1,config:u,onFocusout:d=>s(u,Q(n).children)&&(l.value=!1)},null,8,["config","onFocusout"]))]))),128))],512),[[Ai,l.value]])]),_:1})],2))}}),Eg=xe(xg,[["__file","NavbarDropdown.vue"]]),Cg=["aria-label"],Sg=pe({__name:"NavbarItems",setup(e){const t=()=>{const d=wt(),h=Bh(),p=ti(),v=Hs(),k=Ql(),A=Tf(),x=Ne();return O(()=>{const C=Object.keys(v.value.locales);if(C.length<2)return[];const m=d.path,w=d.fullPath;return[{text:`${x.value.selectLanguageText}`,ariaLabel:`${x.value.selectLanguageAriaLabel??x.value.selectLanguageText}`,children:C.map(I=>{var _,N;const $=((_=v.value.locales)==null?void 0:_[I])??{},b=((N=A.value.locales)==null?void 0:N[I])??{},K=`${$.lang}`,T=b.selectLanguageName??K;if(K===k.value.lang)return{text:T,activeMatch:/./,link:d.hash??"#"};const W=m.replace(p.value,I);return{text:T,link:h.value.some(te=>te===W)?w.replace(m,W):b.home??I}})}]})},n=()=>{const d=Ne(),h=O(()=>d.value.repo),p=O(()=>h.value?ta(h.value):null),v=O(()=>h.value&&!zi(h.value)?`https://github.com/${h.value}`:h.value),k=O(()=>v.value?d.value.repoLabel?d.value.repoLabel:p.value===null?"Source":p.value:null);return O(()=>!v.value||!k.value?[]:[{text:k.value,link:v.value}])},i=d=>rt(d)?Zs(d):d.children?{...d,children:d.children.map(h=>i(h))}:d,l=()=>{const d=Ne();return O(()=>(d.value.navbar||[]).map(h=>i(h)))},o=ae(!1),r=l(),s=t(),a=n(),c=O(()=>[...r.value,...s.value,...a.value]);oa(Wn.MOBILE,d=>{window.innerWidthNe().value.navbarLabel??"site navigation");return(d,h)=>c.value.length?(V(),Z("nav",{key:0,class:"navbar-items","aria-label":u.value},[(V(!0),Z(ye,null,Ft(c.value,p=>(V(),Z("div",{key:p.text,class:"navbar-item"},["children"in p?(V(),Se(Eg,{key:0,item:p,class:Ke(o.value?"mobile":"")},null,8,["item","class"])):(V(),Se(Q(kt),{key:1,config:p},null,8,["config"]))]))),128))],8,Cg)):Re("",!0)}}),sa=xe(Sg,[["__file","NavbarItems.vue"]]),Tg=["title"],Lg={class:"icon",focusable:"false",viewBox:"0 0 32 32"},Ag=eu('',9),Pg=[Ag],Rg={class:"icon",focusable:"false",viewBox:"0 0 32 32"},Ig=ie("path",{d:"M13.502 5.414a15.075 15.075 0 0 0 11.594 18.194a11.113 11.113 0 0 1-7.975 3.39c-.138 0-.278.005-.418 0a11.094 11.094 0 0 1-3.2-21.584M14.98 3a1.002 1.002 0 0 0-.175.016a13.096 13.096 0 0 0 1.825 25.981c.164.006.328 0 .49 0a13.072 13.072 0 0 0 10.703-5.555a1.01 1.01 0 0 0-.783-1.565A13.08 13.08 0 0 1 15.89 4.38A1.015 1.015 0 0 0 14.98 3z",fill:"currentColor"},null,-1),Og=[Ig],Mg=pe({__name:"ToggleColorModeButton",setup(e){const t=Ne(),n=to(),i=()=>{n.value=!n.value};return(l,o)=>(V(),Z("button",{class:"toggle-color-mode-button",title:Q(t).toggleColorMode,onClick:i},[xi((V(),Z("svg",Lg,Pg,512)),[[Ai,!Q(n)]]),xi((V(),Z("svg",Rg,Og,512)),[[Ai,Q(n)]])],8,Tg))}}),Dg=xe(Mg,[["__file","ToggleColorModeButton.vue"]]),Ng=["title"],$g=ie("div",{class:"icon","aria-hidden":"true"},[ie("span"),ie("span"),ie("span")],-1),Fg=[$g],Hg=pe({__name:"ToggleSidebarButton",emits:["toggle"],setup(e){const t=Ne();return(n,i)=>(V(),Z("div",{class:"toggle-sidebar-button",title:Q(t).toggleSidebar,"aria-expanded":"false",role:"button",tabindex:"0",onClick:i[0]||(i[0]=l=>n.$emit("toggle"))},Fg,8,Ng))}}),jg=xe(Hg,[["__file","ToggleSidebarButton.vue"]]),zg=pe({__name:"Navbar",emits:["toggle-sidebar"],setup(e){const t=Ne(),n=ae(null),i=ae(null),l=ae(0),o=O(()=>l.value?{maxWidth:l.value+"px"}:{}),r=(s,a)=>{var d,h,p;const c=(p=(h=(d=s==null?void 0:s.ownerDocument)==null?void 0:d.defaultView)==null?void 0:h.getComputedStyle(s,null))==null?void 0:p[a],u=Number.parseInt(c,10);return Number.isNaN(u)?0:u};return oa(Wn.MOBILE,s=>{var c;const a=r(n.value,"paddingLeft")+r(n.value,"paddingRight");window.innerWidth{const c=Yn("NavbarSearch");return V(),Z("header",{ref_key:"navbar",ref:n,class:"navbar"},[re(jg,{onToggle:a[0]||(a[0]=u=>s.$emit("toggle-sidebar"))}),ie("span",{ref_key:"navbarBrand",ref:i},[re(hg)],512),ie("div",{class:"navbar-items-wrapper",style:Gn(o.value)},[Ee(s.$slots,"before"),re(sa,{class:"can-hide"}),Ee(s.$slots,"after"),Q(t).colorModeSwitch?(V(),Se(Dg,{key:0})):Re("",!0),re(c)],4)],512)}}}),Bg=xe(zg,[["__file","Navbar.vue"]]),Vg={class:"vp-page-meta"},Wg={key:0,class:"vp-meta-item edit-link"},Ug=ie("svg",{class:"icon",viewBox:"0 0 1024 1024"},[ie("g",{fill:"currentColor"},[ie("path",{d:"M430.818 653.65a60.46 60.46 0 0 1-50.96-93.281l71.69-114.012 7.773-10.365L816.038 80.138A60.46 60.46 0 0 1 859.225 62a60.46 60.46 0 0 1 43.186 18.138l43.186 43.186a60.46 60.46 0 0 1 0 86.373L588.879 565.55l-8.637 8.637-117.466 68.234a60.46 60.46 0 0 1-31.958 11.229z"}),ie("path",{d:"M728.802 962H252.891A190.883 190.883 0 0 1 62.008 771.98V296.934a190.883 190.883 0 0 1 190.883-192.61h267.754a60.46 60.46 0 0 1 0 120.92H252.891a69.962 69.962 0 0 0-69.098 69.099V771.98a69.962 69.962 0 0 0 69.098 69.098h475.911A69.962 69.962 0 0 0 797.9 771.98V503.363a60.46 60.46 0 1 1 120.922 0V771.98A190.883 190.883 0 0 1 728.802 962z"})])],-1),qg={class:"vp-meta-item git-info"},Gg={key:0,class:"vp-meta-item last-updated"},Kg={class:"meta-item-label"},Qg={class:"meta-item-info"},Yg={key:1,class:"vp-meta-item contributors"},Jg={class:"meta-item-label"},Xg={class:"meta-item-info"},Zg=["title"],ep=pe({__name:"PageMeta",setup(e){const t=()=>{const a=Ne(),c=fn(),u=ft();return O(()=>{if(!(u.value.editLink??a.value.editLink??!0))return null;const{repo:h,docsRepo:p=h,docsBranch:v="main",docsDir:k="",editLinkText:A}=a.value;if(!p)return null;const x=Nf({docsRepo:p,docsBranch:v,docsDir:k,filePathRelative:c.value.filePathRelative,editLinkPattern:u.value.editLinkPattern??a.value.editLinkPattern});return x?{text:A??"Edit this page",link:x}:null})},n=()=>{const a=Ne(),c=fn(),u=ft();return O(()=>{var p,v;return!(u.value.lastUpdated??a.value.lastUpdated??!0)||!((p=c.value.git)!=null&&p.updatedTime)?null:new Date((v=c.value.git)==null?void 0:v.updatedTime).toLocaleString()})},i=()=>{const a=Ne(),c=fn(),u=ft();return O(()=>{var h;return u.value.contributors??a.value.contributors??!0?((h=c.value.git)==null?void 0:h.contributors)??null:null})},l=Ne(),o=t(),r=n(),s=i();return(a,c)=>{const u=Yn("ClientOnly");return V(),Z("footer",Vg,[Q(o)?(V(),Z("div",Wg,[re(Q(kt),{class:"label",config:Q(o)},{before:Te(()=>[Ug]),_:1},8,["config"])])):Re("",!0),ie("div",qg,[Q(r)?(V(),Z("div",Gg,[ie("span",Kg,Ce(Q(l).lastUpdatedText)+": ",1),re(u,null,{default:Te(()=>[ie("span",Qg,Ce(Q(r)),1)]),_:1})])):Re("",!0),Q(s)&&Q(s).length?(V(),Z("div",Yg,[ie("span",Jg,Ce(Q(l).contributorsText)+": ",1),ie("span",Xg,[(V(!0),Z(ye,null,Ft(Q(s),(d,h)=>(V(),Z(ye,{key:h},[ie("span",{class:"contributor",title:`email: ${d.email}`},Ce(d.name),9,Zg),h!==Q(s).length-1?(V(),Z(ye,{key:0},[gt(", ")],64)):Re("",!0)],64))),128))])])):Re("",!0)])])}}}),tp=xe(ep,[["__file","PageMeta.vue"]]),np=["aria-label"],ip={class:"hint"},lp=ie("span",{class:"arrow left"},null,-1),op={class:"link"},rp={class:"hint"},sp=ie("span",{class:"arrow right"},null,-1),ap={class:"link"},cp=pe({__name:"PageNav",setup(e){const t=(d,h)=>{if(d===!1)return null;if(rt(d)){const{notFound:p,meta:v,path:k}=Vn(d,h);return p?{text:k,link:k}:{text:v.title||k,link:k}}return Ul(d)?{...d,link:Vn(d.link,h).path}:!1},n=(d,h,p)=>{const v=d.findIndex(k=>k.link===h);if(v!==-1){const k=d[v+p];return k!=null&&k.link?k:null}for(const k of d)if(k.children){const A=n(k.children,h,p);if(A)return A}return null},i=ft(),l=no(),o=Ne(),r=wt(),s=Rf(),a=O(()=>{const d=t(i.value.prev,r.path);return d!==!1?d:n(l.value,r.path,-1)}),c=O(()=>{const d=t(i.value.next,r.path);return d!==!1?d:n(l.value,r.path,1)}),u=O(()=>Ne().value.pageNavbarLabel??"page navigation");return at("keydown",d=>{d.altKey&&(d.key==="ArrowRight"?c.value&&(s(c.value.link),d.preventDefault()):d.key==="ArrowLeft"&&a.value&&(s(a.value.link),d.preventDefault()))}),(d,h)=>a.value||c.value?(V(),Z("nav",{key:0,class:"vp-page-nav","aria-label":u.value},[a.value?(V(),Se(Q(kt),{key:0,class:"prev",config:a.value},{default:Te(()=>[ie("div",ip,[lp,gt(" "+Ce(Q(o).prev??"Prev"),1)]),ie("div",op,[ie("span",null,Ce(a.value.text),1)])]),_:1},8,["config"])):Re("",!0),c.value?(V(),Se(Q(kt),{key:1,class:"next",config:c.value},{default:Te(()=>[ie("div",rp,[gt(Ce(Q(o).next??"Next")+" ",1),sp]),ie("div",ap,[ie("span",null,Ce(c.value.text),1)])]),_:1},8,["config"])):Re("",!0)],8,np)):Re("",!0)}}),up=xe(cp,[["__file","PageNav.vue"]]),dp={class:"page"},hp={class:"theme-default-content"},fp=pe({__name:"Page",setup(e){return(t,n)=>{const i=Yn("Content");return V(),Z("main",dp,[Ee(t.$slots,"top"),ie("div",hp,[Ee(t.$slots,"content-top"),re(i),Ee(t.$slots,"content-bottom")]),re(tp),re(up),Ee(t.$slots,"bottom")])}}}),gp=xe(fp,[["__file","Page.vue"]]),pp={class:"sidebar-item-children"},mp=pe({__name:"SidebarItem",props:{item:{type:Object,required:!0},depth:{type:Number,required:!1,default:0}},setup(e){const t=e,{item:n,depth:i}=Hl(t),l=wt(),o=ln(),r=O(()=>ea(n.value,l)),s=O(()=>({"sidebar-item":!0,"sidebar-heading":i.value===0,active:r.value,collapsible:n.value.collapsible})),a=O(()=>n.value.collapsible?r.value:!0),[c,u]=xh(a.value),d=p=>{n.value.collapsible&&(p.preventDefault(),u())},h=o.afterEach(p=>{bn(()=>{c.value=a.value})});return $i(()=>{h()}),(p,v)=>{var A;const k=Yn("SidebarItem",!0);return V(),Z("li",null,[Q(n).link?(V(),Se(Q(kt),{key:0,class:Ke(s.value),config:Q(n)},null,8,["class","config"])):(V(),Z("p",{key:1,tabindex:"0",class:Ke(s.value),onClick:d,onKeydown:Fu(d,["enter"])},[gt(Ce(Q(n).text)+" ",1),Q(n).collapsible?(V(),Z("span",{key:0,class:Ke(["arrow",Q(c)?"down":"right"])},null,2)):Re("",!0)],34)),(A=Q(n).children)!=null&&A.length?(V(),Se(ra,{key:2},{default:Te(()=>[xi(ie("ul",pp,[(V(!0),Z(ye,null,Ft(Q(n).children,x=>(V(),Se(k,{key:`${Q(i)}${x.text}${x.link}`,item:x,depth:Q(i)+1},null,8,["item","depth"]))),128))],512),[[Ai,Q(c)]])]),_:1})):Re("",!0)])}}}),vp=xe(mp,[["__file","SidebarItem.vue"]]),bp={key:0,class:"sidebar-items"},yp=pe({__name:"SidebarItems",setup(e){const t=wt(),n=no();return We(()=>{Fe(()=>t.hash,i=>{const l=document.querySelector(".sidebar");if(!l)return;const o=document.querySelector(`.sidebar a.sidebar-item[href="${t.path}${i}"]`);if(!o)return;const{top:r,height:s}=l.getBoundingClientRect(),{top:a,height:c}=o.getBoundingClientRect();ar+s&&o.scrollIntoView(!1)})}),(i,l)=>Q(n).length?(V(),Z("ul",bp,[(V(!0),Z(ye,null,Ft(Q(n),o=>(V(),Se(vp,{key:`${o.text}${o.link}`,item:o},null,8,["item"]))),128))])):Re("",!0)}}),kp=xe(yp,[["__file","SidebarItems.vue"]]),_p={class:"sidebar"},wp=pe({__name:"Sidebar",setup(e){return(t,n)=>(V(),Z("aside",_p,[re(sa),Ee(t.$slots,"top"),re(kp),Ee(t.$slots,"bottom")]))}}),xp=xe(wp,[["__file","Sidebar.vue"]]),Ep=pe({__name:"Layout",setup(e){const t=fn(),n=ft(),i=Ne(),l=O(()=>n.value.navbar!==!1&&i.value.navbar!==!1),o=no(),r=ae(!1),s=x=>{r.value=typeof x=="boolean"?x:!r.value},a={x:0,y:0},c=x=>{a.x=x.changedTouches[0].clientX,a.y=x.changedTouches[0].clientY},u=x=>{const C=x.changedTouches[0].clientX-a.x,m=x.changedTouches[0].clientY-a.y;Math.abs(C)>Math.abs(m)&&Math.abs(C)>40&&(C>0&&a.x<=80?s(!0):s(!1))},d=O(()=>n.value.externalLinkIcon??i.externalLinkIcon??!0),h=O(()=>[{"no-navbar":!l.value,"no-sidebar":!o.value.length,"sidebar-open":r.value,"external-link-icon":d.value},n.value.pageClass]);let p;We(()=>{p=ln().afterEach(()=>{s(!1)})}),Fi(()=>{p()});const v=Xs(),k=v.resolve,A=v.pending;return(x,C)=>(V(),Z("div",{class:Ke(["theme-container",h.value]),onTouchstart:c,onTouchend:u},[Ee(x.$slots,"navbar",{},()=>[l.value?(V(),Se(Bg,{key:0,onToggleSidebar:s},{before:Te(()=>[Ee(x.$slots,"navbar-before")]),after:Te(()=>[Ee(x.$slots,"navbar-after")]),_:3})):Re("",!0)]),ie("div",{class:"sidebar-mask",onClick:C[0]||(C[0]=m=>s(!1))}),Ee(x.$slots,"sidebar",{},()=>[re(xp,null,{top:Te(()=>[Ee(x.$slots,"sidebar-top")]),bottom:Te(()=>[Ee(x.$slots,"sidebar-bottom")]),_:3})]),Ee(x.$slots,"page",{},()=>[Q(n).home?(V(),Se(cg,{key:0})):(V(),Se(ei,{key:1,name:"fade-slide-y",mode:"out-in",onBeforeEnter:Q(k),onBeforeLeave:Q(A)},{default:Te(()=>[(V(),Se(gp,{key:Q(t).path},{top:Te(()=>[Ee(x.$slots,"page-top")]),"content-top":Te(()=>[Ee(x.$slots,"page-content-top")]),"content-bottom":Te(()=>[Ee(x.$slots,"page-content-bottom")]),bottom:Te(()=>[Ee(x.$slots,"page-bottom")]),_:3}))]),_:3},8,["onBeforeEnter","onBeforeLeave"]))])],34))}}),aa=xe(Ep,[["__file","Layout.vue"]]),Cp={class:"theme-container"},Sp={class:"page"},Tp={class:"theme-default-content"},Lp=ie("h1",null,"404",-1),Ap=pe({__name:"NotFound",setup(e){const t=ti(),n=Ne(),i=n.value.notFound??["Not Found"],l=()=>i[Math.floor(Math.random()*i.length)],o=n.value.home??t.value,r=n.value.backToHome??"Back to home";return(s,a)=>(V(),Z("div",Cp,[ie("main",Sp,[ie("div",Tp,[Lp,ie("blockquote",null,Ce(l()),1),re(Q(Wi),{to:Q(o)},{default:Te(()=>[gt(Ce(Q(r)),1)]),_:1},8,["to"])])])]))}}),Pp=xe(Ap,[["__file","NotFound.vue"]]),Rp=xt({enhance({app:e,router:t}){al("Badge")||e.component("Badge",xf),al("CodeGroup")||e.component("CodeGroup",Ef),al("CodeGroupItem")||e.component("CodeGroupItem",Sf),e.component("NavbarSearch",()=>{const i=e.component("Docsearch")||e.component("SearchBox");return i?ge(i):null});const n=t.options.scrollBehavior;t.options.scrollBehavior=async(...i)=>(await Xs().wait(),n(...i))},setup(){Lf(),$f()},layouts:{Layout:aa,NotFound:Pp}}),Ip=e=>e instanceof Element?document.activeElement===e&&(["TEXTAREA","SELECT","INPUT"].includes(e.tagName)||e.hasAttribute("contenteditable")):!1,Op=(e,t)=>t.some(n=>{if(rt(n))return n===e.key;const{key:i,ctrl:l=!1,shift:o=!1,alt:r=!1}=n;return i===e.key&&l===e.ctrlKey&&o===e.shiftKey&&r===e.altKey}),Mp=/[^\x00-\x7F]/,Dp=e=>e.split(/\s+/g).map(t=>t.trim()).filter(t=>!!t),br=e=>e.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),yr=(e,t)=>{const n=t.join(" "),i=Dp(e);if(Mp.test(e))return i.some(r=>n.toLowerCase().indexOf(r)>-1);const l=e.endsWith(" ");return new RegExp(i.map((r,s)=>i.length===s+1&&!l?`(?=.*\\b${br(r)})`:`(?=.*\\b${br(r)}\\b)`).join("")+".+","gi").test(n)},Np=({input:e,hotKeys:t})=>{if(t.value.length===0)return;const n=i=>{e.value&&Op(i,t.value)&&!Ip(i.target)&&(i.preventDefault(),e.value.focus())};We(()=>{document.addEventListener("keydown",n)}),$i(()=>{document.removeEventListener("keydown",n)})},$p=[{title:"Home",headers:[],path:"/",pathLocale:"/",extraFields:[]},{title:"Overview",headers:[],path:"/about/",pathLocale:"/",extraFields:[]},{title:"Branding",headers:[{level:2,title:"Logos",slug:"logos",link:"#logos",children:[{level:3,title:"Full",slug:"full",link:"#full",children:[]},{level:3,title:"Symbol",slug:"symbol",link:"#symbol",children:[]},{level:3,title:"Type",slug:"type",link:"#type",children:[]}]}],path:"/about/branding.html",pathLocale:"/",extraFields:[]},{title:"Citing TaxonWorks",headers:[{level:2,title:"Software",slug:"software",link:"#software",children:[{level:3,title:"Collective code, documentation and API related material",slug:"collective-code-documentation-and-api-related-material",link:"#collective-code-documentation-and-api-related-material",children:[]},{level:3,title:"Code (version free)",slug:"code-version-free",link:"#code-version-free",children:[]},{level:3,title:"Code at a specific version",slug:"code-at-a-specific-version",link:"#code-at-a-specific-version",children:[]},{level:3,title:"Documentation (these pages)",slug:"documentation-these-pages",link:"#documentation-these-pages",children:[]},{level:3,title:"Other",slug:"other",link:"#other",children:[]}]},{level:2,title:"Data",slug:"data",link:"#data",children:[{level:3,title:"General citation guidance",slug:"general-citation-guidance",link:"#general-citation-guidance",children:[]},{level:3,title:"Other",slug:"other-1",link:"#other-1",children:[]}]},{level:2,title:"Other guidelines",slug:"other-guidelines",link:"#other-guidelines",children:[]},{level:2,title:"Additional examples",slug:"additional-examples",link:"#additional-examples",children:[]}],path:"/about/citing-taxonworks.html",pathLocale:"/",extraFields:[]},{title:"Contact",headers:[{level:2,title:"Chat",slug:"chat",link:"#chat",children:[]},{level:2,title:"Species File Group Community Liason",slug:"species-file-group-community-liason",link:"#species-file-group-community-liason",children:[]},{level:2,title:"Connect with TaxonWorks Users",slug:"connect-with-taxonworks-users",link:"#connect-with-taxonworks-users",children:[]}],path:"/about/contact.html",pathLocale:"/",extraFields:[]},{title:"Events",headers:[{level:2,title:"Weekly",slug:"weekly",link:"#weekly",children:[]},{level:2,title:"TaxonWorks Together",slug:"taxonworks-together",link:"#taxonworks-together",children:[]},{level:2,title:"TaxonWorks Late-nite",slug:"taxonworks-late-nite",link:"#taxonworks-late-nite",children:[]}],path:"/about/events.html",pathLocale:"/",extraFields:[]},{title:"Glossary",headers:[{level:3,title:"Asserted Distribution",slug:"asserted-distribution",link:"#asserted-distribution",children:[]},{level:3,title:"Buffered",slug:"buffered",link:"#buffered",children:[]},{level:3,title:"Cached (values)",slug:"cached-values",link:"#cached-values",children:[]},{level:3,title:"Context sensitive",slug:"context-sensitive",link:"#context-sensitive",children:[]},{level:3,title:"Fidelity",slug:"fidelity",link:"#fidelity",children:[]},{level:3,title:"Hot keys",slug:"hot-keys",link:"#hot-keys",children:[]},{level:3,title:"Identifiers",slug:"identifiers",link:"#identifiers",children:[]},{level:3,title:"Is Original",slug:"is-original",link:"#is-original",children:[]},{level:3,title:"Naïve matching",slug:"naive-matching",link:"#naive-matching",children:[]},{level:3,title:"Namespace",slug:"namespace",link:"#namespace",children:[]},{level:3,title:"Object",slug:"object",link:"#object",children:[]},{level:3,title:"OTU (Operational Taxonomic Unit)",slug:"otu-operational-taxonomic-unit",link:"#otu-operational-taxonomic-unit",children:[]},{level:3,title:"Parsed values",slug:"parsed-values",link:"#parsed-values",children:[]},{level:3,title:"Parent",slug:"parent",link:"#parent",children:[]},{level:3,title:"Parsing",slug:"parsing",link:"#parsing",children:[]},{level:3,title:"Project",slug:"project",link:"#project",children:[]},{level:3,title:"Protonym",slug:"protonym",link:"#protonym",children:[]},{level:3,title:"Pull Request",slug:"pull-request",link:"#pull-request",children:[]},{level:3,title:"Radial",slug:"radial",link:"#radial",children:[]},{level:3,title:"Radial Annotator",slug:"radial-annotator",link:"#radial-annotator",children:[]},{level:3,title:"Radial Navigator",slug:"radial-navigator",link:"#radial-navigator",children:[]},{level:3,title:"Repository",slug:"repository",link:"#repository",children:[]},{level:3,title:"SOP",slug:"sop",link:"#sop",children:[]},{level:3,title:"Stage 2",slug:"stage-2",link:"#stage-2",children:[]},{level:3,title:"Staged (or staged images)",slug:"staged-or-staged-images",link:"#staged-or-staged-images",children:[]},{level:3,title:"Taxon Name",slug:"taxon-name",link:"#taxon-name",children:[]},{level:3,title:"UI",slug:"ui",link:"#ui",children:[]},{level:3,title:"UX",slug:"ux",link:"#ux",children:[]},{level:3,title:"Verbatim fields",slug:"verbatim-fields",link:"#verbatim-fields",children:[]},{level:2,title:"Other glossaries and descriptions",slug:"other-glossaries-and-descriptions",link:"#other-glossaries-and-descriptions",children:[]}],path:"/about/glossary.html",pathLocale:"/",extraFields:[]},{title:"The big picture",headers:[{level:2,title:"How is TaxonWorks supporting developer contributions?",slug:"how-is-taxonworks-supporting-developer-contributions",link:"#how-is-taxonworks-supporting-developer-contributions",children:[]}],path:"/develop/",pathLocale:"/",extraFields:[]},{title:"Bug reporting",headers:[{level:2,title:"Considerations when reporting a bug or adding a feature request",slug:"considerations-when-reporting-a-bug-or-adding-a-feature-request",link:"#considerations-when-reporting-a-bug-or-adding-a-feature-request",children:[]}],path:"/develop/bug-reporting.html",pathLocale:"/",extraFields:[]},{title:"Coding",headers:[],path:"/develop/coding.html",pathLocale:"/",extraFields:[]},{title:"Contributing",headers:[{level:2,title:"Ideas, feature requests",slug:"ideas-feature-requests",link:"#ideas-feature-requests",children:[{level:3,title:"Provide an interface or workflow idea",slug:"provide-an-interface-or-workflow-idea",link:"#provide-an-interface-or-workflow-idea",children:[]},{level:3,title:"Provide a suggestion for a feature or improvement via a video",slug:"provide-a-suggestion-for-a-feature-or-improvement-via-a-video",link:"#provide-a-suggestion-for-a-feature-or-improvement-via-a-video",children:[]}]},{level:2,title:"Code",slug:"code",link:"#code",children:[{level:3,title:"Follow TaxonWorks code conventions",slug:"follow-taxonworks-code-conventions",link:"#follow-taxonworks-code-conventions",children:[]},{level:3,title:"Submit changes to the code base or repository",slug:"submit-changes-to-the-code-base-or-repository",link:"#submit-changes-to-the-code-base-or-repository",children:[]},{level:3,title:"Document the code?",slug:"document-the-code",link:"#document-the-code",children:[]}]},{level:2,title:"Documentation",slug:"documentation",link:"#documentation",children:[{level:3,title:"Editing",slug:"editing",link:"#editing",children:[{level:4,title:"Online",slug:"online",link:"#online",children:[]},{level:4,title:"What branch should I use?",slug:"what-branch-should-i-use",link:"#what-branch-should-i-use",children:[]},{level:4,title:"Offline",slug:"offline",link:"#offline",children:[]}]},{level:3,title:"Including screenshots or images",slug:"including-screenshots-or-images",link:"#including-screenshots-or-images",children:[{level:4,title:"Image caption markdown (writing docs)",slug:"image-caption-markdown-writing-docs",link:"#image-caption-markdown-writing-docs",children:[]},{level:4,title:"HTML for image with caption",slug:"html-for-image-with-caption",link:"#html-for-image-with-caption",children:[]}]},{level:3,title:"Adding a file",slug:"adding-a-file",link:"#adding-a-file",children:[]},{level:3,title:"Ordering sidebar content",slug:"ordering-sidebar-content",link:"#ordering-sidebar-content",children:[{level:4,title:"sidebarPosition",slug:"sidebarposition",link:"#sidebarposition",children:[]},{level:4,title:"sidebarParentPosition",slug:"sidebarparentposition",link:"#sidebarparentposition",children:[]},{level:4,title:"Order by filename",slug:"order-by-filename",link:"#order-by-filename",children:[{level:5,title:"Sidebar result:",slug:"sidebar-result",link:"#sidebar-result",children:[]}]},{level:4,title:"Order by sidebarPosition variable",slug:"order-by-sidebarposition-variable",link:"#order-by-sidebarposition-variable",children:[{level:5,title:"Sidebar result:",slug:"sidebar-result-1",link:"#sidebar-result-1",children:[]}]}]},{level:3,title:"Style conventions",slug:"style-conventions",link:"#style-conventions",children:[]}]},{level:2,title:"Project management",slug:"project-management",link:"#project-management",children:[{level:3,title:"Categorize an Issue on Github",slug:"categorize-an-issue-on-github",link:"#categorize-an-issue-on-github",children:[]}]}],path:"/develop/contributing.html",pathLocale:"/",extraFields:[]},{title:"Installation",headers:[],path:"/develop/installation.html",pathLocale:"/",extraFields:[]},{title:"Inicio",headers:[],path:"/es/",pathLocale:"/es/",extraFields:[]},{title:"The big picture",headers:[{level:2,title:"Vision and mission",slug:"vision-and-mission",link:"#vision-and-mission",children:[]},{level:2,title:"Everyone included",slug:"everyone-included",link:"#everyone-included",children:[]}],path:"/guide/",pathLocale:"/",extraFields:[]},{title:"API",headers:[{level:2,title:"An API is an application programing interface",slug:"an-api-is-an-application-programing-interface",link:"#an-api-is-an-application-programing-interface",children:[]}],path:"/guide/api.html",pathLocale:"/",extraFields:[]},{title:"Community Documentation",headers:[{level:2,title:"Manuals",slug:"manuals",link:"#manuals",children:[{level:3,title:"Universal Chalcidoidea Database (UCD) Project",slug:"universal-chalcidoidea-database-ucd-project",link:"#universal-chalcidoidea-database-ucd-project",children:[]},{level:3,title:"Orthoptera Species File (OSF) Community",slug:"orthoptera-species-file-osf-community",link:"#orthoptera-species-file-osf-community",children:[]}]},{level:2,title:"Workflows",slug:"workflows",link:"#workflows",children:[{level:3,title:"INHS Insect Collection Standard Operating Procedures (SOPS)",slug:"inhs-insect-collection-standard-operating-procedures-sops",link:"#inhs-insect-collection-standard-operating-procedures-sops",children:[]}]}],path:"/guide/community-resources.html",pathLocale:"/",extraFields:[]},{title:"Data Quality Help and Hints",headers:[{level:2,title:"Motivation",slug:"motivation",link:"#motivation",children:[]},{level:2,title:"Rationale and Background",slug:"rationale-and-background",link:"#rationale-and-background",children:[{level:3,title:"Prevention",slug:"prevention",link:"#prevention",children:[]},{level:3,title:"Discovery",slug:"discovery",link:"#discovery",children:[]},{level:3,title:"Resolution",slug:"resolution",link:"#resolution",children:[]},{level:3,title:"Acknowledgements",slug:"acknowledgements",link:"#acknowledgements",children:[]},{level:3,title:"Structure",slug:"structure",link:"#structure",children:[]}]},{level:2,title:"Identifiers",slug:"identifiers",link:"#identifiers",children:[{level:3,title:"CatalogNumbers",slug:"catalognumbers",link:"#catalognumbers",children:[]}]},{level:2,title:"Time",slug:"time",link:"#time",children:[{level:3,title:"Date out-of-bounds",slug:"date-out-of-bounds",link:"#date-out-of-bounds",children:[{level:4,title:"Filter Collecting Event by Date",slug:"filter-collecting-event-by-date",link:"#filter-collecting-event-by-date",children:[]}]},{level:3,title:"eventDate and year month day",slug:"eventdate-and-year-month-day",link:"#eventdate-and-year-month-day",children:[]}]},{level:2,title:"Place",slug:"place",link:"#place",children:[{level:3,title:"Coordinates Zero",slug:"coordinates-zero",link:"#coordinates-zero",children:[]},{level:3,title:"Coordinates Do Not Fall Within Named Geographic Unit",slug:"coordinates-do-not-fall-within-named-geographic-unit",link:"#coordinates-do-not-fall-within-named-geographic-unit",children:[]},{level:3,title:"Georeference Metadata with no Associated Georeference",slug:"georeference-metadata-with-no-associated-georeference",link:"#georeference-metadata-with-no-associated-georeference",children:[]},{level:3,title:"Elevation Unlikely",slug:"elevation-unlikely",link:"#elevation-unlikely",children:[]},{level:3,title:"Improperly Negated Latitudes Longitudes",slug:"improperly-negated-latitudes-longitudes",link:"#improperly-negated-latitudes-longitudes",children:[]},{level:3,title:"Invalid Coordinates",slug:"invalid-coordinates",link:"#invalid-coordinates",children:[]},{level:3,title:"Lower Geography Values Provided, but No Higher Geography",slug:"lower-geography-values-provided-but-no-higher-geography",link:"#lower-geography-values-provided-but-no-higher-geography",children:[]},{level:3,title:"Minimum and Maximum Elevation Values Mismatched",slug:"minimum-and-maximum-elevation-values-mismatched",link:"#minimum-and-maximum-elevation-values-mismatched",children:[]},{level:3,title:"Mismatched Country and CountryCode Values",slug:"mismatched-country-and-countrycode-values",link:"#mismatched-country-and-countrycode-values",children:[]},{level:3,title:"Mismatched Geographic Terms",slug:"mismatched-geographic-terms",link:"#mismatched-geographic-terms",children:[]},{level:3,title:"Missing Geodetic Datum",slug:"missing-geodetic-datum",link:"#missing-geodetic-datum",children:[]},{level:3,title:"Missing Latitudes Longitudes",slug:"missing-latitudes-longitudes",link:"#missing-latitudes-longitudes",children:[]},{level:3,title:"Misspelled Geographic Unit Names",slug:"misspelled-geographic-unit-names",link:"#misspelled-geographic-unit-names",children:[]}]},{level:2,title:"Taxon",slug:"taxon",link:"#taxon",children:[{level:3,title:"Misspelled or Invalid Taxonomic Names",slug:"misspelled-or-invalid-taxonomic-names",link:"#misspelled-or-invalid-taxonomic-names",children:[]},{level:3,title:"Unknown Higher Taxonomy",slug:"unknown-higher-taxonomy",link:"#unknown-higher-taxonomy",children:[]}]},{level:2,title:"Other",slug:"other",link:"#other",children:[{level:3,title:"Incorrect Character Encodings",slug:"incorrect-character-encodings",link:"#incorrect-character-encodings",children:[]},{level:3,title:"Incorrect Line Endings",slug:"incorrect-line-endings",link:"#incorrect-line-endings",children:[]},{level:3,title:"Invalid Individual Count",slug:"invalid-individual-count",link:"#invalid-individual-count",children:[]},{level:3,title:"Nonstandardized basisOfRecord Values",slug:"nonstandardized-basisofrecord-values",link:"#nonstandardized-basisofrecord-values",children:[]}]},{level:2,title:"External Tools and Resources",slug:"external-tools-and-resources",link:"#external-tools-and-resources",children:[{level:3,title:"Footnotes",slug:"footnotes",link:"#footnotes",children:[]}]}],path:"/guide/data-quality.html",pathLocale:"/",extraFields:[]},{title:"Export",headers:[{level:2,title:"Full database dumps",slug:"full-database-dumps",link:"#full-database-dumps",children:[]},{level:2,title:"Individual TaxonWorks tables",slug:"individual-taxonworks-tables",link:"#individual-taxonworks-tables",children:[{level:3,title:'Via "Project data overview and download"',slug:"via-project-data-overview-and-download",link:"#via-project-data-overview-and-download",children:[]},{level:3,title:"Via individual Data cards",slug:"via-individual-data-cards",link:"#via-individual-data-cards",children:[]}]},{level:2,title:"CSV",slug:"csv",link:"#csv",children:[{level:3,title:"Basic",slug:"basic",link:"#basic",children:[]}]},{level:2,title:"Darwin Core Archives",slug:"darwin-core-archives",link:"#darwin-core-archives",children:[{level:3,title:"From the DwC Dashboard",slug:"from-the-dwc-dashboard",link:"#from-the-dwc-dashboard",children:[]},{level:3,title:"From the Filter collection objects task",slug:"from-the-filter-collection-objects-task",link:"#from-the-filter-collection-objects-task",children:[]},{level:3,title:"Preparing your data for an aggregator (e.g. GBIF, iDigBio, ALA)",slug:"preparing-your-data-for-an-aggregator-e-g-gbif-idigbio-ala",link:"#preparing-your-data-for-an-aggregator-e-g-gbif-idigbio-ala",children:[]}]},{level:2,title:"Bibliographies (Reference lists)",slug:"bibliographies-reference-lists",link:"#bibliographies-reference-lists",children:[{level:3,title:"As CSV",slug:"as-csv",link:"#as-csv",children:[]},{level:3,title:"As BibTeX",slug:"as-bibtex",link:"#as-bibtex",children:[]},{level:3,title:"Formatted for journals",slug:"formatted-for-journals",link:"#formatted-for-journals",children:[{level:4,title:"Create shareable link to your filtered bibliography",slug:"create-shareable-link-to-your-filtered-bibliography",link:"#create-shareable-link-to-your-filtered-bibliography",children:[]}]},{level:3,title:"Catalog of Life Data Package (ColDP)",slug:"catalog-of-life-data-package-coldp",link:"#catalog-of-life-data-package-coldp",children:[]}]},{level:2,title:"Data matrices (evolutionary, descriptive, quantitative, etc.)",slug:"data-matrices-evolutionary-descriptive-quantitative-etc",link:"#data-matrices-evolutionary-descriptive-quantitative-etc",children:[{level:3,title:"Nomenclature stats",slug:"nomenclature-stats",link:"#nomenclature-stats",children:[]}]},{level:2,title:"JSON",slug:"json",link:"#json",children:[{level:3,title:"Individual records",slug:"individual-records",link:"#individual-records",children:[]},{level:3,title:"Via filters",slug:"via-filters",link:"#via-filters",children:[]}]},{level:2,title:"The TaxonWorks API",slug:"the-taxonworks-api",link:"#the-taxonworks-api",children:[]}],path:"/guide/export.html",pathLocale:"/",extraFields:[]},{title:"Getting started with some basics",headers:[{level:2,title:"In-application help",slug:"in-application-help",link:"#in-application-help",children:[]}],path:"/guide/getting-started.html",pathLocale:"/",extraFields:[]},{title:"Import",headers:[{level:2,title:"Batch loaders",slug:"batch-loaders",link:"#batch-loaders",children:[{level:3,title:"Try a batch loader",slug:"try-a-batch-loader",link:"#try-a-batch-loader",children:[]}]},{level:2,title:"Darwin Core Archive (DwC-A) import",slug:"darwin-core-archive-dwc-a-import",link:"#darwin-core-archive-dwc-a-import",children:[{level:3,title:"Map your data",slug:"map-your-data",link:"#map-your-data",children:[{level:4,title:"DwC term mapping",slug:"dwc-term-mapping",link:"#dwc-term-mapping",children:[{level:5,title:"Record-level class",slug:"record-level-class",link:"#record-level-class",children:[]},{level:5,title:"Occurrence class",slug:"occurrence-class",link:"#occurrence-class",children:[]},{level:5,title:"Event class",slug:"event-class",link:"#event-class",children:[]},{level:5,title:"Location class",slug:"location-class",link:"#location-class",children:[]},{level:5,title:"Identification class",slug:"identification-class",link:"#identification-class",children:[]},{level:5,title:"Taxon class",slug:"taxon-class",link:"#taxon-class",children:[]}]},{level:4,title:"TaxonWorks mappings",slug:"taxonworks-mappings",link:"#taxonworks-mappings",children:[{level:5,title:"Mappings to project predicates",slug:"mappings-to-project-predicates",link:"#mappings-to-project-predicates",children:[]},{level:5,title:"Mappings to biocuration groups and classes",slug:"mappings-to-biocuration-groups-and-classes",link:"#mappings-to-biocuration-groups-and-classes",children:[]},{level:5,title:"Mappings to DwC predicates",slug:"mappings-to-dwc-predicates",link:"#mappings-to-dwc-predicates",children:[]},{level:5,title:"Direct mapping to TW model fields",slug:"direct-mapping-to-tw-model-fields",link:"#direct-mapping-to-tw-model-fields",children:[]}]}]},{level:3,title:"Configure TaxonWorks for your DwC import",slug:"configure-taxonworks-for-your-dwc-import",link:"#configure-taxonworks-for-your-dwc-import",children:[{level:4,title:"Namespaces",slug:"namespaces",link:"#namespaces",children:[]},{level:4,title:"Controlled vocabulary terms",slug:"controlled-vocabulary-terms",link:"#controlled-vocabulary-terms",children:[{level:5,title:"Predicates",slug:"predicates",link:"#predicates",children:[]},{level:5,title:"Biocuration classes",slug:"biocuration-classes",link:"#biocuration-classes",children:[]}]}]},{level:3,title:"Unmapped columns",slug:"unmapped-columns",link:"#unmapped-columns",children:[]}]},{level:2,title:"Drag and drop",slug:"drag-and-drop",link:"#drag-and-drop",children:[]},{level:2,title:"Record by record",slug:"record-by-record",link:"#record-by-record",children:[{level:3,title:"Try Simple New Specimen",slug:"try-simple-new-specimen",link:"#try-simple-new-specimen",children:[]}]},{level:2,title:"Coming from other software",slug:"coming-from-other-software",link:"#coming-from-other-software",children:[{level:3,title:"Scratchpads",slug:"scratchpads",link:"#scratchpads",children:[]}]}],path:"/guide/import.html",pathLocale:"/",extraFields:[]},{title:"Migrate to TaxonWorks",headers:[{level:2,title:"Overview",slug:"overview",link:"#overview",children:[]},{level:2,title:"Strategies",slug:"strategies",link:"#strategies",children:[{level:3,title:"Keying",slug:"keying",link:"#keying",children:[]},{level:3,title:"Batch load",slug:"batch-load",link:"#batch-load",children:[]},{level:3,title:"Script",slug:"script",link:"#script",children:[{level:4,title:"Console",slug:"console",link:"#console",children:[]}]},{level:3,title:"Hybrid",slug:"hybrid",link:"#hybrid",children:[]}]},{level:2,title:"Methods not available",slug:"methods-not-available",link:"#methods-not-available",children:[{level:3,title:"SQL statements",slug:"sql-statements",link:"#sql-statements",children:[]},{level:3,title:"API POST/PATCH",slug:"api-post-patch",link:"#api-post-patch",children:[]}]},{level:2,title:"Migrating from an existing platform",slug:"migrating-from-an-existing-platform",link:"#migrating-from-an-existing-platform",children:[]},{level:2,title:"Darwin Core Archive (DwC-A) based strategies",slug:"darwin-core-archive-dwc-a-based-strategies",link:"#darwin-core-archive-dwc-a-based-strategies",children:[]},{level:2,title:"Checklist",slug:"checklist",link:"#checklist",children:[{level:3,title:"Before you start",slug:"before-you-start",link:"#before-you-start",children:[{level:4,title:"Getting out",slug:"getting-out",link:"#getting-out",children:[]},{level:4,title:"What might I lose?",slug:"what-might-i-lose",link:"#what-might-i-lose",children:[]},{level:4,title:"What might I gain?",slug:"what-might-i-gain",link:"#what-might-i-gain",children:[]},{level:4,title:"How long will this take?",slug:"how-long-will-this-take",link:"#how-long-will-this-take",children:[]}]},{level:3,title:"Prepare your data",slug:"prepare-your-data",link:"#prepare-your-data",children:[{level:4,title:"Archive your old data",slug:"archive-your-old-data",link:"#archive-your-old-data",children:[]},{level:4,title:"Organize your text",slug:"organize-your-text",link:"#organize-your-text",children:[]},{level:4,title:"Iteratively clean, transform, and validate your data",slug:"iteratively-clean-transform-and-validate-your-data",link:"#iteratively-clean-transform-and-validate-your-data",children:[]}]},{level:3,title:"Import",slug:"import",link:"#import",children:[{level:4,title:"Practice",slug:"practice",link:"#practice",children:[]},{level:4,title:"Plan for transition",slug:"plan-for-transition",link:"#plan-for-transition",children:[]},{level:4,title:"Complete the migration",slug:"complete-the-migration",link:"#complete-the-migration",children:[]}]},{level:3,title:"When you're done",slug:"when-you-re-done",link:"#when-you-re-done",children:[]}]}],path:"/guide/migrate-to-TaxonWorks.html",pathLocale:"/",extraFields:[]},{title:"Other documents",headers:[{level:2,title:"Archived files from the original repository",slug:"archived-files-from-the-original-repository",link:"#archived-files-from-the-original-repository",children:[]}],path:"/guide/other-documents.html",pathLocale:"/",extraFields:[]},{title:"Start a project",headers:[{level:2,title:"Offline/local use",slug:"offline-local-use",link:"#offline-local-use",children:[]},{level:2,title:"Sandboxes",slug:"sandboxes",link:"#sandboxes",children:[]},{level:2,title:"Collaborate",slug:"collaborate",link:"#collaborate",children:[]},{level:2,title:"Join",slug:"join",link:"#join",children:[]},{level:2,title:"Serve",slug:"serve",link:"#serve",children:[]}],path:"/guide/start-a-project.html",pathLocale:"/",extraFields:[]},{title:"Videos",headers:[{level:2,title:"Request or make a video",slug:"request-or-make-a-video",link:"#request-or-make-a-video",children:[]}],path:"/guide/videos.html",pathLocale:"/",extraFields:[]},{title:"Overview",headers:[{level:2,title:"Audience",slug:"audience",link:"#audience",children:[]},{level:2,title:"Concepts",slug:"concepts",link:"#concepts",children:[]},{level:2,title:"Meta-model",slug:"meta-model",link:"#meta-model",children:[]},{level:2,title:"Code",slug:"code",link:"#code",children:[]},{level:2,title:"Database",slug:"database",link:"#database",children:[]}],path:"/develop/Data/",pathLocale:"/",extraFields:[]},{title:"Models",headers:[{level:2,title:"Alternate value",slug:"alternate-value",link:"#alternate-value",children:[]},{level:2,title:"Asserted distribution",slug:"asserted-distribution",link:"#asserted-distribution",children:[]},{level:2,title:"Attribution",slug:"attribution",link:"#attribution",children:[]},{level:2,title:"Biocuration classification",slug:"biocuration-classification",link:"#biocuration-classification",children:[]},{level:2,title:"Biological association",slug:"biological-association",link:"#biological-association",children:[]},{level:2,title:"Biological associations biological associations graph",slug:"biological-associations-biological-associations-graph",link:"#biological-associations-biological-associations-graph",children:[]},{level:2,title:"Biological associations graph",slug:"biological-associations-graph",link:"#biological-associations-graph",children:[]},{level:2,title:"Biological relationship type",slug:"biological-relationship-type",link:"#biological-relationship-type",children:[]},{level:2,title:"Biological relationship",slug:"biological-relationship",link:"#biological-relationship",children:[]},{level:2,title:"Character state",slug:"character-state",link:"#character-state",children:[]},{level:2,title:"Citation topic",slug:"citation-topic",link:"#citation-topic",children:[]},{level:2,title:"Citation",slug:"citation",link:"#citation",children:[]},{level:2,title:"Collecting event",slug:"collecting-event",link:"#collecting-event",children:[]},{level:2,title:"Collection object observation",slug:"collection-object-observation",link:"#collection-object-observation",children:[]},{level:2,title:"Collection object",slug:"collection-object",link:"#collection-object",children:[]},{level:2,title:"Collection profile",slug:"collection-profile",link:"#collection-profile",children:[]},{level:2,title:"Common name",slug:"common-name",link:"#common-name",children:[]},{level:2,title:"Confidence",slug:"confidence",link:"#confidence",children:[]},{level:2,title:"Container item",slug:"container-item",link:"#container-item",children:[]},{level:2,title:"Container",slug:"container",link:"#container",children:[]},{level:2,title:"Content",slug:"content",link:"#content",children:[]},{level:2,title:"Controlled vocabulary term",slug:"controlled-vocabulary-term",link:"#controlled-vocabulary-term",children:[]},{level:2,title:"Data attribute",slug:"data-attribute",link:"#data-attribute",children:[]},{level:2,title:"Dataset record field",slug:"dataset-record-field",link:"#dataset-record-field",children:[]},{level:2,title:"Dataset record",slug:"dataset-record",link:"#dataset-record",children:[]},{level:2,title:"Depiction",slug:"depiction",link:"#depiction",children:[]},{level:2,title:"Derived collection object",slug:"derived-collection-object",link:"#derived-collection-object",children:[]},{level:2,title:"Descriptor",slug:"descriptor",link:"#descriptor",children:[]},{level:2,title:"Documentation",slug:"documentation",link:"#documentation",children:[]},{level:2,title:"Document",slug:"document",link:"#document",children:[]},{level:2,title:"Extract",slug:"extract",link:"#extract",children:[]},{level:2,title:"Gene attribute",slug:"gene-attribute",link:"#gene-attribute",children:[]},{level:2,title:"Geographic area type",slug:"geographic-area-type",link:"#geographic-area-type",children:[]},{level:2,title:"Geographic area",slug:"geographic-area",link:"#geographic-area",children:[]},{level:2,title:"Geographic areas geographic item",slug:"geographic-areas-geographic-item",link:"#geographic-areas-geographic-item",children:[]},{level:2,title:"Geographic item",slug:"geographic-item",link:"#geographic-item",children:[]},{level:2,title:"Georeference",slug:"georeference",link:"#georeference",children:[]},{level:2,title:"Identifier",slug:"identifier",link:"#identifier",children:[]},{level:2,title:"Image",slug:"image",link:"#image",children:[]},{level:2,title:"Import dataset",slug:"import-dataset",link:"#import-dataset",children:[]},{level:2,title:"Label",slug:"label",link:"#label",children:[]},{level:2,title:"Language",slug:"language",link:"#language",children:[]},{level:2,title:"Loan item",slug:"loan-item",link:"#loan-item",children:[]},{level:2,title:"Loan",slug:"loan",link:"#loan",children:[]},{level:2,title:"Namespace",slug:"namespace",link:"#namespace",children:[]},{level:2,title:"Note",slug:"note",link:"#note",children:[]},{level:2,title:"Observation matrix",slug:"observation-matrix",link:"#observation-matrix",children:[]},{level:2,title:"Observation matrix column item",slug:"observation-matrix-column-item",link:"#observation-matrix-column-item",children:[]},{level:2,title:"Observation matrix column",slug:"observation-matrix-column",link:"#observation-matrix-column",children:[]},{level:2,title:"Observation matrix row item",slug:"observation-matrix-row-item",link:"#observation-matrix-row-item",children:[]},{level:2,title:"Observation matrix row",slug:"observation-matrix-row",link:"#observation-matrix-row",children:[]},{level:2,title:"Observation",slug:"observation",link:"#observation",children:[]},{level:2,title:"Organization",slug:"organization",link:"#organization",children:[]},{level:2,title:"Origin relationship",slug:"origin-relationship",link:"#origin-relationship",children:[]},{level:2,title:"Otu page layout section",slug:"otu-page-layout-section",link:"#otu-page-layout-section",children:[]},{level:2,title:"Otu page layout",slug:"otu-page-layout",link:"#otu-page-layout",children:[]},{level:2,title:"Otu",slug:"otu",link:"#otu",children:[]},{level:2,title:"Person",slug:"person",link:"#person",children:[]},{level:2,title:"Preparation type",slug:"preparation-type",link:"#preparation-type",children:[]},{level:2,title:"Project member",slug:"project-member",link:"#project-member",children:[]},{level:2,title:"Project source",slug:"project-source",link:"#project-source",children:[]},{level:2,title:"Protocol relationship",slug:"protocol-relationship",link:"#protocol-relationship",children:[]},{level:2,title:"Protocol",slug:"protocol",link:"#protocol",children:[]},{level:2,title:"Ranged lot category",slug:"ranged-lot-category",link:"#ranged-lot-category",children:[]},{level:2,title:"Repository",slug:"repository",link:"#repository",children:[]},{level:2,title:"Role",slug:"role",link:"#role",children:[]},{level:2,title:"Sequence relationship",slug:"sequence-relationship",link:"#sequence-relationship",children:[]},{level:2,title:"Sequence",slug:"sequence",link:"#sequence",children:[]},{level:2,title:"Serial chronology",slug:"serial-chronology",link:"#serial-chronology",children:[]},{level:2,title:"Serial",slug:"serial",link:"#serial",children:[]},{level:2,title:"Sled image",slug:"sled-image",link:"#sled-image",children:[]},{level:2,title:"Source",slug:"source",link:"#source",children:[]},{level:2,title:"Tagged section keyword",slug:"tagged-section-keyword",link:"#tagged-section-keyword",children:[]},{level:2,title:"Tag",slug:"tag",link:"#tag",children:[]},{level:2,title:"Taxon determination",slug:"taxon-determination",link:"#taxon-determination",children:[]},{level:2,title:"Taxon name classification",slug:"taxon-name-classification",link:"#taxon-name-classification",children:[]},{level:2,title:"Taxon name relationship",slug:"taxon-name-relationship",link:"#taxon-name-relationship",children:[]},{level:2,title:"Taxon name",slug:"taxon-name",link:"#taxon-name",children:[]},{level:2,title:"Type material",slug:"type-material",link:"#type-material",children:[]}],path:"/develop/Data/models.html",pathLocale:"/",extraFields:[]},{title:"Tables",headers:[{level:2,title:"alternate_values",slug:"alternate-values",link:"#alternate-values",children:[]},{level:2,title:"asserted_distributions",slug:"asserted-distributions",link:"#asserted-distributions",children:[]},{level:2,title:"attributions",slug:"attributions",link:"#attributions",children:[]},{level:2,title:"biocuration_classifications",slug:"biocuration-classifications",link:"#biocuration-classifications",children:[]},{level:2,title:"biological_associations",slug:"biological-associations",link:"#biological-associations",children:[]},{level:2,title:"biological_associations_biological_associations_graphs",slug:"biological-associations-biological-associations-graphs",link:"#biological-associations-biological-associations-graphs",children:[]},{level:2,title:"biological_associations_graphs",slug:"biological-associations-graphs",link:"#biological-associations-graphs",children:[]},{level:2,title:"biological_relationship_types",slug:"biological-relationship-types",link:"#biological-relationship-types",children:[]},{level:2,title:"biological_relationships",slug:"biological-relationships",link:"#biological-relationships",children:[]},{level:2,title:"character_states",slug:"character-states",link:"#character-states",children:[]},{level:2,title:"citation_topics",slug:"citation-topics",link:"#citation-topics",children:[]},{level:2,title:"citations",slug:"citations",link:"#citations",children:[]},{level:2,title:"collecting_events",slug:"collecting-events",link:"#collecting-events",children:[]},{level:2,title:"collection_object_observations",slug:"collection-object-observations",link:"#collection-object-observations",children:[]},{level:2,title:"collection_objects",slug:"collection-objects",link:"#collection-objects",children:[]},{level:2,title:"collection_profiles",slug:"collection-profiles",link:"#collection-profiles",children:[]},{level:2,title:"common_names",slug:"common-names",link:"#common-names",children:[]},{level:2,title:"confidences",slug:"confidences",link:"#confidences",children:[]},{level:2,title:"container_items",slug:"container-items",link:"#container-items",children:[]},{level:2,title:"containers",slug:"containers",link:"#containers",children:[]},{level:2,title:"contents",slug:"contents",link:"#contents",children:[]},{level:2,title:"controlled_vocabulary_terms",slug:"controlled-vocabulary-terms",link:"#controlled-vocabulary-terms",children:[]},{level:2,title:"data_attributes",slug:"data-attributes",link:"#data-attributes",children:[]},{level:2,title:"dataset_record_fields",slug:"dataset-record-fields",link:"#dataset-record-fields",children:[]},{level:2,title:"dataset_records",slug:"dataset-records",link:"#dataset-records",children:[]},{level:2,title:"depictions",slug:"depictions",link:"#depictions",children:[]},{level:2,title:"derived_collection_objects",slug:"derived-collection-objects",link:"#derived-collection-objects",children:[]},{level:2,title:"descriptors",slug:"descriptors",link:"#descriptors",children:[]},{level:2,title:"documentation",slug:"documentation",link:"#documentation",children:[]},{level:2,title:"documents",slug:"documents",link:"#documents",children:[]},{level:2,title:"extracts",slug:"extracts",link:"#extracts",children:[]},{level:2,title:"gene_attributes",slug:"gene-attributes",link:"#gene-attributes",children:[]},{level:2,title:"geographic_area_types",slug:"geographic-area-types",link:"#geographic-area-types",children:[]},{level:2,title:"geographic_areas",slug:"geographic-areas",link:"#geographic-areas",children:[]},{level:2,title:"geographic_areas_geographic_items",slug:"geographic-areas-geographic-items",link:"#geographic-areas-geographic-items",children:[]},{level:2,title:"geographic_items",slug:"geographic-items",link:"#geographic-items",children:[]},{level:2,title:"georeferences",slug:"georeferences",link:"#georeferences",children:[]},{level:2,title:"identifiers",slug:"identifiers",link:"#identifiers",children:[]},{level:2,title:"images",slug:"images",link:"#images",children:[]},{level:2,title:"import_datasets",slug:"import-datasets",link:"#import-datasets",children:[]},{level:2,title:"labels",slug:"labels",link:"#labels",children:[]},{level:2,title:"languages",slug:"languages",link:"#languages",children:[]},{level:2,title:"loan_items",slug:"loan-items",link:"#loan-items",children:[]},{level:2,title:"loans",slug:"loans",link:"#loans",children:[]},{level:2,title:"namespaces",slug:"namespaces",link:"#namespaces",children:[]},{level:2,title:"notes",slug:"notes",link:"#notes",children:[]},{level:2,title:"observation_matrices",slug:"observation-matrices",link:"#observation-matrices",children:[]},{level:2,title:"observation_matrix_column_items",slug:"observation-matrix-column-items",link:"#observation-matrix-column-items",children:[]},{level:2,title:"observation_matrix_columns",slug:"observation-matrix-columns",link:"#observation-matrix-columns",children:[]},{level:2,title:"observation_matrix_row_items",slug:"observation-matrix-row-items",link:"#observation-matrix-row-items",children:[]},{level:2,title:"observation_matrix_rows",slug:"observation-matrix-rows",link:"#observation-matrix-rows",children:[]},{level:2,title:"observations",slug:"observations",link:"#observations",children:[]},{level:2,title:"organizations",slug:"organizations",link:"#organizations",children:[]},{level:2,title:"origin_relationships",slug:"origin-relationships",link:"#origin-relationships",children:[]},{level:2,title:"otu_page_layout_sections",slug:"otu-page-layout-sections",link:"#otu-page-layout-sections",children:[]},{level:2,title:"otu_page_layouts",slug:"otu-page-layouts",link:"#otu-page-layouts",children:[]},{level:2,title:"otus",slug:"otus",link:"#otus",children:[]},{level:2,title:"people",slug:"people",link:"#people",children:[]},{level:2,title:"preparation_types",slug:"preparation-types",link:"#preparation-types",children:[]},{level:2,title:"project_members",slug:"project-members",link:"#project-members",children:[]},{level:2,title:"project_sources",slug:"project-sources",link:"#project-sources",children:[]},{level:2,title:"protocol_relationships",slug:"protocol-relationships",link:"#protocol-relationships",children:[]},{level:2,title:"protocols",slug:"protocols",link:"#protocols",children:[]},{level:2,title:"ranged_lot_categories",slug:"ranged-lot-categories",link:"#ranged-lot-categories",children:[]},{level:2,title:"repositories",slug:"repositories",link:"#repositories",children:[]},{level:2,title:"roles",slug:"roles",link:"#roles",children:[]},{level:2,title:"sequence_relationships",slug:"sequence-relationships",link:"#sequence-relationships",children:[]},{level:2,title:"sequences",slug:"sequences",link:"#sequences",children:[]},{level:2,title:"serial_chronologies",slug:"serial-chronologies",link:"#serial-chronologies",children:[]},{level:2,title:"serials",slug:"serials",link:"#serials",children:[]},{level:2,title:"sled_images",slug:"sled-images",link:"#sled-images",children:[]},{level:2,title:"sources",slug:"sources",link:"#sources",children:[]},{level:2,title:"tagged_section_keywords",slug:"tagged-section-keywords",link:"#tagged-section-keywords",children:[]},{level:2,title:"tags",slug:"tags",link:"#tags",children:[]},{level:2,title:"taxon_determinations",slug:"taxon-determinations",link:"#taxon-determinations",children:[]},{level:2,title:"taxon_name_classifications",slug:"taxon-name-classifications",link:"#taxon-name-classifications",children:[]},{level:2,title:"taxon_name_relationships",slug:"taxon-name-relationships",link:"#taxon-name-relationships",children:[]},{level:2,title:"taxon_names",slug:"taxon-names",link:"#taxon-names",children:[]},{level:2,title:"type_materials",slug:"type-materials",link:"#type-materials",children:[]}],path:"/develop/Data/tables.html",pathLocale:"/",extraFields:[]},{title:"Acerca",headers:[],path:"/es/about/",pathLocale:"/es/",extraFields:[]},{title:"El panorama general",headers:[{level:2,title:"¿Cómo apoya TaxonWorks las contribuciones de los desarrolladores?",slug:"¿como-apoya-taxonworks-las-contribuciones-de-los-desarrolladores",link:"#¿como-apoya-taxonworks-las-contribuciones-de-los-desarrolladores",children:[]}],path:"/es/develop/",pathLocale:"/es/",extraFields:[]},{title:"Reportar un bug",headers:[{level:2,title:"Consideraciones cuando reporte un bug o agregue una solicitud de característica.",slug:"consideraciones-cuando-reporte-un-bug-o-agregue-una-solicitud-de-caracteristica",link:"#consideraciones-cuando-reporte-un-bug-o-agregue-una-solicitud-de-caracteristica",children:[]}],path:"/es/develop/bug-reporting.html",pathLocale:"/es/",extraFields:[]},{title:"Contribuyendo",headers:[{level:2,title:"Ideas, solicitud de caracteristicas",slug:"ideas-solicitud-de-caracteristicas",link:"#ideas-solicitud-de-caracteristicas",children:[{level:3,title:"Proveer una interfaz o una idea de flujo de trabajo",slug:"proveer-una-interfaz-o-una-idea-de-flujo-de-trabajo",link:"#proveer-una-interfaz-o-una-idea-de-flujo-de-trabajo",children:[]},{level:3,title:"Provea una sugerencia para una funcionalidad o una mejora por medio de un video",slug:"provea-una-sugerencia-para-una-funcionalidad-o-una-mejora-por-medio-de-un-video",link:"#provea-una-sugerencia-para-una-funcionalidad-o-una-mejora-por-medio-de-un-video",children:[]}]},{level:2,title:"Codigo",slug:"codigo",link:"#codigo",children:[{level:3,title:"Siga las convenciones de codigo de TaxonWorks",slug:"siga-las-convenciones-de-codigo-de-taxonworks",link:"#siga-las-convenciones-de-codigo-de-taxonworks",children:[]},{level:3,title:"Submit changes to the code base or repository",slug:"submit-changes-to-the-code-base-or-repository",link:"#submit-changes-to-the-code-base-or-repository",children:[]},{level:3,title:"Documentar el codigo?",slug:"documentar-el-codigo",link:"#documentar-el-codigo",children:[]}]},{level:2,title:"Documentación",slug:"documentacion",link:"#documentacion",children:[{level:3,title:"Editando",slug:"editando",link:"#editando",children:[{level:4,title:"En linea",slug:"en-linea",link:"#en-linea",children:[]},{level:4,title:"Que rama debería utilizar?",slug:"que-rama-deberia-utilizar",link:"#que-rama-deberia-utilizar",children:[]},{level:4,title:"Fuera de linea",slug:"fuera-de-linea",link:"#fuera-de-linea",children:[]}]},{level:3,title:"Incluyendo una captura de pantalla",slug:"incluyendo-una-captura-de-pantalla",link:"#incluyendo-una-captura-de-pantalla",children:[{level:4,title:"Markdown para imágenes con subtitulo",slug:"markdown-para-imagenes-con-subtitulo",link:"#markdown-para-imagenes-con-subtitulo",children:[]},{level:4,title:"HTML para imágenes con subtitulo",slug:"html-para-imagenes-con-subtitulo",link:"#html-para-imagenes-con-subtitulo",children:[]}]},{level:3,title:"Agregar un archivo",slug:"agregar-un-archivo",link:"#agregar-un-archivo",children:[]},{level:3,title:"Ordenando el contenido del menu lateral",slug:"ordenando-el-contenido-del-menu-lateral",link:"#ordenando-el-contenido-del-menu-lateral",children:[{level:4,title:"sidebarPosition",slug:"sidebarposition",link:"#sidebarposition",children:[]},{level:4,title:"sidebarParentPosition",slug:"sidebarparentposition",link:"#sidebarparentposition",children:[]},{level:4,title:"Orden por nombre de archivo.",slug:"orden-por-nombre-de-archivo",link:"#orden-por-nombre-de-archivo",children:[{level:5,title:"Resultado del menu lateral:",slug:"resultado-del-menu-lateral",link:"#resultado-del-menu-lateral",children:[]}]},{level:4,title:"Ordenar por medio de la variable sidebarPosition",slug:"ordenar-por-medio-de-la-variable-sidebarposition",link:"#ordenar-por-medio-de-la-variable-sidebarposition",children:[{level:5,title:"Resultado del menu lateral:",slug:"resultado-del-menu-lateral-1",link:"#resultado-del-menu-lateral-1",children:[]}]}]},{level:3,title:"Convenciones de estilo",slug:"convenciones-de-estilo",link:"#convenciones-de-estilo",children:[]}]},{level:2,title:"Gestión de proyecto",slug:"gestion-de-proyecto",link:"#gestion-de-proyecto",children:[{level:3,title:"Categorizar un issue en GitHub",slug:"categorizar-un-issue-en-github",link:"#categorizar-un-issue-en-github",children:[]}]}],path:"/es/develop/contributing.html",pathLocale:"/es/",extraFields:[]},{title:"Instalación",headers:[],path:"/es/develop/installation.html",pathLocale:"/es/",extraFields:[]},{title:"El panorama general",headers:[],path:"/es/guide/",pathLocale:"/es/",extraFields:[]},{title:"Introduction",headers:[{level:3,title:"How do I contribute back to the community?",slug:"how-do-i-contribute-back-to-the-community",link:"#how-do-i-contribute-back-to-the-community",children:[]},{level:3,title:"What about sequence and genomic data, how do they fit into TaxonWorks vision?",slug:"what-about-sequence-and-genomic-data-how-do-they-fit-into-taxonworks-vision",link:"#what-about-sequence-and-genomic-data-how-do-they-fit-into-taxonworks-vision",children:[]}],path:"/guide/FAQs/",pathLocale:"/",extraFields:[]},{title:"Introduction",headers:[],path:"/guide/Manual/",pathLocale:"/",extraFields:[]},{title:"Annotation",headers:[{level:2,title:"Use cases",slug:"use-cases",link:"#use-cases",children:[{level:3,title:"My data don't fit in TaxonWorks!",slug:"my-data-don-t-fit-in-taxonworks",link:"#my-data-don-t-fit-in-taxonworks",children:[]},{level:3,title:"Export to a particular DarwinCore field",slug:"export-to-a-particular-darwincore-field",link:"#export-to-a-particular-darwincore-field",children:[]},{level:3,title:"I need to make a group of records",slug:"i-need-to-make-a-group-of-records",link:"#i-need-to-make-a-group-of-records",children:[]},{level:3,title:"I need to annotate this data with how it came to be",slug:"i-need-to-annotate-this-data-with-how-it-came-to-be",link:"#i-need-to-annotate-this-data-with-how-it-came-to-be",children:[]}]},{level:2,title:"User interface",slug:"user-interface",link:"#user-interface",children:[{level:3,title:"Radial annotator",slug:"radial-annotator",link:"#radial-annotator",children:[]},{level:3,title:"Manage controlled vocabulary terms task",slug:"manage-controlled-vocabulary-terms-task",link:"#manage-controlled-vocabulary-terms-task",children:[]},{level:3,title:'"Custom fields"',slug:"custom-fields",link:"#custom-fields",children:[]}]},{level:2,title:"Annotation types",slug:"annotation-types",link:"#annotation-types",children:[{level:3,title:"Controlled vocabulary terms",slug:"controlled-vocabulary-terms",link:"#controlled-vocabulary-terms",children:[]},{level:3,title:"Data attributes",slug:"data-attributes",link:"#data-attributes",children:[{level:4,title:"Customizing models",slug:"customizing-models",link:"#customizing-models",children:[]},{level:4,title:"Darwin Core exportable URIs",slug:"darwin-core-exportable-uris",link:"#darwin-core-exportable-uris",children:[]}]},{level:3,title:"Tags",slug:"tags",link:"#tags",children:[]},{level:3,title:"Protocols",slug:"protocols",link:"#protocols",children:[]},{level:3,title:"Alternate values",slug:"alternate-values",link:"#alternate-values",children:[]},{level:3,title:"Identifiers",slug:"identifiers",link:"#identifiers",children:[]},{level:3,title:"Notes",slug:"notes",link:"#notes",children:[]},{level:3,title:"Verifiers",slug:"verifiers",link:"#verifiers",children:[]},{level:3,title:"Documentation",slug:"documentation",link:"#documentation",children:[]},{level:3,title:"Confidences",slug:"confidences",link:"#confidences",children:[]}]}],path:"/guide/Manual/annotation.html",pathLocale:"/",extraFields:[]},{title:"Collecting Events",headers:[{level:2,title:"Collecting event related tasks",slug:"collecting-event-related-tasks",link:"#collecting-event-related-tasks",children:[{level:3,title:"Filter collecting events",slug:"filter-collecting-events",link:"#filter-collecting-events",children:[{level:4,title:"Facets",slug:"facets",link:"#facets",children:[{level:5,title:"Geographic area",slug:"geographic-area",link:"#geographic-area",children:[]}]}]}]}],path:"/guide/Manual/collecting_event.html",pathLocale:"/",extraFields:[]},{title:"Collection Objects",headers:[{level:2,title:"Collection Object related tasks",slug:"collection-object-related-tasks",link:"#collection-object-related-tasks",children:[{level:3,title:"Customize the layout and reorder fields",slug:"customize-the-layout-and-reorder-fields",link:"#customize-the-layout-and-reorder-fields",children:[{level:4,title:"Layout settings",slug:"layout-settings",link:"#layout-settings",children:[]},{level:4,title:"Collection object section inside Comprehensive specimen digitization Task",slug:"collection-object-section-inside-comprehensive-specimen-digitization-task",link:"#collection-object-section-inside-comprehensive-specimen-digitization-task",children:[]},{level:4,title:"Determinations section inside Comprehensive specimen digitization Task",slug:"determinations-section-inside-comprehensive-specimen-digitization-task",link:"#determinations-section-inside-comprehensive-specimen-digitization-task",children:[]},{level:4,title:"Collecting Event inside Comprehensive specimen digitization Task",slug:"collecting-event-inside-comprehensive-specimen-digitization-task",link:"#collecting-event-inside-comprehensive-specimen-digitization-task",children:[]},{level:4,title:"Biological Associations inside Comprehensive specimen digitization Task",slug:"biological-associations-inside-comprehensive-specimen-digitization-task",link:"#biological-associations-inside-comprehensive-specimen-digitization-task",children:[]},{level:4,title:"Type material inside Comprehensive specimen digitization Task",slug:"type-material-inside-comprehensive-specimen-digitization-task",link:"#type-material-inside-comprehensive-specimen-digitization-task",children:[]}]}]}],path:"/guide/Manual/collectionobject.html",pathLocale:"/",extraFields:[]},{title:"The User Interface",headers:[{level:2,title:"Philosophy",slug:"philosophy",link:"#philosophy",children:[]},{level:2,title:"Logging in",slug:"logging-in",link:"#logging-in",children:[]},{level:2,title:"Administration",slug:"administration",link:"#administration",children:[{level:3,title:"Add New Project",slug:"add-new-project",link:"#add-new-project",children:[]},{level:3,title:"Adding folks to projects",slug:"adding-folks-to-projects",link:"#adding-folks-to-projects",children:[]},{level:3,title:"Add New User",slug:"add-new-user",link:"#add-new-user",children:[]},{level:3,title:"Add Project Member",slug:"add-project-member",link:"#add-project-member",children:[]},{level:3,title:"Inside a Project",slug:"inside-a-project",link:"#inside-a-project",children:[]}]},{level:2,title:"Explore TW Tasks",slug:"explore-tw-tasks",link:"#explore-tw-tasks",children:[]},{level:2,title:"Icons in TaxonWorks",slug:"icons-in-taxonworks",link:"#icons-in-taxonworks",children:[]},{level:2,title:"Did you know",slug:"did-you-know",link:"#did-you-know",children:[]}],path:"/guide/Manual/conventions.html",pathLocale:"/",extraFields:[]},{title:"Customization",headers:[{level:2,title:"Controlled Vocabulary Terms",slug:"controlled-vocabulary-terms",link:"#controlled-vocabulary-terms",children:[]}],path:"/guide/Manual/customization.html",pathLocale:"/",extraFields:[]},{title:"Digitization",headers:[{level:2,title:"Digitization Quick Start",slug:"digitization-quick-start",link:"#digitization-quick-start",children:[]},{level:2,title:"Comprehensive Digitization",slug:"comprehensive-digitization",link:"#comprehensive-digitization",children:[]},{level:2,title:"Label Printing",slug:"label-printing",link:"#label-printing",children:[{level:3,title:"Printing Header Labels",slug:"printing-header-labels",link:"#printing-header-labels",children:[]},{level:3,title:"Print Labels Task",slug:"print-labels-task",link:"#print-labels-task",children:[]}]},{level:2,title:"Did you know",slug:"did-you-know",link:"#did-you-know",children:[]}],path:"/guide/Manual/digitization.html",pathLocale:"/",extraFields:[]},{title:"Identifiers",headers:[{level:2,title:"Namespaces",slug:"namespaces",link:"#namespaces",children:[]}],path:"/guide/Manual/identifiers.html",pathLocale:"/",extraFields:[]},{title:"Matrices",headers:[{level:2,title:"Nomenclature Quick Start",slug:"nomenclature-quick-start",link:"#nomenclature-quick-start",children:[]},{level:2,title:"Understanding the data model",slug:"understanding-the-data-model",link:"#understanding-the-data-model",children:[]},{level:2,title:"Curating data",slug:"curating-data",link:"#curating-data",children:[{level:3,title:"Basic information",slug:"basic-information",link:"#basic-information",children:[]},{level:3,title:"Adding a Descriptor to the Matrix",slug:"adding-a-descriptor-to-the-matrix",link:"#adding-a-descriptor-to-the-matrix",children:[]},{level:3,title:"Adding an OTU or Collection Object to the Matrix",slug:"adding-an-otu-or-collection-object-to-the-matrix",link:"#adding-an-otu-or-collection-object-to-the-matrix",children:[]},{level:3,title:"Reordering And Editing Rows and Collumns in the Matrix",slug:"reordering-and-editing-rows-and-collumns-in-the-matrix",link:"#reordering-and-editing-rows-and-collumns-in-the-matrix",children:[]},{level:3,title:"Adding scores to a Row",slug:"adding-scores-to-a-row",link:"#adding-scores-to-a-row",children:[]},{level:3,title:"Adding scores to a Collumn",slug:"adding-scores-to-a-collumn",link:"#adding-scores-to-a-collumn",children:[]},{level:3,title:"Using a Matrix",slug:"using-a-matrix",link:"#using-a-matrix",children:[]}]},{level:2,title:"Interactive key interface",slug:"interactive-key-interface",link:"#interactive-key-interface",children:[]},{level:2,title:"Image matrices",slug:"image-matrices",link:"#image-matrices",children:[{level:3,title:"Viewing images in the Image Matrix",slug:"viewing-images-in-the-image-matrix",link:"#viewing-images-in-the-image-matrix",children:[]}]}],path:"/guide/Manual/matrices.html",pathLocale:"/",extraFields:[]},{title:"Nomenclature",headers:[{level:2,title:"Nomenclature Quick Start",slug:"nomenclature-quick-start",link:"#nomenclature-quick-start",children:[{level:3,title:"Nomenclature, not biology!",slug:"nomenclature-not-biology",link:"#nomenclature-not-biology",children:[]},{level:3,title:"Finding Nomenclature Tasks",slug:"finding-nomenclature-tasks",link:"#finding-nomenclature-tasks",children:[]},{level:3,title:"Navigation helpers",slug:"navigation-helpers",link:"#navigation-helpers",children:[{level:4,title:"Hotkeys",slug:"hotkeys",link:"#hotkeys",children:[]}]}]},{level:2,title:"Understanding the data model",slug:"understanding-the-data-model",link:"#understanding-the-data-model",children:[]},{level:2,title:"Curating data",slug:"curating-data",link:"#curating-data",children:[{level:3,title:"Basic information",slug:"basic-information",link:"#basic-information",children:[]},{level:3,title:"About Root",slug:"about-root",link:"#about-root",children:[]},{level:3,title:"Conceptual approach",slug:"conceptual-approach",link:"#conceptual-approach",children:[]},{level:3,title:"Authorship",slug:"authorship",link:"#authorship",children:[{level:4,title:"ICZN",slug:"iczn",link:"#iczn",children:[{level:5,title:"Parentheses around author/year",slug:"parentheses-around-author-year",link:"#parentheses-around-author-year",children:[]},{level:5,title:"Year of publication (availability) versus stated year",slug:"year-of-publication-availability-versus-stated-year",link:"#year-of-publication-availability-versus-stated-year",children:[]}]}]},{level:3,title:"Nomenclatural Status",slug:"nomenclatural-status",link:"#nomenclatural-status",children:[{level:4,title:"Example 1: Nomen nudum",slug:"example-1-nomen-nudum",link:"#example-1-nomen-nudum",children:[]}]},{level:3,title:"Relationship",slug:"relationship",link:"#relationship",children:[{level:4,title:"Example 1: Synonymy",slug:"example-1-synonymy",link:"#example-1-synonymy",children:[]},{level:4,title:"Example 2: Homonomy",slug:"example-2-homonomy",link:"#example-2-homonomy",children:[]},{level:4,title:"Example 3: Misapplication",slug:"example-3-misapplication",link:"#example-3-misapplication",children:[]},{level:4,title:"Misspelling",slug:"misspelling",link:"#misspelling",children:[]}]},{level:3,title:"Original combinations",slug:"original-combinations",link:"#original-combinations",children:[]},{level:3,title:"Citing the original combination",slug:"citing-the-original-combination",link:"#citing-the-original-combination",children:[{level:4,title:"Method 1 (original combination different from the current combination)",slug:"method-1-original-combination-different-from-the-current-combination",link:"#method-1-original-combination-different-from-the-current-combination",children:[{level:5,title:"Entering misspelled names",slug:"entering-misspelled-names",link:"#entering-misspelled-names",children:[]}]},{level:4,title:"Method 2 (when the original combination is the same as the current combination)",slug:"method-2-when-the-original-combination-is-the-same-as-the-current-combination",link:"#method-2-when-the-original-combination-is-the-same-as-the-current-combination",children:[]}]},{level:3,title:"Type metadata",slug:"type-metadata",link:"#type-metadata",children:[{level:4,title:"Genus and Family group names",slug:"genus-and-family-group-names",link:"#genus-and-family-group-names",children:[]},{level:4,title:"Species group names",slug:"species-group-names",link:"#species-group-names",children:[]}]},{level:3,title:"Family group names",slug:"family-group-names",link:"#family-group-names",children:[]},{level:3,title:"Citations",slug:"citations",link:"#citations",children:[{level:4,title:"Incertae sedis",slug:"incertae-sedis",link:"#incertae-sedis",children:[]},{level:4,title:"Misidentifications",slug:"misidentifications",link:"#misidentifications",children:[]}]}]},{level:2,title:"Nomenclature Senarios (aka How-To)",slug:"nomenclature-senarios-aka-how-to",link:"#nomenclature-senarios-aka-how-to",children:[{level:3,title:"Add new taxon name",slug:"add-new-taxon-name",link:"#add-new-taxon-name",children:[]},{level:3,title:"Add / amend type information for a new taxon",slug:"add-amend-type-information-for-a-new-taxon",link:"#add-amend-type-information-for-a-new-taxon",children:[]},{level:3,title:"New synonymy or removal from synonymy (stat. rev.)",slug:"new-synonymy-or-removal-from-synonymy-stat-rev",link:"#new-synonymy-or-removal-from-synonymy-stat-rev",children:[{level:4,title:"Example of Synonymization of subgenera",slug:"example-of-synonymization-of-subgenera",link:"#example-of-synonymization-of-subgenera",children:[]},{level:4,title:"Transfer species to new parent or not",slug:"transfer-species-to-new-parent-or-not",link:"#transfer-species-to-new-parent-or-not",children:[]},{level:4,title:"Remove name from synonomy",slug:"remove-name-from-synonomy",link:"#remove-name-from-synonomy",children:[]}]},{level:3,title:"New combination",slug:"new-combination",link:"#new-combination",children:[]},{level:3,title:"Revised family placement for a genus or genus placement for a species",slug:"revised-family-placement-for-a-genus-or-genus-placement-for-a-species",link:"#revised-family-placement-for-a-genus-or-genus-placement-for-a-species",children:[]},{level:3,title:"Designate nomen nudum or numen dubium",slug:"designate-nomen-nudum-or-numen-dubium",link:"#designate-nomen-nudum-or-numen-dubium",children:[]},{level:3,title:"Homonyms and replacement names",slug:"homonyms-and-replacement-names",link:"#homonyms-and-replacement-names",children:[]},{level:3,title:"Resolving redundant person name strings, and matching author names with and without diacritical marks",slug:"resolving-redundant-person-name-strings-and-matching-author-names-with-and-without-diacritical-marks",link:"#resolving-redundant-person-name-strings-and-matching-author-names-with-and-without-diacritical-marks",children:[]},{level:3,title:"Recording subsequent misspelling of a name",slug:"recording-subsequent-misspelling-of-a-name",link:"#recording-subsequent-misspelling-of-a-name",children:[]},{level:3,title:"Changing rank of a family-level taxon",slug:"changing-rank-of-a-family-level-taxon",link:"#changing-rank-of-a-family-level-taxon",children:[]},{level:3,title:"Changing rank of a genus-level taxon or species-level taxon",slug:"changing-rank-of-a-genus-level-taxon-or-species-level-taxon",link:"#changing-rank-of-a-genus-level-taxon-or-species-level-taxon",children:[]},{level:3,title:"Species groups",slug:"species-groups",link:"#species-groups",children:[]},{level:3,title:"About tribes and subtribes",slug:"about-tribes-and-subtribes",link:"#about-tribes-and-subtribes",children:[]},{level:3,title:"Taxon classified as Incertae Sedis",slug:"taxon-classified-as-incertae-sedis",link:"#taxon-classified-as-incertae-sedis",children:[]},{level:3,title:"Species name endings changing due to movement to another genus, or correction by publication",slug:"species-name-endings-changing-due-to-movement-to-another-genus-or-correction-by-publication",link:"#species-name-endings-changing-due-to-movement-to-another-genus-or-correction-by-publication",children:[]},{level:3,title:"Species synonymized with two or more other species",slug:"species-synonymized-with-two-or-more-other-species",link:"#species-synonymized-with-two-or-more-other-species",children:[]},{level:3,title:"Junior synonym conserved by ICZN decision (i.e. senior synonym suppressed)",slug:"junior-synonym-conserved-by-iczn-decision-i-e-senior-synonym-suppressed",link:"#junior-synonym-conserved-by-iczn-decision-i-e-senior-synonym-suppressed",children:[]},{level:3,title:"Entering names with incorrect endings for their taxonomic level",slug:"entering-names-with-incorrect-endings-for-their-taxonomic-level",link:"#entering-names-with-incorrect-endings-for-their-taxonomic-level",children:[]},{level:3,title:"What about fossil taxa in TaxonWorks?",slug:"what-about-fossil-taxa-in-taxonworks",link:"#what-about-fossil-taxa-in-taxonworks",children:[]},{level:3,title:"Can you describe how the authorship label for a name is determined?",slug:"can-you-describe-how-the-authorship-label-for-a-name-is-determined",link:"#can-you-describe-how-the-authorship-label-for-a-name-is-determined",children:[]},{level:3,title:"There are a lot of options for assigning the authorship of a TaxonName, which is the preferred way?",slug:"there-are-a-lot-of-options-for-assigning-the-authorship-of-a-taxonname-which-is-the-preferred-way",link:"#there-are-a-lot-of-options-for-assigning-the-authorship-of-a-taxonname-which-is-the-preferred-way",children:[]},{level:3,title:"Do you have any instructions on how to change combinations or enter new synonymies in TW?",slug:"do-you-have-any-instructions-on-how-to-change-combinations-or-enter-new-synonymies-in-tw",link:"#do-you-have-any-instructions-on-how-to-change-combinations-or-enter-new-synonymies-in-tw",children:[]},{level:3,title:"How do I find out where types are deposited, do you not yet have this function in TW?",slug:"how-do-i-find-out-where-types-are-deposited-do-you-not-yet-have-this-function-in-tw",link:"#how-do-i-find-out-where-types-are-deposited-do-you-not-yet-have-this-function-in-tw",children:[]},{level:3,title:"How do I get to the place in TW where I can add a new basionym? I need to try it out and see what happens.",slug:"how-do-i-get-to-the-place-in-tw-where-i-can-add-a-new-basionym-i-need-to-try-it-out-and-see-what-happens",link:"#how-do-i-get-to-the-place-in-tw-where-i-can-add-a-new-basionym-i-need-to-try-it-out-and-see-what-happens",children:[]},{level:3,title:"How would I remove a name from synonymy?",slug:"how-would-i-remove-a-name-from-synonymy",link:"#how-would-i-remove-a-name-from-synonymy",children:[]},{level:3,title:'What is the word form for "arbitrary combination of letters"?',slug:"what-is-the-word-form-for-arbitrary-combination-of-letters",link:"#what-is-the-word-form-for-arbitrary-combination-of-letters",children:[]},{level:3,title:"How to record in the database a situation when a taxon, species or genus, is moved from one family to another?",slug:"how-to-record-in-the-database-a-situation-when-a-taxon-species-or-genus-is-moved-from-one-family-to-another",link:"#how-to-record-in-the-database-a-situation-when-a-taxon-species-or-genus-is-moved-from-one-family-to-another",children:[]},{level:3,title:'How to record a nomen nudum that was "subsequently validated"?',slug:"how-to-record-a-nomen-nudum-that-was-subsequently-validated",link:"#how-to-record-a-nomen-nudum-that-was-subsequently-validated",children:[]},{level:3,title:"How to enter the author for misspelled name?",slug:"how-to-enter-the-author-for-misspelled-name",link:"#how-to-enter-the-author-for-misspelled-name",children:[]},{level:3,title:"How can I record the history of the taxon which had several historical Incertae sedis placements?",slug:"how-can-i-record-the-history-of-the-taxon-which-had-several-historical-incertae-sedis-placements",link:"#how-can-i-record-the-history-of-the-taxon-which-had-several-historical-incertae-sedis-placements",children:[]}]},{level:2,title:"FAQ related to family-group names",slug:"faq-related-to-family-group-names",link:"#faq-related-to-family-group-names",children:[{level:3,title:"Is it possible to link a note to a family group name to specify what the original spelling is, at what level it was proposed and when?",slug:"is-it-possible-to-link-a-note-to-a-family-group-name-to-specify-what-the-original-spelling-is-at-what-level-it-was-proposed-and-when",link:"#is-it-possible-to-link-a-note-to-a-family-group-name-to-specify-what-the-original-spelling-is-at-what-level-it-was-proposed-and-when",children:[]},{level:3,title:"What protonyms do I need to create for each form of the family-group name?",slug:"what-protonyms-do-i-need-to-create-for-each-form-of-the-family-group-name",link:"#what-protonyms-do-i-need-to-create-for-each-form-of-the-family-group-name",children:[]},{level:3,title:"To which ranked Protonym do I attach the type genus?",slug:"to-which-ranked-protonym-do-i-attach-the-type-genus",link:"#to-which-ranked-protonym-do-i-attach-the-type-genus",children:[]},{level:3,title:"Do I have to re-attach the type genus to each family group protonym?",slug:"do-i-have-to-re-attach-the-type-genus-to-each-family-group-protonym",link:"#do-i-have-to-re-attach-the-type-genus-to-each-family-group-protonym",children:[]}]},{level:2,title:"FAQ related to genus-group names",slug:"faq-related-to-genus-group-names",link:"#faq-related-to-genus-group-names",children:[{level:3,title:"Do I have to create nominotypical subgenus or subspecies manually?",slug:"do-i-have-to-create-nominotypical-subgenus-or-subspecies-manually",link:"#do-i-have-to-create-nominotypical-subgenus-or-subspecies-manually",children:[]},{level:3,title:"To which rank should I attach the type species in cases where nominotypical genera exist, genus, or subgenus? What if I have done the opposite?",slug:"to-which-rank-should-i-attach-the-type-species-in-cases-where-nominotypical-genera-exist-genus-or-subgenus-what-if-i-have-done-the-opposite",link:"#to-which-rank-should-i-attach-the-type-species-in-cases-where-nominotypical-genera-exist-genus-or-subgenus-what-if-i-have-done-the-opposite",children:[]},{level:3,title:"Does the attachment of the type species differ if the nominotypical subgenus came with, or after the original description of the genus?",slug:"does-the-attachment-of-the-type-species-differ-if-the-nominotypical-subgenus-came-with-or-after-the-original-description-of-the-genus",link:"#does-the-attachment-of-the-type-species-differ-if-the-nominotypical-subgenus-came-with-or-after-the-original-description-of-the-genus",children:[]}]},{level:2,title:"FAQ related to species-group names",slug:"faq-related-to-species-group-names",link:"#faq-related-to-species-group-names",children:[{level:3,title:"I have a species which was originally described in genus which obviously lies outside the scope of my group. How can I use this genus in the original combination?",slug:"i-have-a-species-which-was-originally-described-in-genus-which-obviously-lies-outside-the-scope-of-my-group-how-can-i-use-this-genus-in-the-original-combination",link:"#i-have-a-species-which-was-originally-described-in-genus-which-obviously-lies-outside-the-scope-of-my-group-how-can-i-use-this-genus-in-the-original-combination",children:[]},{level:3,title:"Do I have to create a nominotypical subspecies?",slug:"do-i-have-to-create-a-nominotypical-subspecies",link:"#do-i-have-to-create-a-nominotypical-subspecies",children:[]},{level:3,title:"Which ranked name should I attach the type material to, species, or subspecies?",slug:"which-ranked-name-should-i-attach-the-type-material-to-species-or-subspecies",link:"#which-ranked-name-should-i-attach-the-type-material-to-species-or-subspecies",children:[]},{level:3,title:"When creating protonym, what names should I put in Original combination fields?",slug:"when-creating-protonym-what-names-should-i-put-in-original-combination-fields",link:"#when-creating-protonym-what-names-should-i-put-in-original-combination-fields",children:[]},{level:3,title:"How do delete a duplicate Taxon Name?",slug:"how-do-delete-a-duplicate-taxon-name",link:"#how-do-delete-a-duplicate-taxon-name",children:[]}]}],path:"/guide/Manual/nomenclature.html",pathLocale:"/",extraFields:[]},{title:"About Sources in TW",headers:[{level:2,title:"The Source Hub",slug:"the-source-hub",link:"#the-source-hub",children:[{level:3,title:"Source hub task features",slug:"source-hub-task-features",link:"#source-hub-task-features",children:[{level:4,title:"Select a Source",slug:"select-a-source",link:"#select-a-source",children:[]}]}]},{level:2,title:"Related Source Tasks",slug:"related-source-tasks",link:"#related-source-tasks",children:[]},{level:2,title:"Source Show",slug:"source-show",link:"#source-show",children:[{level:3,title:"Try Editing a Source",slug:"try-editing-a-source",link:"#try-editing-a-source",children:[]}]},{level:2,title:"Adding a Source",slug:"adding-a-source",link:"#adding-a-source",children:[]},{level:2,title:"PDFs for Sources",slug:"pdfs-for-sources",link:"#pdfs-for-sources",children:[]},{level:2,title:"Tags on Sources",slug:"tags-on-sources",link:"#tags-on-sources",children:[{level:3,title:"UCD@TW Project Tag Example",slug:"ucd-tw-project-tag-example",link:"#ucd-tw-project-tag-example",children:[]}]},{level:2,title:"Creating or Editing Tags",slug:"creating-or-editing-tags",link:"#creating-or-editing-tags",children:[]},{level:2,title:"Sources With Versions or Translated Titles",slug:"sources-with-versions-or-translated-titles",link:"#sources-with-versions-or-translated-titles",children:[]},{level:2,title:"Filtering Sources",slug:"filtering-sources",link:"#filtering-sources",children:[]},{level:2,title:"Importing Sources",slug:"importing-sources",link:"#importing-sources",children:[{level:3,title:"Add a Source, one at a time",slug:"add-a-source-one-at-a-time",link:"#add-a-source-one-at-a-time",children:[]},{level:3,title:"Source Batch Upload",slug:"source-batch-upload",link:"#source-batch-upload",children:[]}]},{level:2,title:"Exporting Sources",slug:"exporting-sources",link:"#exporting-sources",children:[{level:3,title:"Use Filter sources to download selected sources",slug:"use-filter-sources-to-download-selected-sources",link:"#use-filter-sources-to-download-selected-sources",children:[]}]},{level:2,title:"Source Scenarios (aka How-To)",slug:"source-scenarios-aka-how-to",link:"#source-scenarios-aka-how-to",children:[{level:3,title:"Find uncurated unparsed papers",slug:"find-uncurated-unparsed-papers",link:"#find-uncurated-unparsed-papers",children:[]},{level:3,title:"Document information from a newly published source",slug:"document-information-from-a-newly-published-source",link:"#document-information-from-a-newly-published-source",children:[]},{level:3,title:"Add more species information",slug:"add-more-species-information",link:"#add-more-species-information",children:[{level:4,title:"Asserted Distributions",slug:"asserted-distributions",link:"#asserted-distributions",children:[]}]},{level:3,title:"Enter information on an existing taxon",slug:"enter-information-on-an-existing-taxon",link:"#enter-information-on-an-existing-taxon",children:[]},{level:3,title:"Adding images to TW",slug:"adding-images-to-tw",link:"#adding-images-to-tw",children:[{level:4,title:"Adding Type specimen images",slug:"adding-type-specimen-images",link:"#adding-type-specimen-images",children:[]},{level:4,title:"Images depicting taxa go with OTUs",slug:"images-depicting-taxa-go-with-otus",link:"#images-depicting-taxa-go-with-otus",children:[]},{level:4,title:"Adding Image Copyright infomation",slug:"adding-image-copyright-infomation",link:"#adding-image-copyright-infomation",children:[]}]}]}],path:"/guide/Manual/Sources/",pathLocale:"/",extraFields:[]},{title:"",headers:[],path:"/404.html",pathLocale:"/",extraFields:[]}],Fp=ae($p),Hp=()=>Fp,jp=({searchIndex:e,routeLocale:t,query:n,maxSuggestions:i})=>{const l=O(()=>e.value.filter(o=>o.pathLocale===t.value));return O(()=>{const o=n.value.trim().toLowerCase();if(!o)return[];const r=[],s=(a,c)=>{yr(o,[c.title])&&r.push({link:`${a.path}#${c.slug}`,title:a.title,header:c.title});for(const u of c.children){if(r.length>=i.value)return;s(a,u)}};for(const a of l.value){if(r.length>=i.value)break;if(yr(o,[a.title,...a.extraFields])){r.push({link:a.path,title:a.title});continue}for(const c of a.headers){if(r.length>=i.value)break;s(a,c)}}return r})},zp=e=>{const t=ae(0);return{focusIndex:t,focusNext:()=>{t.value{t.value>0?t.value-=1:t.value=e.value.length-1}}},Bp=pe({name:"SearchBox",props:{locales:{type:Object,default:()=>({})},hotKeys:{type:Array,default:()=>[]},maxSuggestions:{type:Number,default:5}},setup(e){const{locales:t,hotKeys:n,maxSuggestions:i}=Hl(e),l=ln(),o=ti(),r=Hp(),s=ae(null),a=ae(!1),c=ae(""),u=O(()=>t.value[o.value]??{}),d=jp({searchIndex:r,routeLocale:o,query:c,maxSuggestions:i}),{focusIndex:h,focusNext:p,focusPrev:v}=zp(d);Np({input:s,hotKeys:n});const k=O(()=>a.value&&!!d.value.length),A=()=>{k.value&&v()},x=()=>{k.value&&p()},C=m=>{if(!k.value)return;const w=d.value[m];w&&l.push(w.link).then(()=>{c.value="",h.value=0})};return()=>ge("form",{class:"search-box",role:"search"},[ge("input",{ref:s,type:"search",placeholder:u.value.placeholder,autocomplete:"off",spellcheck:!1,value:c.value,onFocus:()=>a.value=!0,onBlur:()=>a.value=!1,onInput:m=>c.value=m.target.value,onKeydown:m=>{switch(m.key){case"ArrowUp":{A();break}case"ArrowDown":{x();break}case"Enter":{m.preventDefault(),C(h.value);break}}}}),k.value&&ge("ul",{class:"suggestions",onMouseleave:()=>h.value=-1},d.value.map(({link:m,title:w,header:H},I)=>ge("li",{class:["suggestion",{focus:h.value===I}],onMouseenter:()=>h.value=I,onMousedown:()=>C(I)},ge("a",{href:m,onClick:$=>$.preventDefault()},[ge("span",{class:"page-title"},w),H&&ge("span",{class:"page-header"},`> ${H}`)]))))])}});var Vp=["s","/"],Wp={"/":{placeholder:"Search"},"/es/":{placeholder:"Buscar"}};const Up=Wp,qp=Vp,Gp=5,Kp=xt({enhance({app:e}){e.component("SearchBox",t=>ge(Bp,{locales:Up,hotKeys:qp,maxSuggestions:Gp,...t}))}}),Qp={},Yp={class:"vue-press-information"},Jp=ie("a",{href:"https://v2.vuepress.vuejs.org/"},"VuePress",-1);function Xp(e,t){return V(),Z("div",Yp,[gt("This site uses "),Jp,gt(", a static site generator")])}const Zp=xe(Qp,[["render",Xp],["__file","LayoutSidebarBottom.vue"]]),em={__name:"Layout",setup(e){return(t,n)=>(V(),Se(aa,null,{"sidebar-bottom":Te(()=>[re(Zp)]),_:1}))}},tm=xe(em,[["__file","Layout.vue"]]),nm=xt({enhance({app:e,router:t,siteData:n}){},setup(){},rootComponents:[],layouts:{Layout:tm}}),pi=[zh,Gh,Zh,hf,mf,_f,Rp,Kp,nm],im=JSON.parse('{"base":"/","lang":"en-US","title":"","description":"","head":[["link",{"rel":"icon","href":"/images/favicon.svg"}]],"locales":{"/":{"lang":"en-US","title":"TaxonWorks Docs","description":"TaxonWorks is a workbench with many tools for describing life. This site contains the documentation.","sidebar":{"/develop/":[{"text":"Develop","link":"/develop/","children":["/develop/README.md","/develop/installation.md","/develop/contributing.md","/develop/bug-reporting.md","/develop/coding.md",{"text":"Data","link":"/develop/Data/","children":["/develop/Data/README.md","/develop/Data/models.md","/develop/Data/tables.md"]}]}],"/guide/":[{"text":"Guide","link":"/guide/","children":["/guide/README.md","/guide/start-a-project.md","/guide/migrate-to-TaxonWorks.md","/guide/getting-started.md",{"text":"Manual","link":"/guide/Manual/","children":["/guide/Manual/README.md","/guide/Manual/conventions.md",{"text":"Sources","link":"/guide/Manual/Sources/","children":["/guide/Manual/Sources/README.md"]},"/guide/Manual/collectionobject.md","/guide/Manual/collecting_event.md","/guide/Manual/digitization.md","/guide/Manual/matrices.md","/guide/Manual/identifiers.md","/guide/Manual/customization.md","/guide/Manual/nomenclature.md","/guide/Manual/annotation.md"]},"/guide/community-resources.md","/guide/data-quality.md","/guide/import.md","/guide/export.md","/guide/videos.md",{"text":"FAQs","link":"/guide/FAQs/","children":["/guide/FAQs/README.md"]},"/guide/api.md","/guide/other-documents.md"]}],"/about/":[{"text":"About","link":"/about/","children":["/about/README.md","/about/contact.md","/about/events.md","/about/citing-taxonworks.md","/about/glossary.md","/about/branding.md"]}]}},"/es/":{"lang":"es-ES","title":"Documentación de TaxonWorks","description":"TaxonWorks es un banco de trabajo con muchas herramientas para describir la vida. Este sitio contiene la documentación"}}}');var Cn=vn(im),lm=Pd,om=()=>{const e=th({history:lm(Ss("/")),routes:[{name:"vuepress-route",path:"/:catchAll(.*)",components:{}}],scrollBehavior:(t,n,i)=>i||(t.hash?{el:t.hash}:{top:0})});return e.beforeResolve(async(t,n)=>{if(t.path!==n.path||n===bt){const i=Vn(t.fullPath);if(i.path!==t.fullPath)return i.path;const l=await i.loader();t.meta={...i.meta,_pageChunk:l}}else t.path===n.path&&(t.meta=n.meta)}),e},rm=e=>{e.component("ClientOnly",Yl),e.component("Content",uh),e.component("RouteLink",Wi)},sm=(e,t,n)=>{const i=O(()=>t.currentRoute.value.path),l=Ya((A,x)=>({get(){return A(),t.currentRoute.value.meta._pageChunk},set(C){t.currentRoute.value.meta._pageChunk=C,x()}})),o=O(()=>qt.resolveLayouts(n)),r=O(()=>qt.resolveRouteLocale(Cn.value.locales,i.value)),s=O(()=>qt.resolveSiteLocaleData(Cn.value,r.value)),a=O(()=>l.value.comp),c=O(()=>l.value.data),u=O(()=>c.value.frontmatter),d=O(()=>qt.resolvePageHeadTitle(c.value,s.value)),h=O(()=>qt.resolvePageHead(d.value,u.value,s.value)),p=O(()=>qt.resolvePageLang(c.value,s.value)),v=O(()=>qt.resolvePageLayout(c.value,o.value)),k={layouts:o,pageData:c,pageComponent:a,pageFrontmatter:u,pageHead:h,pageHeadTitle:d,pageLang:p,pageLayout:v,redirects:Cl,routeLocale:r,routePath:i,routes:Bn,siteData:Cn,siteLocaleData:s};return e.provide(Kl,k),Object.defineProperties(e.config.globalProperties,{$frontmatter:{get:()=>u.value},$head:{get:()=>h.value},$headTitle:{get:()=>d.value},$lang:{get:()=>p.value},$page:{get:()=>c.value},$routeLocale:{get:()=>r.value},$site:{get:()=>Cn.value},$siteLocale:{get:()=>s.value},$withBase:{get:()=>Jl}}),k},am=()=>{const e=lh(),t=oh();let n=[];const i=()=>{e.value.forEach(r=>{const s=cm(r);s&&n.push(s)})},l=()=>{const r=[];return e.value.forEach(s=>{const a=um(s);a&&r.push(a)}),r},o=()=>{document.documentElement.lang=t.value;const r=l();n.forEach((s,a)=>{const c=r.findIndex(u=>s.isEqualNode(u));c===-1?(s.remove(),delete n[a]):r.splice(c,1)}),r.forEach(s=>document.head.appendChild(s)),n=[...n.filter(s=>!!s),...r]};en(ah,o),We(()=>{i(),Fe(e,o,{immediate:!1})})},cm=([e,t,n=""])=>{const i=Object.entries(t).map(([s,a])=>rt(a)?`[${s}=${JSON.stringify(a)}]`:a===!0?`[${s}]`:"").join(""),l=`head > ${e}${i}`;return Array.from(document.querySelectorAll(l)).find(s=>s.innerText===n)||null},um=([e,t,n])=>{if(!rt(e))return null;const i=document.createElement(e);return Ul(t)&&Object.entries(t).forEach(([l,o])=>{rt(o)?i.setAttribute(l,o):o===!0&&i.setAttribute(l,"")}),rt(n)&&i.appendChild(document.createTextNode(n)),i},dm=zu,hm=async()=>{var n;const e=dm({name:"Vuepress",setup(){var o;am();for(const r of pi)(o=r.setup)==null||o.call(r);const i=pi.flatMap(({rootComponents:r=[]})=>r.map(s=>ge(s))),l=rh();return()=>[ge(l.value),i]}}),t=om();rm(e),sm(e,t,pi);for(const i of pi)await((n=i.enhance)==null?void 0:n.call(i,{app:e,router:t,siteData:Cn}));return e.use(t),{app:e,router:t}};hm().then(({app:e,router:t})=>{t.isReady().then(()=>{e.mount("#app")})});export{xe as _,ie as a,eu as b,Z as c,hm as createVueApp,gt as d,re as e,V as o,Yn as r,Te as w}; diff --git a/assets/branding.html-Cw6Z3OFd.js b/assets/branding.html-Cw6Z3OFd.js new file mode 100644 index 00000000..773d2ad1 --- /dev/null +++ b/assets/branding.html-Cw6Z3OFd.js @@ -0,0 +1 @@ +import{_ as a,c as n,o as r,b as s}from"./app-Bwgh_xIT.js";const e="/images/branding/Logo-Full/TaxonWorks_Logo-Full-Black.svg",l="/images/branding/Logo-Full/TaxonWorks_Logo-Full-Brown.svg",o="/images/branding/Logo-Full/TaxonWorks_Logo-Full-Tan.svg",i="/images/branding/Logo-Full/TaxonWorks_Logo-Full-Green.svg",g="/images/branding/Logo-Full/TaxonWorks_Logo-Full-DarkGreen.svg",t="/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Black.svg",m="/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Brown.svg",c="/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Tan.svg",p="/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-White.svg",b="/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Green.svg",d="/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-DarkGreen.svg",_="/images/branding/Logo-Type/TaxonWorks_Logo-Type-Black.svg",y="/images/branding/Logo-Type/TaxonWorks_Logo-Type-Brown.svg",h="/images/branding/Logo-Type/TaxonWorks_Logo-Type-Tan.svg",k="/images/branding/Logo-Type/TaxonWorks_Logo-Type-White.svg",T="/images/branding/Logo-Type/TaxonWorks_Logo-Type-Green.svg",u="/images/branding/Logo-Type/TaxonWorks_Logo-Type-DarkGreen.svg",L={},x=s('

Branding

Official branding material for TaxonWorks.

Logos

Full

Black fullBrown fullTan fullWhite full
Green fullDarkGreen full

Symbol

Black Symbol
Brown Symbol
Tan Symbol
White Symbol

Green Symbol
DarkGreen Symbol

Type

Black typeBrown typeTan typeWhite Type
Green typeDarkGreen type

',10),f=[x];function v(S,W){return r(),n("div",null,f)}const w=a(L,[["render",v],["__file","branding.html.vue"]]),F=JSON.parse('{"path":"/about/branding.html","title":"Branding","lang":"en-US","frontmatter":{"sidebarPosition":70},"headers":[{"level":2,"title":"Logos","slug":"logos","link":"#logos","children":[{"level":3,"title":"Full","slug":"full","link":"#full","children":[]},{"level":3,"title":"Symbol","slug":"symbol","link":"#symbol","children":[]},{"level":3,"title":"Type","slug":"type","link":"#type","children":[]}]}],"git":{"updatedTime":1695173116000,"contributors":[{"name":"jlpereira","email":"pepelui@outlook.com","commits":2},{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"about/branding.md"}');export{w as comp,F as data}; diff --git a/assets/bug-reporting.html-Bt1RegO0.js b/assets/bug-reporting.html-Bt1RegO0.js new file mode 100644 index 00000000..e7c9c2f7 --- /dev/null +++ b/assets/bug-reporting.html-Bt1RegO0.js @@ -0,0 +1 @@ +import{_ as e,c as i,o as r,b as t}from"./app-Bwgh_xIT.js";const o={},a=t('

Bug reporting

Where to file your issue if it regards:

Considerations when reporting a bug or adding a feature request

Before you open an issue:

  • Check to see that the issue is indeed new by carefully reviewing the existing issues.

While filing your issue:

  • Use a issue template if available, this categorizes your insights into more actionable items for those seeking to address it
  • Tell a story! Give us enough background so that we can replicate exactly what you did.
  • Include a success criterion. How do we know we've succeeded in addressing the issues without contacting you again?
  • Err on providing more, rather than less information.
  • Provide a meaningful title that identifies your role, and what you seek to accomplish, e.g. As an X I need Y to do Z

Some other conventions:

  • If you have the permissions, categorize your issue using a label.
  • Use the prefix "Task -" in the name to indicate the request for a new or improved task.
',10),s=[a];function n(l,u){return r(),i("div",null,s)}const c=e(o,[["render",n],["__file","bug-reporting.html.vue"]]),h=JSON.parse('{"path":"/develop/bug-reporting.html","title":"Bug reporting","lang":"en-US","frontmatter":{"sidebarPosition":40},"headers":[{"level":2,"title":"Considerations when reporting a bug or adding a feature request","slug":"considerations-when-reporting-a-bug-or-adding-a-feature-request","link":"#considerations-when-reporting-a-bug-or-adding-a-feature-request","children":[]}],"git":{"updatedTime":1668380273000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":3}]},"filePathRelative":"develop/bug-reporting.md"}');export{c as comp,h as data}; diff --git a/assets/bug-reporting.html-D9ecm319.js b/assets/bug-reporting.html-D9ecm319.js new file mode 100644 index 00000000..4255e3f8 --- /dev/null +++ b/assets/bug-reporting.html-D9ecm319.js @@ -0,0 +1 @@ +import{_ as e,c as a,o,b as i}from"./app-Bwgh_xIT.js";const r={},s=i('

Reportar un bug

Donde presentar su issue si se trata de:

Consideraciones cuando reporte un bug o agregue una solicitud de característica.

Antes de abrir un issue:

  • Verifique que el issue es nuevo revisando los issues existentes.

Mientras llene su issue:

  • Use un template de issue si está disponible, esto desglosa sus ideas en items mas accesibles para aquellos que buscan abordarlos
  • Cuenta una historia! Denos suficiente trasfondo para que podamos replicar exactamente lo que hizo.
  • Incluya un criterio exitoso. ¿Cómo sabemos que hemos conseguido resolver los problemas sin volver a ponernos en contacto con usted?
  • Es preferible dar mas información que menos.
  • Proporcione un titulo significativo que identifique su función y lo que pretende conseguir, por ejemplo: Como X necesito Y para hacer Z

Otras convenciones:

  • Si tiene permisos, categorice su issue utilizando una etiqueta.
  • Use el prefix "Task -" en el titulo para indicar la solicitud para una nueva tarea o mejorarla.
',10),t=[s];function n(u,c){return o(),a("div",null,t)}const p=e(r,[["render",n],["__file","bug-reporting.html.vue"]]),d=JSON.parse('{"path":"/es/develop/bug-reporting.html","title":"Reportar un bug","lang":"es-ES","frontmatter":{"sidebarPosition":40},"headers":[{"level":2,"title":"Consideraciones cuando reporte un bug o agregue una solicitud de característica.","slug":"consideraciones-cuando-reporte-un-bug-o-agregue-una-solicitud-de-caracteristica","link":"#consideraciones-cuando-reporte-un-bug-o-agregue-una-solicitud-de-caracteristica","children":[]}],"git":{"updatedTime":1677462190000,"contributors":[{"name":"jlpereira","email":"pepelui@outlook.com","commits":1}]},"filePathRelative":"es/develop/bug-reporting.md"}');export{p as comp,d as data}; diff --git a/assets/citing-taxonworks.html-DDur_T5C.js b/assets/citing-taxonworks.html-DDur_T5C.js new file mode 100644 index 00000000..b6b58b81 --- /dev/null +++ b/assets/citing-taxonworks.html-DDur_T5C.js @@ -0,0 +1,37 @@ +import{_ as e,c as a,o as t,b as i}from"./app-Bwgh_xIT.js";const o={},n=i(`

Citing TaxonWorks

There are various ways to cite TaxonWorks, products derived from the software, and communities supporting the software. Here we offer general guidelines and some specific examples.

Software

TaxonWorks Community. 2022. Taxonworks [software and supporting resources], https://taxonworks.org. Species File Group (maintainers, https://speciesfilegroup.org). Accessible at: https://github.com/SpeciesFileGroup/taxonworks.

@misc{taxonworks_software_and_related,
+  author = {{TaxonWorks Community}},
+  organization = {Species File Group (maintainers, https://speciesfilegroup.org)},
+  title = {TaxonWorks [software and supporting resources], https://taxonworks.org},
+  year = {2022},
+  url = {https://github.com/SpeciesFileGroup/taxonworks},
+}
+

Code (version free)

TaxonWorks Community (2022) TaxonWorks [software]. Species File Group (maintainers, https://speciesfilegroup.org). Accessible at: https://github.com/SpeciesFileGroup/taxonworks

@misc{taxonworks_software,
+  author = {{TaxonWorks Community}},
+  organization = {Species File Group (maintainers, https://speciesfilegroup.org)},
+  title = {TaxonWorks [software]},
+  year = {2022},
+  url = {https://github.com/SpeciesFileGroup/taxonworks},
+}
+

Code at a specific version

TaxonWorks Community (2022) TaxonWorks [software, Version 0.29.0]. Species File Group (maintainers, https://speciesfilegroup.org). Accessible at https://github.com/SpeciesFileGroup/taxonworks/tree/v0.29.0

@misc{taxonworks_software_version_29,
+  author = {{TaxonWorks Community}},
+  organization = {Species File Group (maintainers, https://speciesfilegroup.org)},
+  title = {TaxonWorks [software, Version 0.29.0]},
+  year = {2022},
+  url = {https://github.com/SpeciesFileGroup/taxonworks/tree/v0.29.0},
+}
+

Documentation (these pages)

TaxonWorks Community (2022) TaxonWorks [documentation]. Species File Group (maintainers, https://speciesfilegroup.org). [Accessed yyyy/mm/dd] Accessible at https://docs.taxonworks.org

@misc{taxonworks_documentation,
+  author = {{TaxonWorks Community}},
+  organization = {Species File Group (maintainers, https://speciesfilegroup.org)},
+  title = {TaxonWorks [documentation]},
+  year = {2022},
+  url = {https://docs.taxonworks.org},
+  note = {Accessed 2022/1/1}
+}
+

Other

Additional citations, referencing other specific aspects of the project, are concievable, they should follow the examples above. For example they might reference:

  • The non-code, but digital (captured and available somewhere, e.g. Issue tracker), contributions to the TaxonWorks community (e.g. opening issues, adding help documentation, etc.)
  • The non-code, and not digital, contributions, e.g. people we talked with that gave us ideas (has to be captured somewhere, e.g. personal communications)

Data

General citation guidance

A generalized data citation looks like:

<who, "community" or "individuals>. <year>. <project title, as seen in TW> curated in TaxonWorks [software]. <optional maintainer statement>. Retrieved <date> at <url, e.g. https://sfg.taxonworks.org/api/v1>.

@misc{my_data_in_taxonworks,
+  author = {{TaxonWorks Community}},
+  organization = {Species File Group (maintainers, https://speciesfilegroup.org)},
+  title = {<Project title as seen in TW> curated in TaxonWorks [software]},
+  year = {2022},
+  note = {Retrieved <timestamp> at <url>}
+}
+

Other

Additional citation might follow this pattern, and include:

  • Citing data in any instance of TaxonWorks, ever, destroyed or not (cross project)
  • Citing data in a single instance of TaxonWorks (many projects, e.g. https://sfg.taxonworks.org)

Other guidelines

  • We recommend treating all contributors as authors rather than dividing up roles in the citation.
  • Reference DOI or other identifier if the data is published and one is available
  • Reference a HASH of the data if the data is upublished

Resolving these questions might help to provide additional context:

  • Are you citing a) some or b) all of the data (what)?
  • Was the data retrieved in a) real time or b) via an "archive" (when)?
  • Was the data retrieved a) via an API (e.g. a resource described by https://api.taxonworks.org), b) some public interface (e.g. a portal that uses https://github.com/SpeciesFileGroup/taxonpages) c) within a private version of TaxonWorks (best to archive these publically!) or d) in a post-publication archive (e.g. Zenodo) (how)?

Additional examples

  • McElrath TC, Thomas MC, & Yoshida T. 2021. Nomenclature of family Laemophloeidae extracted from Cucujoidea World Catalog curated in TaxonWorks [software]. Retrieved Oct 26, 2021 at https://sfg.taxonworks.org/api/v1/.
  • McElrath TC, Thomas MC, & Yoshida T. 2021. Nomenclature of family Laemophloeidae extracted from Cucujoidea World Catalog curated in TaxonWorks [software]. Retrieved Oct 26, 2021 at https://sfg.taxonworks.org/api/v1/.
  • Universal Chalcidoidea Database Curators. 2022. Universal Chalcidoidea Database (UCD) curated in TaxonWorks [software]. Accessed on Oct 26, 2021 at https://sfg.taxonworks.org/api/v1/.
  • Heraty, John; Woolley, Jim, et al. 2022. Universal Chalcidoidea Database (UCD) curated in TaxonWorks [software]. Accessed on Oct 26, 2021 at https://sfg.taxonworks.org/api/v1/.
  • Heraty, John; Woolley, Jim, et al. 2022. Universal Chalcidoidea Database (UCD) curated in TaxonWorks [software]. Species File Group (maintainers, https://speciesfilegroup.org). Retrieved Oct 26, 2021 at https://sfg.taxonworks.org/api/v1/.
`,32),s=[n];function r(l,c){return t(),a("div",null,s)}const p=e(o,[["render",r],["__file","citing-taxonworks.html.vue"]]),h=JSON.parse('{"path":"/about/citing-taxonworks.html","title":"Citing TaxonWorks","lang":"en-US","frontmatter":{"sidebarPosition":40},"headers":[{"level":2,"title":"Software","slug":"software","link":"#software","children":[{"level":3,"title":"Collective code, documentation and API related material","slug":"collective-code-documentation-and-api-related-material","link":"#collective-code-documentation-and-api-related-material","children":[]},{"level":3,"title":"Code (version free)","slug":"code-version-free","link":"#code-version-free","children":[]},{"level":3,"title":"Code at a specific version","slug":"code-at-a-specific-version","link":"#code-at-a-specific-version","children":[]},{"level":3,"title":"Documentation (these pages)","slug":"documentation-these-pages","link":"#documentation-these-pages","children":[]},{"level":3,"title":"Other","slug":"other","link":"#other","children":[]}]},{"level":2,"title":"Data","slug":"data","link":"#data","children":[{"level":3,"title":"General citation guidance","slug":"general-citation-guidance","link":"#general-citation-guidance","children":[]},{"level":3,"title":"Other","slug":"other-1","link":"#other-1","children":[]}]},{"level":2,"title":"Other guidelines","slug":"other-guidelines","link":"#other-guidelines","children":[]},{"level":2,"title":"Additional examples","slug":"additional-examples","link":"#additional-examples","children":[]}],"git":{"updatedTime":1668384205000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":6},{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":4}]},"filePathRelative":"about/citing-taxonworks.md"}');export{p as comp,h as data}; diff --git a/assets/coding.html-4yeWtbKl.js b/assets/coding.html-4yeWtbKl.js new file mode 100644 index 00000000..25496e85 --- /dev/null +++ b/assets/coding.html-4yeWtbKl.js @@ -0,0 +1 @@ +import{_ as t,c as n,o as a,a as e,d as o}from"./app-Bwgh_xIT.js";const i={},s=e("h1",{id:"coding",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#coding"},[e("span",null,"Coding")])],-1),c=e("p",null,[e("em",null,[o("You "),e("em",null,"can"),o(" code (TaxonWorks). Here's where to learn how.")])],-1),d=e("p",null,[e("strong",null,"This page is a stub")],-1),l=[s,c,d];function r(m,_){return a(),n("div",null,l)}const p=t(i,[["render",r],["__file","coding.html.vue"]]),u=JSON.parse('{"path":"/develop/coding.html","title":"Coding","lang":"en-US","frontmatter":{"sidebarPosition":50},"headers":[],"git":{"updatedTime":1668380273000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":2}]},"filePathRelative":"develop/coding.md"}');export{p as comp,u as data}; diff --git a/assets/collecting_event.html-B7s0zL9d.js b/assets/collecting_event.html-B7s0zL9d.js new file mode 100644 index 00000000..6a3842e3 --- /dev/null +++ b/assets/collecting_event.html-B7s0zL9d.js @@ -0,0 +1 @@ +import{_ as e,c as t,o as a,b as c}from"./app-Bwgh_xIT.js";const n={},l=c('

Collecting Events

A collecting event represents a unique combination of time, space, collector, and method.

Filter collecting events

Facets

Geographic area

Requires that a GeographicArea be selected.

There are 3 settings:

  • Exact - Return all records that have this, and only this, geographic area selected. Searches on CollectingEvent#geographic_area_id.
  • Descendants - Return all records that have the geographic area(s) or their descendants selected. Searches on CollectingEvent#geographic_area_id and GeograpihcArea#parent_id.
  • Spatial - If the geographic area has a shape tied to it this is permitted. Combine the results of the Descentants search and a spatial search referencing Georeferences and return all records that match either. In additions to fields in Descendants also does a spatial search on GeographicItem#<shape or point> as linked through Georeference#geographic_item_id and further to Collecting event via Georeference#collecting_event_id.
',9),i=[l];function o(r,s){return a(),t("div",null,i)}const h=e(n,[["render",o],["__file","collecting_event.html.vue"]]),g=JSON.parse('{"path":"/guide/Manual/collecting_event.html","title":"Collecting Events","lang":"en-US","frontmatter":{"sidebarPosition":205},"headers":[{"level":2,"title":"Collecting event related tasks","slug":"collecting-event-related-tasks","link":"#collecting-event-related-tasks","children":[{"level":3,"title":"Filter collecting events","slug":"filter-collecting-events","link":"#filter-collecting-events","children":[{"level":4,"title":"Facets","slug":"facets","link":"#facets","children":[{"level":5,"title":"Geographic area","slug":"geographic-area","link":"#geographic-area","children":[]}]}]}]}],"git":{"updatedTime":1711730288000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":2}]},"filePathRelative":"guide/Manual/collecting_event.md"}');export{h as comp,g as data}; diff --git a/assets/collectionobject.html-PgkJVJ26.js b/assets/collectionobject.html-PgkJVJ26.js new file mode 100644 index 00000000..90117fcf --- /dev/null +++ b/assets/collectionobject.html-PgkJVJ26.js @@ -0,0 +1 @@ +import{_ as e,c as o,o as t,b as i}from"./app-Bwgh_xIT.js";const a={},n=i('

Collection Objects

A place for information about specimens and related collection items.

As a researcher, as an ecologist, as a collection manager, you want to gather, access, learn from, manage, (and later, share) data describing the Collection Objects (CO) that you steward. Inside TaxonWorks the CollectionObject model offers you a rich set of concepts and the ability to add custom Data Attributes as needed to store and share more data.

New collection object Task: This task suits digitization data capture workflows designed to support use of stub or skeletal records. Minimal data captured here, including text blocks, can be parsed later.

The New collection object task best suits minimal or skeletal data record creation

New Collecting Event Task: In addition to the data about the what (that is, the physical specimen itself), information about the where, how, who, and when, etcetera fit in the TaxonWorks data model in the New Collecting Event (CE) Task.

Use the New collecting event task to capture events

Comprehensive specimen digitization Task (CSD): Combined into one screen, much of the data you have related to a specimen can be entered inside this one window. Inside this task, you have access to buffered data from stub records and verbatim data that can be parsed for you. You'll find you can add people, locality information, biological association data, and add custom fields you need. The following screenshot highlights the different sections of this task in TaxonWorks.

Exploring the Comprehensive Digitization Task in TaxonWorks

Customize the layout and reorder fields

In the top right of the above screenshot, note the options to change the layout of the Comprehensive specimen digitization task. Using these options, you can hide some content if not wanted or needed and move fields into a more optimum order for your data capture strategy.

Layout settings

  • Click on Layout settings in the top right of the Comprehensive specimen digitization task.
  • In the pop-up (see next), select the sections you want to display. Any un-checked sections do not appear on your screen.
Inside this Pop-up, a checked box means that section of the CSD will display

Collection object section inside Comprehensive specimen digitization Task

In the top section of the CSD screenshot, you see sections for Catalog number, Repository, Preparation, Buffered, and Depictions.

Catalog number: TW provides several ways for you to add Catalog numbers to ensure you can find or subset your CO items as needed. Note the Namespace concept in TW which keeps Catalog numbers unique inside a TW Project.

  • Select an existing Namespace for this CO or add a New one if needed
    • You can Search to find the one you want.
    • Recent offers you items you've selected not too long ago.
    • Pinboard gives you the option to attach a given Namespace to the foreseeable items you plan to add at the moment.
  • Add your Catalog number identifier.
  • Check the increment box if you want to create records with numbers that increase accordingly.

Repository: Search for the place where the specimen resides.

  • Use Quick to search using a few letters to find the place.
  • With Recent option you can make us of the last entries made if you might be entering data for items being cared for at the same insitutions.
  • The Pinboard option lets you pick an option (for quick easy access) to be there always unless you remove it from the pinboard.

Preparation: Select the storage method type from options shown. Note you can add to this list if need be as follows.

  • Navigate to the Data tab
  • Search for Preparation types and click on the result
  • In the Preparation types window, click New
    • Type in the name of the method
    • Type the definition of what this term means.
    • Click Create Preparation type

Buffered: Information here can be typed in OR might come from a different task in TaxonWorks that involves capturing an image of labels (and specimens) and getting label text from either typing or from OCR. Data in these fields is not expected to change or be edited.

Depictions: Drag and drop any relevant media (images or figures) into this box.

Determinations section inside Comprehensive specimen digitization Task

Operational Taxonomic Unit (OTU):

  • Select the taxon concept applied (the Determination) to the specimen.
    • Quick for searching names
    • Recent to choose from names you've used for the last few records
    • Pinboard to keep a name handy you'll be selecting a lot
  • Search to select the name of the person who identified the specimen.
  • Enter the date (as much as you know) the Determination was done.
    • Year needs to be 4 digits
    • Enter 2 digits for the Month (e.g June would be 06)
    • Enter day as one or two digits. One-digit days will be standardized to have a leading zero to display in the YYYY-MM-DD format.
      • Please Do Not use zeroes as placeholders for information you do not have for year, month, or day.
  • Click Add

Collecting Event inside Comprehensive specimen digitization Task

Here you find the information about the who, when, and where for the specimen collected. Note this is a separate task in TW. (See New Collecting Event (CE) Task ). The CE fields offered here make it easier to enter all relevant information in one window, in one task. Note the CE has 3 columns, Verbatim, Parse, and then label printing and locality preview.

Verbatim Collecting Event column

  • Label: Enter data here from the label.
    • You may wish to try Parse fields for the software to help you move the label text into the correct atomized fields.
  • Locality: Enter verbatim information from the label or other source describing where on the planet this specimen was collected.
  • Latitude: if provided on label or in another related souce, enter the latitude as it is shown in the image or relevant document.
  • Longitude: if provided on label or in another related souce, enter the longitude as it is shown in the image or relevant document.
  • Geolocation uncertainty in meters: a number expected to already to be meters
  • Elevation: if provided on label or in another related souce, enter the elevation as it is shown in the image or relevant document.
  • Habitat: if provided on label or in another related souce, enter the habitat as it is shown in the image or relevant document.
  • Date: if provided on label or in another related souce, enter the date as it is shown in the image or relevant document.
  • Datum: if provided on label or in another related souce, enter the datum as it is shown in the image or relevant document.
  • Collectors: if provided on label or in another related souce, enter the collectors as they appear in the image or relevant document. This would have the collector information as it appears on your document.
  • Method: if provided on label or in another related souce, enter the method as it is shown in the image or relevant document.
  • Trip identifier: if provided on label or in another related souce, enter this identifier as it is shown in the image or relevant document.

Parse section of CE This section helps to atomize all the information about when and where and who into separate bits of information. Some features offered here include tools to help you georeference, to indicate units of measurement, and to auto-parse data from the Verbatim information.

  • Geographic area: Search to find the desired higher-level geography (e. g. State, or Country). Again (as above) you have options to use Quick, Recent, or Pinboard to speed finding the place. Additionally, you can use Map and then click on the desired place in the resulting map presented.

    • Note that you may find multiple options offered to you. Example, for Alabama, we are offered 4 choices (from various gazetteers). Some are used by many specimens. Choose the one that seems correct (or as outlined by your Project needs documentation).
  • Start date: Enter the start date (YYYY MM DD)

  • End date: Enter the end date (YYYY MM DD) for the CE

  • Elevation: note a range and uncertainty can be added here. Please declare the units.

  • Start time: If relevant and provided, enter the time the event started.

  • End time: If relevant and provided, enter the time the event ended.

  • Collectors section: Search to find the collector(s). Click the desired Collector from the drop-down list. If you have more than one, Search to find the next collector and again, Click the desired name from the drop-down list. If the name you are searching for is not there, type the name (family name, given name) and Click add new. Repeat until you have all the collectors added for that Collecting Event.

  • Trip code section: The trip code comes from the combination of a Namespace and an Identifier. Together, they server as your unique identifier you assigned to this Collecting Event.

  • Namespace : Search to find the desired Namespace (if desired). You may need to add a Namespace. To do that see New namespace task.

  • Identifier: Enter the alphanumeric value that was selected for this Collecting Event.

  • Group: This is a geological term. From Wikipedia, "a lithostratigraphic unit consisting of a series of related formations that have been classified together to form a group." Enter the Group name.

  • Formation: The full name of the lithostratigraphic formation from which the dwc:MaterialEntity was collected sensu Darwin Core dwc:formation

  • Member: The full name of the lithostratigraphic member from which the dwc:MaterialEntity was collected sensu Darwin Core:dwc:member

  • Lithology: From Wikipedia, "the lithology of a rock unit is a description of its physical characteristics visible at outcrop, in hand or core samples, or with low magnification microscopy." Enter the rock description here.

  • Minumum MA: The value representing an estimation for the minimum age of the material in million year units. MA is "megaannus".

  • Maximum MA: The value representing an estimation for the maximum age of the material in million year units.

  • Custom attributes section: Each project in TaxonWorks can add new (customized) fields to their Collecting Events or their Collection Objects. Examples might be:
    -WaterBody: The name of the water body in which the dcterms:Location occurs. This term concept (its definition and expectations) comes from the Darwin Core standard, see dwc:waterBody -georeferenceSources: A list (concatenated and separated) of maps, gazetteers, or other resources used to georeference the dcterms:Location, described specifically enough to allow anyone in the future to use the same resources. This term concept (its definition and expectations) comes from the Darwin Core standard, see dwc:georeferenceSources -lowestBiostratigraphicZone: The full name of the lowest possible geological biostratigraphic zone of the stratigraphic horizon from which the dwc:MaterialEntity was collected. This term concept (its definition and expectations) comes from the Darwin Core standard, see dwc:lowestBiostratigraphicZone.

    To add new fields to either your CollectingEvent or CollectionObject data model, you will need to access

    • the Manage Controlled Vocabulary Terms task and
    • (For Project Administrators), the Project Preferences to associate the newly added terms with the correct TW Object (e. g. the CollectionObject or CollectingEvent) so these terms will appear in the relevant tasks.

Biological Associations inside Comprehensive specimen digitization Task

in progress

Type material inside Comprehensive specimen digitization Task

in progress

',38),c=[n];function d(s,r){return t(),o("div",null,c)}const h=e(a,[["render",d],["__file","collectionobject.html.vue"]]),p=JSON.parse('{"path":"/guide/Manual/collectionobject.html","title":"Collection Objects","lang":"en-US","frontmatter":{"sidebarPosition":200},"headers":[{"level":2,"title":"Collection Object related tasks","slug":"collection-object-related-tasks","link":"#collection-object-related-tasks","children":[{"level":3,"title":"Customize the layout and reorder fields","slug":"customize-the-layout-and-reorder-fields","link":"#customize-the-layout-and-reorder-fields","children":[{"level":4,"title":"Layout settings","slug":"layout-settings","link":"#layout-settings","children":[]},{"level":4,"title":"Collection object section inside Comprehensive specimen digitization Task","slug":"collection-object-section-inside-comprehensive-specimen-digitization-task","link":"#collection-object-section-inside-comprehensive-specimen-digitization-task","children":[]},{"level":4,"title":"Determinations section inside Comprehensive specimen digitization Task","slug":"determinations-section-inside-comprehensive-specimen-digitization-task","link":"#determinations-section-inside-comprehensive-specimen-digitization-task","children":[]},{"level":4,"title":"Collecting Event inside Comprehensive specimen digitization Task","slug":"collecting-event-inside-comprehensive-specimen-digitization-task","link":"#collecting-event-inside-comprehensive-specimen-digitization-task","children":[]},{"level":4,"title":"Biological Associations inside Comprehensive specimen digitization Task","slug":"biological-associations-inside-comprehensive-specimen-digitization-task","link":"#biological-associations-inside-comprehensive-specimen-digitization-task","children":[]},{"level":4,"title":"Type material inside Comprehensive specimen digitization Task","slug":"type-material-inside-comprehensive-specimen-digitization-task","link":"#type-material-inside-comprehensive-specimen-digitization-task","children":[]}]}]}],"git":{"updatedTime":1715545752000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":3},{"name":"Deborah Paul","email":"dlpaul@illinois.edu","commits":3}]},"filePathRelative":"guide/Manual/collectionobject.md"}');export{h as comp,p as data}; diff --git a/assets/community-resources.html-7VeJB79f.js b/assets/community-resources.html-7VeJB79f.js new file mode 100644 index 00000000..2f0f26ea --- /dev/null +++ b/assets/community-resources.html-7VeJB79f.js @@ -0,0 +1 @@ +import{_ as e,c as o,o as a,b as t}from"./app-Bwgh_xIT.js";const r={},s=t('

Community Documentation

Those using TW often create their own software manuals. They also produce customized workflows, protocols and procedures for specific tasks. Here, everyone can share access, input, and curation for these products.

Manuals

Universal Chalcidoidea Database (UCD) Project

  • Help Documentation from UCD@TW The Universal Chalcidoidea Database (UCD) Project in TW shares their manual with detailed instructions for using TaxonWorks to collectively manage nomenclatural and related taxonomic information for this group. Currently at version 2-19.

Orthoptera Species File (OSF) Community

  • Guide to using filters in TaxonWorks The OSF community shares this manual to help all of us learn how to use the filters in TaxonWorks (e. g. Filter Nomenclature, Filter Sources, Filter CollectionObjects, Filter OTUs). Much of this how-to use filters will find its way into the shared cross-project documentation. Contact María Belén Cabrera mabecabrera at yahoo.com.ar to contribute and for questions.

Workflows

INHS Insect Collection Standard Operating Procedures (SOPS)

  • Guide to INHS TaxonWorks Tasks This guide is very much a work in progress, and is intermittently uploaded, mostly by TC McElrath (contact monotomidae at gmail.com) for questions or if you have any comments.
',10),i=[s];function n(l,c){return a(),o("div",null,i)}const u=e(r,[["render",n],["__file","community-resources.html.vue"]]),h=JSON.parse('{"path":"/guide/community-resources.html","title":"Community Documentation","lang":"en-US","frontmatter":{"sidebarPosition":50},"headers":[{"level":2,"title":"Manuals","slug":"manuals","link":"#manuals","children":[{"level":3,"title":"Universal Chalcidoidea Database (UCD) Project","slug":"universal-chalcidoidea-database-ucd-project","link":"#universal-chalcidoidea-database-ucd-project","children":[]},{"level":3,"title":"Orthoptera Species File (OSF) Community","slug":"orthoptera-species-file-osf-community","link":"#orthoptera-species-file-osf-community","children":[]}]},{"level":2,"title":"Workflows","slug":"workflows","link":"#workflows","children":[{"level":3,"title":"INHS Insect Collection Standard Operating Procedures (SOPS)","slug":"inhs-insect-collection-standard-operating-procedures-sops","link":"#inhs-insect-collection-standard-operating-procedures-sops","children":[]}]}],"git":{"updatedTime":1695167580000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":1},{"name":"Deborah Paul","email":"dlpaul@illinois.edu","commits":1},{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"guide/community-resources.md"}');export{u as comp,h as data}; diff --git a/assets/contact.html-DcLCm-PO.js b/assets/contact.html-DcLCm-PO.js new file mode 100644 index 00000000..d9670fde --- /dev/null +++ b/assets/contact.html-DcLCm-PO.js @@ -0,0 +1 @@ +import{_ as e,c as t,o as a,b as o}from"./app-Bwgh_xIT.js";const n={},s=o('

Contact

TW offers many ways for the community to offer help, find answers, and welcome all to join in the collective commons centered around the needs of researchers.

Chat

Developers and users are almost always online to chat. Join us via TaxonWorks Gitter Chat. A Github, or linked account is required to chat. The channel is open for all to review and search. Or join us through our TaxonWorks Slack that is connected to the Gitter Chat.

Species File Group Community Liason

The Species File Group has a full time community liason that supports TaxonWorks and its other products. Contact Deborah Paul.

Connect with TaxonWorks Users

TaxonWorks users frequent the Chat, and TaxonWorks events.

',8),r=[s];function i(c,l){return a(),t("div",null,r)}const p=e(n,[["render",i],["__file","contact.html.vue"]]),u=JSON.parse('{"path":"/about/contact.html","title":"Contact","lang":"en-US","frontmatter":{"sidebarPosition":10},"headers":[{"level":2,"title":"Chat","slug":"chat","link":"#chat","children":[]},{"level":2,"title":"Species File Group Community Liason","slug":"species-file-group-community-liason","link":"#species-file-group-community-liason","children":[]},{"level":2,"title":"Connect with TaxonWorks Users","slug":"connect-with-taxonworks-users","link":"#connect-with-taxonworks-users","children":[]}],"git":{"updatedTime":1676560206000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":2},{"name":"mjy","email":"diapriid@gmail.com","commits":2}]},"filePathRelative":"about/contact.md"}');export{p as comp,u as data}; diff --git a/assets/contributing.html-CroaaUjK.js b/assets/contributing.html-CroaaUjK.js new file mode 100644 index 00000000..a1a7b931 --- /dev/null +++ b/assets/contributing.html-CroaaUjK.js @@ -0,0 +1,33 @@ +import{_ as e,c as a,o,b as n}from"./app-Bwgh_xIT.js";const t={},i=n(`

Contribuyendo

Las contribuciones pueden ser de diferentes maneras, no todas son tecnicas. Como puedo contribuir? Puede contactarnos con cualquier pregunta.

Ideas, solicitud de caracteristicas

Proveer una interfaz o una idea de flujo de trabajo

Primeramente, queremos agradecerle por esta tarea complicada. Interfaces (Por ejemplo, formularios, reportes, busquedas) los mockups son formas graficas de pedir por nuevas funcionalidades. Nos encanta verlos. Para crear un mock-up puede utilizar herramientas como Illustrator, Photoshop, o herramientas mas sofisticadas para este fin como Adobe XD, Pencil, Figma o Sketch, o simplemente puede dibujarla en un papel y tomarle una fotografia con su telefono. Los issue templates tienen campos para procesar imagenes, simplemente arrastrelas a la ventana y sueltelas allí. Escriba una pequeña historia de caso de uso, o agregue multiples imagenes que ayuden a describir como podrias utilizar esta interfaz.

Provea una sugerencia para una funcionalidad o una mejora por medio de un video

Envielo! Es muy util que nos envie una grabación de su pantalla, o posicione la camara para que capture su trabajo en panalla y su entorno. Puede enviarnos los videos a traves de servicios como http://www.dropsend.com/. Busque la forma de contactarnos aqui

Codigo

Siga las convenciones de codigo de TaxonWorks

  • Varios archivos README.md existen en el codigo base.
  • Tenemos un linter de codigo(Rubocop), pero no es muy utilizado. Con el crecimiento esto podria cambiar. Tambien utilizamos ESLint para nuestro ecosistema de JavaScript moderno.

Submit changes to the code base or repository

  • Haga un Fork del repositorio en Github
  • Haga una nueva rama a partir de la rama development
    • Ayuda trackear el issue si la rama del branch comienza con el numero de este, por ejemplo 1234_my_feature_request
  • Si tiene experiencia, haga un rebase de su rama a partir de development antes de hacer un pull request
  • Desde su repositorio en GitHub, seleccione su rama y utilice allí para realizar un pull request.

Documentar el codigo?

La documentación del codigo de TaxonWorks se hace en linea con Yard tags.

Documentación

Este software junto a su flujo de trabajo hacen posible para todos contribuir a TaxonWorks Doc. Notese que todas las paginas aquí en docs.taxonworks.org tienen la funcionalidad de "Edita esta pagina en GitHub". Scrollea abajo del todo para verla.

Editando

Puede editar los archivos fuera de linea, en su propia computadora, o en linea dentro del navegador.

Necesitará una cuenta en Github.

NOTA: Usando este metodo también se garantiza que todos obtengan crédito y reconocimiento de contribución junto con la posibilidad de generar métricas y realizar un seguimiento de su trabajo.

En linea

Un breve resumen de los pasos.

  • Inicie session con su cuenta de Github.
  • Vuelva a docs.taxonworks.org
  • En cualquier pagina de documento, scrollee hasta abajo y haga click en "Editar esta pagina" donde vea que sea necesario.
  • Agregue o edite el texto deseado.
  • Asegúrese de que sus ediciones sigan el formato de la convención de estilo. Use el formato Markdown.
  • Si necesita agregar una imagen, vea la sección incluyendo una captura de pantalla.
  • Haga click en Commit changes para hacer un "pull request."
    • Rellene los campos utilizando el idioma ingles.
    • Agregue una muy breve descripción de sus cambios en el campo de texto que tiene Update ...
    • Opcionalmente, si lo desea, agregue una descripción mas larga en el campo de texto mas grande.
    • En su mensaje no utilice palabras como "Changed, tweaked, updated", describa que cosa fue hecha.
    • Elija la segunda opción Create a new branch .... Hay una excepción a esto, si sus cambios fueron pequeños y están listos para ir directo al sitio publico, entonces puede realizar un commit directamente a la rama development.
    • Haga click en Commit changes nuevamente.

Un miembro del repositorio de TaxonWorks Docs lo revisará, hará ediciones, le hará preguntas de ser necesario, y luego aceptará el pull request para fusionarlo en la documentación.

Que rama debería utilizar?

Al momento de decidir en que rama hacer el cambio, comience preguntándose: "¿Mi cambio está listo para publicarse ahora mismo?". Si la respuesta es si(Y tiene permisos), entonces puede hacer un commit a la rama development. Si la respuesta es no (Por ejemplo, quiere refinar aun mas el texto), entonces debería hacer el commit a una rama nueva.

Adicionalmente:

  • La rama development es el escenario de la rama main.
  • Siempre debe asumir que la rama development será publicada en cualquier momento.
  • Los cambios en development pueden acumularse antes de moverse a main.
  • La rama main nunca debe commitearse directamente. Los cambios a la rama main suceden cuando la rama development es funcionada dentro de esta.
  • Siempre es mas seguro y esta bien comenzar una rama nueva.
  • Siempre es mejor limitar el limite de tus cambios en cada nueva rama.
  • Si tiene una larga lista de cambios en su rama es util comenzar su session de edición funcionando development dentro de su rama de trabajo. Esto mantiene las diferencias entre development y su rama al mínimo.
  • Si está editando localmente, asegúrese de sincronizar sus cambios con los del servidor remoto (gil pull) antes de comenzar su session de edición.

Fuera de linea

La edición fuera de linea sigue el flujo de trabajo de git que está detallado en GitHub y en muchos otros lugares en linea

  • Haga un fork del repositorio
  • Haga un clon del fork en su computadora
  • Cree una nueva rama de característica
  • Edite y haga un commit a la rama
  • Haga un push de sus archivos editados a su fork en GitHub
  • Haga un pull request

Incluyendo una captura de pantalla

Agregando documentación, notará que en todas las paginas de docs.taxonworks.org puede hacer un click en el icono del pincel para agregar/editar el texto. Para manejar los archivos de imagenes que agregamos a la documentación, utilizamos TaxonWorks Meta Project alojado en sfg.taxonworks.org. Para agregar imágenes a este, envíe un correo electrónico a dlpaul ARROBA illinois PUNTO edu o escribanos a traves de gitter. Cuando tome capturas de pantalla, tenga en cuenta que la resolución del monitor de su computadora marca la diferencia si estas imágenes son nítidas y claras o están pixeladas.

  • Tome las capturas de pantalla deseadas.
  • Suba esas imágenes(Todas o una por ves) a TaxonWorks Meta Project usando la tarea New Image.

En taxonWorks, busque el link de la imagen generada utilizando la tarea Filter Image. Utilice la faceta Housekeeping para limitar los resultados buscando las imágenes subidas por usted.

  • En el set resultante, haga click en la imagen deseada
  • Haga click en el Navegador radial debajo de la imagen y seleccione Show.
  • En Attributes copie el short URL to original URL link.
  • Vuelva a la edición de la documentación y use el formato markdown o HTML debajo para insertar las imágenes (Los ejemplos se encuentran debajo).
  • Note que ambos métodos permiten especificar el tamaño de la imagen

Markdown para imágenes con subtitulo

Los ejemplos aqui muestran en formato Markdown(md) como agregar una imagen con subtitulo.

  • Seleccione una de las cuatro opciones debajo para su subtitulo. Ponga esa linea de texto dentro de la documentación como texto descriptivo.
  • Con la opción position, elija left, center, o right para alinear el subtitulo de acuerdo a la opción elegida.
  • Escriba el texto de su elección dentro de los corchetes [el texto del subtitulo va aquí]
  • Peguelo en el short URL to original URL link (Desde Filter Image > Navegador radial > Show > Attributes).
  • Agregue el texto alt dentro de los corchetes, es buena practica incluirlo para accesibilidad.
  • (Opcional) Declare el ancho y alto o ambas de la imagen para controlar el tamaño en el que se mostraran.
  • El tamaño por defecto funciona bien. Algunas veces dependiendo de la captura de pantalla podría aparecer muy larga y entonces esta opción permite la opción de modificar su tamaño.
#position[caption text goes here](link [alt text if you want it])
+#position[caption text goes here](link [alt text if you want it] w{60%})
+#position[caption text goes here](link [alt text if you want it] h{50%})
+#position[caption text goes here](link [alt text if you want it] w{80%} h{50%})
+

HTML para imágenes con subtitulo

<figure>
+  <img
+    src="https://sfg.taxonworks.org/s/rdc03q"
+    alt="Sample image"
+    style="width:100%"
+  />
+  <figcaption>Fig.1 - A TaxonWorks Interface</figcaption>
+</figure>
+

Agregar un archivo

Ordenando el contenido del menu lateral

Esto se controla alfabéticamente, o se puede sobrescribir a través de 2 parámetros de frontmatter, sidebarPosition y sidebarParentPosition.

sidebarPosition

Dentro de cualquier archivo de documentación, puede modificar el orden dentro del contexto de los otros archivos en el mismo directorio.

sidebarParentPosition

Unicamente en los archivos README.md. Utilícelo cuando quiera cambiar la posición del directorio dentro del contexto de otros directorios y archivos a nivel de ese directorio.

Orden por nombre de archivo.

Por defecto, el sistema tomará los archivos dentro del directorio y los ordenará por alfabetico segun el nombre del archivo para generar el menu lateral. Por ejemplo:

Estructura de carpeta:

-- Mi carpeta de ejemplo
+---- bar.md
+---- foo.md
+

Nombre de archivo: foo.md

# A es la primera letra de este titulo
+

Nombre de archivo: bar.md

# B es la primera letra de este titulo
+
Resultado del menu lateral:
Mi carpeta de ejemplo
+  B es la primera letra de este titulo
+  A es la primera letra de este titulo
+

Ordenar por medio de la variable sidebarPosition

sidebarPosition permite que cambie el orden del menu lateral independientemente del orden alfabético de los archivos. Tomemos el ejemplo de arriba, pero ahora vamos a agregar sidebarPosition en cada archivo para cambiar su orden:

Nombre de archivo: foo.md

---
+sidebarPosition: 200
+---
+# A es la primera letra de este titulo
+

Nombre de archivo: bar.md

---
+sidebarPosition: 100
+---
+# B es la primera letra de este titulo
+
Resultado del menu lateral:
Mi carpeta de ejemplo
+  B es la primera letra de este titulo
+  A es la primera letra de este titulo
+

Convenciones de estilo

Para escribir la documentación utilizamos Markdown. Existen muchas guías sobre como redactar un documento en este formato, por ejemplo en GitHub.

  • Negrita - ?
  • Itálicas - As typically used in English writing, to add emphasis, or draw attention.
  • "Doble comillas"
  • 'Simple comillas' son valores literales para ser ingresados u observados
  • Balas - Acciones que instruyen al usuario a tomar. Como en este listado.
  • Lista numerada - Sin uso?
  • Tildes \` Se utiliza para envolver texto, vea el siguiente ejemplo.
  • Highlighted words (envuelto por tildes) se refiere típicamente a texto o elementos, típicamente literales, en la aplicación, que generalmente son parte de la interfaz de usuario (a diferencia de los datos dinámicos que se muestran). Por ejemplo, pueden estar en nombres de botones o campos como Data, Tasks, Favourite tabs
  • Citas en linea - ?? (use "> ")

    Esta es una cita en linea

  • Bloque de triple comillas - úselo para ejemplos literales. Ponga tres comillas \`\`\` antes del bloque de texto y 3 comillas al final del mismo. Esto dará como resultado el siguiente bloque de codigo.
Algún ejemplo de codigo o literal.
+

Gestión de proyecto

Cómo se clasifican, priorizan y discuten los issues.

Categorizar un issue en GitHub

No todos tienen permiso para etiquetar un issue. Vea su descripción.

`,76),r=[i];function s(l,d){return o(),a("div",null,r)}const u=e(t,[["render",s],["__file","contributing.html.vue"]]),p=JSON.parse('{"path":"/es/develop/contributing.html","title":"Contribuyendo","lang":"es-ES","frontmatter":{"sidebarPosition":30},"headers":[{"level":2,"title":"Ideas, solicitud de caracteristicas","slug":"ideas-solicitud-de-caracteristicas","link":"#ideas-solicitud-de-caracteristicas","children":[{"level":3,"title":"Proveer una interfaz o una idea de flujo de trabajo","slug":"proveer-una-interfaz-o-una-idea-de-flujo-de-trabajo","link":"#proveer-una-interfaz-o-una-idea-de-flujo-de-trabajo","children":[]},{"level":3,"title":"Provea una sugerencia para una funcionalidad o una mejora por medio de un video","slug":"provea-una-sugerencia-para-una-funcionalidad-o-una-mejora-por-medio-de-un-video","link":"#provea-una-sugerencia-para-una-funcionalidad-o-una-mejora-por-medio-de-un-video","children":[]}]},{"level":2,"title":"Codigo","slug":"codigo","link":"#codigo","children":[{"level":3,"title":"Siga las convenciones de codigo de TaxonWorks","slug":"siga-las-convenciones-de-codigo-de-taxonworks","link":"#siga-las-convenciones-de-codigo-de-taxonworks","children":[]},{"level":3,"title":"Submit changes to the code base or repository","slug":"submit-changes-to-the-code-base-or-repository","link":"#submit-changes-to-the-code-base-or-repository","children":[]},{"level":3,"title":"Documentar el codigo?","slug":"documentar-el-codigo","link":"#documentar-el-codigo","children":[]}]},{"level":2,"title":"Documentación","slug":"documentacion","link":"#documentacion","children":[{"level":3,"title":"Editando","slug":"editando","link":"#editando","children":[{"level":4,"title":"En linea","slug":"en-linea","link":"#en-linea","children":[]},{"level":4,"title":"Que rama debería utilizar?","slug":"que-rama-deberia-utilizar","link":"#que-rama-deberia-utilizar","children":[]},{"level":4,"title":"Fuera de linea","slug":"fuera-de-linea","link":"#fuera-de-linea","children":[]}]},{"level":3,"title":"Incluyendo una captura de pantalla","slug":"incluyendo-una-captura-de-pantalla","link":"#incluyendo-una-captura-de-pantalla","children":[{"level":4,"title":"Markdown para imágenes con subtitulo","slug":"markdown-para-imagenes-con-subtitulo","link":"#markdown-para-imagenes-con-subtitulo","children":[]},{"level":4,"title":"HTML para imágenes con subtitulo","slug":"html-para-imagenes-con-subtitulo","link":"#html-para-imagenes-con-subtitulo","children":[]}]},{"level":3,"title":"Agregar un archivo","slug":"agregar-un-archivo","link":"#agregar-un-archivo","children":[]},{"level":3,"title":"Ordenando el contenido del menu lateral","slug":"ordenando-el-contenido-del-menu-lateral","link":"#ordenando-el-contenido-del-menu-lateral","children":[{"level":4,"title":"sidebarPosition","slug":"sidebarposition","link":"#sidebarposition","children":[]},{"level":4,"title":"sidebarParentPosition","slug":"sidebarparentposition","link":"#sidebarparentposition","children":[]},{"level":4,"title":"Orden por nombre de archivo.","slug":"orden-por-nombre-de-archivo","link":"#orden-por-nombre-de-archivo","children":[{"level":5,"title":"Resultado del menu lateral:","slug":"resultado-del-menu-lateral","link":"#resultado-del-menu-lateral","children":[]}]},{"level":4,"title":"Ordenar por medio de la variable sidebarPosition","slug":"ordenar-por-medio-de-la-variable-sidebarposition","link":"#ordenar-por-medio-de-la-variable-sidebarposition","children":[{"level":5,"title":"Resultado del menu lateral:","slug":"resultado-del-menu-lateral-1","link":"#resultado-del-menu-lateral-1","children":[]}]}]},{"level":3,"title":"Convenciones de estilo","slug":"convenciones-de-estilo","link":"#convenciones-de-estilo","children":[]}]},{"level":2,"title":"Gestión de proyecto","slug":"gestion-de-proyecto","link":"#gestion-de-proyecto","children":[{"level":3,"title":"Categorizar un issue en GitHub","slug":"categorizar-un-issue-en-github","link":"#categorizar-un-issue-en-github","children":[]}]}],"git":{"updatedTime":1716075775000,"contributors":[{"name":"jlpereira","email":"pepelui@outlook.com","commits":2},{"name":"Tom Klein","email":"twointofive@gmail.com","commits":1}]},"filePathRelative":"es/develop/contributing.md"}');export{u as comp,p as data}; diff --git a/assets/contributing.html-fneavcB-.js b/assets/contributing.html-fneavcB-.js new file mode 100644 index 00000000..8e2f43ec --- /dev/null +++ b/assets/contributing.html-fneavcB-.js @@ -0,0 +1,33 @@ +import{_ as e,c as t,o as a,b as o}from"./app-Bwgh_xIT.js";const i={},n=o(`

Contributing

Contributions can come in many different ways, not all are technical. How do I contribute? You can always contact us with questions.

Ideas, feature requests

Provide an interface or workflow idea

First, thanks, this is complicated stuff. Interface (e.g. forms, reports, searches) mockups are graphical ways of asking for new features. We love to see them. To create a mock-up you can use tools like Illustrator, Photoshop, or more technical design tools like Balsamiq or Sketch, or just draw them on paper and take a picture with your phone. The issue templates have inputs for handling images, just drag and drop them there. Add a little story, or multiple pictures to help describe how you might use the interface.

Provide a suggestion for a feature or improvement via a video

Send! It is super useful for you to record your screen, or position a video camera to capture your work on-screen and arround you. This way we see exactly how you work. You can send us big videos through file sharing services like http://www.dropsend.com/. Find ways to Contact us here.

Code

Follow TaxonWorks code conventions

  • Various README.md files exist in the code-base.
  • We have code linter (Rubocop), but it is not heavily used. With growth this may change.

Submit changes to the code base or repository

  • Fork the repository on Github
  • Make a new branch off of the development branch
    • It helps if the branch tracks an issue number, like 1234_my_feature_request
  • If you have experience, rebase your branch against development before making a pull request
  • From your repository on Github select your branch, and use buttons there to make a pull request.

Document the code?

TaxonWorks code documentation is done inline with Yard tags.

Documentation

This software and workflow together make it possible for all to contribute to TaxonWorks Doc. Note all the pages here in docs.taxonworks.org have an "edit this page" feature. Scroll down to bottom of this page to see it.

Editing

You can edit files offline, on your own local computer, or online within the browser.

You will need a Github account.

NOTE: Using this method also ensures everyone gets contribution credit and recognition along with the ability to generate metrics and track this work.

Online

A brief summary of the steps.

  • Login to your Github account.
  • Return to docs.taxonworks.org
  • On any given document, scroll to the bottom, and click Edit this page where you see a need.
  • Add or edit your text.
  • Ensure your edits follow the style conventions. We use Markdown to style text.
  • If you need to add an image see including a screenshot.
  • Click Commit changes to submit a "pull request."
  • In the form that pops up:
    • Add a (very) brief description of your change in the filed that has Update README.md in muted colors
    • Add a longer optional description in the bigger box, if you want
    • In your message not to use words like "Changed, tweaked, updated", describe what was done
    • Choose the second option Create a new branch .... There is an exception to this, if your changes are small, and ready to go directly to the public site, then you can commit to the development branch.
  • Click Commit changes again

A TaxonWorks Docs GitHub repository team member will review, make edits, ping you with questions if needed, and then ultimately accept the pull request to "merge" this our documentation.

What branch should I use?

In deciding which branch to make a change on start by asking the question: "Is my change ready to go live, right now?" If the answer is yes (and you have permissions) then you can commit to the development branch. If the answer is no (e.g. you want to further refine your text), then you should commit to a new branch.

In addition:

  • The development branch is the staging ground for the main branch.
  • You should always assume that that development branch changes will go live at any time.
  • Development changes may accumulate before moving to main.
  • The main branch must never be committed to directly. Changes to main happen when development is merged into it.
  • It is always safest, and OK, to start a new branch.
  • It's best to limit the scope of your changes on each new branch.
  • If you have large/ongoing changes to your branch its useful to start your editing session by merging development into your branch. This keeps the differences between development and your branch minimal.
  • If you are editing locally, make sure you syncronize your changes with those on the remote server (git pull) before you start your editing session.

Offline

Offline editing follows a typical Git-based workflow that are detailed on Github and many other places online.

  • Fork the repository
  • Clone the fork your local machine
  • Make a new feature branch
  • Edit, and commit to the branch
  • Push your local edits to your Github fork
  • Make a pull request

Including screenshots or images

In adding documentation, you will note that on any page at docs.taxonworks.org you can click the Edit pencil icon to add / edit text. To manage the screenshot image files we add to the documentation, we use TaxonWorks Meta Project hosted on sfg.taxonworks.org. To add screenshots to this documentation, you'll need to become a member of that TaxonWorks Meta Project. Let us know you want to be added (e.g. send dlpaul AT illinois DOT edu an email, or ping us on gitter or our TaxonWorks Slack Workspace). When taking screenshots, note the resolution of your computer's monitor makes a difference if these images are sharp and clear or out of focus.

  • Take the desired screenshots.
  • Upload these images (in bulk or one-at-a-time) to the TaxonWorks Meta Project using the New Image task.

In TaxonWorks, find the generated image link URLs, using the Filter Image task. Try Filter Image using the Housekeeping filter to limit your result set to only images uploaded by you.

  • In the resulting set, click on the desired image, then
  • Click the Navigate radial under the image and select Show.
  • From Attributes copy the short URL to orginal URL link.
  • Return to editing documentation and use the Markdown format or HTML format below to insert image URLs (examples next).
    • Note that both methods allow you to specify the image size.

Image caption markdown (writing docs)

Examples here show the markdown (md) format for adding a caption to an image.

  • Select one of the four options below for your caption. Put that text string into the documentation as described next.
  • With the position option, choose left, center, or right which aligns your caption text according to what you pick.
  • Enter the text of your choice in-between the brackets [caption text goes here].
  • Paste in the short URL to orginal URL link (from Filter Image > Navigate radial > Show > Attributes).
  • Add alt text in-between brackets. It is best practice to include this for accessibility.
  • (Optional) Declare the width or height or both of the image to control the size displayed.
    • The default sizes works well. Sometimes, depending on the screenshot, it might appear too large and then this option gives you the ability to modify the size.
#position[caption text goes here](link [alt text if you want it])
+#position[caption text goes here](link [alt text if you want it] w{60%})
+#position[caption text goes here](link [alt text if you want it] h{50%})
+#position[caption text goes here](link [alt text if you want it] w{80%} h{50%})
+

HTML for image with caption

<figure>
+  <img
+    src="https://sfg.taxonworks.org/s/rdc03q"
+    alt="Sample image"
+    style="width:100%"
+  />
+  <figcaption>Fig.1 - A TaxonWorks Interface</figcaption>
+</figure>
+

Adding a file

  • After you fork the repository you can use Github directly to add a new file . You can also add a new file within the Github interface

Ordering sidebar content

In brief this is controlled alphabetically, or it can be over-written via 2 frontmatter parameters, sidebarPosition and sidebarParentPosition.

sidebarPosition

Where: In any (README.md or other) documentation file. When: You want to position the content of that document within the context of the other files within that directory.

sidebarParentPosition

Where: Only in a README.md. When: You want to position the name of the directory within the context of other directories and files at the level of that directory.

Order by filename

First, the system will take the files within the directory in alphabetical order of the filenames to generate the sidebar. For example:

Folder structure:

-- My folder example
+---- bar.md
+---- foo.md
+

Filename: foo.md

# A is the first letter of this title
+

Filename: bar.md

# B is the first letter of this title
+
My folder example
+  B is the first letter of this title
+  A is the first letter of this title
+

Order by sidebarPosition variable

sidebarPosition allows you to change the order of the sidebar regardless of the alphabetical order of the files. Let's take the example above, but now we're going to add sidebarPosition in each file to change the order:

Filename: foo.md

---
+sidebarPosition: 200
+---
+# A is the first letter of this title
+

Filename: bar.md

---
+sidebarPosition: 100
+---
+# B is the first letter of this title
+
My folder example
+  B is the first letter of this title
+  A is the first letter of this title
+

Style conventions

We use Markdown. Many guides exist, for example on GitHub.

  • Bold - ?
  • Italics - As typically used in English writing, to add emphasis, or draw attention.
  • "Double quotes" - follow typical English use.
  • 'Single quoted words' are literal values to be input or observed
  • Bullets - Actions we are instructing the user to take. Do this now.
  • Numbered bullets - Unused?
  • Backticks \` are used to wrap text. See next.
  • Highlighted words (surrounded by backticks) refer to, typically literal, text or elements in the application, that are generally part of the user interface (as opposed to dynamic data being displayed). For example they might be on button or field names like "Notice the Data, Tasks, Favourite tabs".
  • Inline quotes - ?? (use "> ")

    this is an inline quote

  • Triple-tick blocks - use these for literal examples. Put 3 backtick marks \`\`\` before the text block and 3 backtick marks after the text. This results in the following block in documentation.
Some code, or literal example.
+

Project management

How to issues are triaged, prioritized, and discussed.

Categorize an Issue on Github

Not everyone has permissions to label issues.See their descriptions.

`,76),s=[n];function r(l,d){return a(),t("div",null,s)}const h=e(i,[["render",r],["__file","contributing.html.vue"]]),u=JSON.parse('{"path":"/develop/contributing.html","title":"Contributing","lang":"en-US","frontmatter":{"sidebarPosition":30},"headers":[{"level":2,"title":"Ideas, feature requests","slug":"ideas-feature-requests","link":"#ideas-feature-requests","children":[{"level":3,"title":"Provide an interface or workflow idea","slug":"provide-an-interface-or-workflow-idea","link":"#provide-an-interface-or-workflow-idea","children":[]},{"level":3,"title":"Provide a suggestion for a feature or improvement via a video","slug":"provide-a-suggestion-for-a-feature-or-improvement-via-a-video","link":"#provide-a-suggestion-for-a-feature-or-improvement-via-a-video","children":[]}]},{"level":2,"title":"Code","slug":"code","link":"#code","children":[{"level":3,"title":"Follow TaxonWorks code conventions","slug":"follow-taxonworks-code-conventions","link":"#follow-taxonworks-code-conventions","children":[]},{"level":3,"title":"Submit changes to the code base or repository","slug":"submit-changes-to-the-code-base-or-repository","link":"#submit-changes-to-the-code-base-or-repository","children":[]},{"level":3,"title":"Document the code?","slug":"document-the-code","link":"#document-the-code","children":[]}]},{"level":2,"title":"Documentation","slug":"documentation","link":"#documentation","children":[{"level":3,"title":"Editing","slug":"editing","link":"#editing","children":[{"level":4,"title":"Online","slug":"online","link":"#online","children":[]},{"level":4,"title":"What branch should I use?","slug":"what-branch-should-i-use","link":"#what-branch-should-i-use","children":[]},{"level":4,"title":"Offline","slug":"offline","link":"#offline","children":[]}]},{"level":3,"title":"Including screenshots or images","slug":"including-screenshots-or-images","link":"#including-screenshots-or-images","children":[{"level":4,"title":"Image caption markdown (writing docs)","slug":"image-caption-markdown-writing-docs","link":"#image-caption-markdown-writing-docs","children":[]},{"level":4,"title":"HTML for image with caption","slug":"html-for-image-with-caption","link":"#html-for-image-with-caption","children":[]}]},{"level":3,"title":"Adding a file","slug":"adding-a-file","link":"#adding-a-file","children":[]},{"level":3,"title":"Ordering sidebar content","slug":"ordering-sidebar-content","link":"#ordering-sidebar-content","children":[{"level":4,"title":"sidebarPosition","slug":"sidebarposition","link":"#sidebarposition","children":[]},{"level":4,"title":"sidebarParentPosition","slug":"sidebarparentposition","link":"#sidebarparentposition","children":[]},{"level":4,"title":"Order by filename","slug":"order-by-filename","link":"#order-by-filename","children":[{"level":5,"title":"Sidebar result:","slug":"sidebar-result","link":"#sidebar-result","children":[]}]},{"level":4,"title":"Order by sidebarPosition variable","slug":"order-by-sidebarposition-variable","link":"#order-by-sidebarposition-variable","children":[{"level":5,"title":"Sidebar result:","slug":"sidebar-result-1","link":"#sidebar-result-1","children":[]}]}]},{"level":3,"title":"Style conventions","slug":"style-conventions","link":"#style-conventions","children":[]}]},{"level":2,"title":"Project management","slug":"project-management","link":"#project-management","children":[{"level":3,"title":"Categorize an Issue on Github","slug":"categorize-an-issue-on-github","link":"#categorize-an-issue-on-github","children":[]}]}],"git":{"updatedTime":1716075775000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":12},{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":6},{"name":"Tom Klein","email":"twointofive@gmail.com","commits":1},{"name":"jlpereira","email":"pepelui@outlook.com","commits":1}]},"filePathRelative":"develop/contributing.md"}');export{h as comp,u as data}; diff --git a/assets/conventions.html-zLGNohUl.js b/assets/conventions.html-zLGNohUl.js new file mode 100644 index 00000000..1945a4be --- /dev/null +++ b/assets/conventions.html-zLGNohUl.js @@ -0,0 +1 @@ +import{_ as e,c as t,o,b as a}from"./app-Bwgh_xIT.js";const i={},n=a('

The User Interface

TaxonWorks offers conventions via a unique user interface building in forward-aware methods like automated data validation to aid navigation and data fitness.

Philosophy

  • TW seeks to offer a user interface (UI) that is as intuitive as possible that supports elegant software features to improve both the experience and the data products.
  • This guide and manual exemplify one way in which the Species File Group and TaxonWorks endeavor to build a sustainable, open, transparent community. The software and process for building and maintaining the content here were selected specifically for ease of community curation of this resource.
  • The structure, tasks, and features of TW focus on addressing specifically-stated needs of those using the product. We use an agile, "epic story" approach that can be summarized as: As a [your role], I want to do [your task], in order to accomplish [some product].
  • Note color conventions used in the TW UI offer information to orient the observer to more information (e.g. this task is still under development, or these data are shared across projects).

Logging in

This screenshot provides a quick overview of the TW User Interface after log in. In the caption, you will find brief descriptions of each highlighted feature. If you have an account, please log in and click to try header menu options.

Legend: The TaxonWorks User Interface after signin. See items explained next
  • In the header menu (left-to-right), click
    • TaxonWorks to return to this Dashboard view
    • (copy) software version number (e.g. v0.28.0)
    • Issues to submit an idea or issue to GitHub
    • Project to manage a specific project
    • Administration to see/access all projects you administer
    • Account to access your own account information
    • Sign out/in

In the main section (left-to-right): click items under the headers. Options under Projects give you access to all your projects. With Data you can view recently created data added for that project. With Preferences you can order the User Interface hub options Tasks, Data, and Favorites.

  • On the far bottom right, note the four icons (top to bottom).
    • Click a half-circle icon on the right side to open a panel

The red circle opens the PDF Document viewer. The green circle gives you a Pinboard to access frequently used items like source PDFs. With the blue circle, you get a Clipboard for frequently used text. The orange circle provides built-in context-dependent Help.

Administration

Next, for any given Project you select, notice the UI changes once you click Administration for that Project. In the Administration module you can, for example: see/add project members, and control permissions. In any TW sandbox, you can add yourself to other projects using the Administration link. See next for more about the Administraion tools.

Legend: The TaxonWorks Project Administration UI. See options explained next.

In the main section under Projects you can click to create a New Project or use Projects overview to find a Project and add a current TW user as a member.

From the Users section, you have options to add a New user, add multiple users using Batch add new, List all users, and see the Activity for all Projects and Users.

Under the Data topic, using Overview you can create specific reports for different data types and projects. With Health you find any data issues that the TW software has detected. Reindex opens an option for you to create Darwin Core (standard) occurrence records.

Add New Project

Legend: Add New Project UI
  • To create a New Project
    • Click Administration in the header menu,
    • then under Projects click New
    • Enter the desired Name in the field provided
    • You are a member by default.
      • Uncheck if creating for others.
    • For the API access token you select
      • Generate new token if you want to be able to access your data programatically
      • clear api access token if you need / want to stop all public programatic access to your data.
    • Click Create Project.

As a result, your Dashboard list will include the new Project. If for some reason you find you need to edit the name of your project, it's also editable after creation.

Adding folks to projects

Users need to be added to TW before they can become Project members. Once a user, they can be added as members, to any project desired. If you are flagged as an administrator you can do everything in the workbench. As an admin, you see the Adminstration link in the header menu. Feel free to add users to your sandbox through the Administration link. If you do, please provide them a link to this Terms of Use Page and our Collaboration Understanding.

Sandbox Only: Feel free to add yourself to projects that are currently not visible to you. Steps to do this:

  • Click Administration (top right)
  • Click Projects overview (on left)
  • Click List
  • Review the list, select one using Double click for that row
  • Click Add project member, find your name
  • Click Create Project member

Add New User

Before adding anyone to the list of TW Users, please check the list as someone may already be in the TW Community through another project. In this case, you'll need to add them to your project as a new member. If they do need a User account, see the following steps.

  • Signin to TaxonWorks
  • Select the Project of interest
  • Click Administration in the header menu
  • Then under Users, click list to search existing list.
  • If you do not find the name / email you are looking for, go back one step to Users and click New and fill out the form.
    • Type their Name
    • Enter their Email
    • Provide a Password (It will be temporary, they will need to reset it).
    • Retype the Password
    • (Optional) select Is administrator if you want them to have this role.
    • (Optional) select the matching Person if they are in TaxonWorks.
    • (Optional) select Generate new api access token if desired for a User that wants to query the TW Project database programmatically.
  • Send the new User (and soon-to-be Project member) an email with instructions to read the Terms of Use Page and our Collaboration Understanding. They will also need to reset password.

Note: you can also go to Batch add new to add many users at one time (see under Administration > Users > Batch add new) and you will need their email and name string for each new user.

Note: in TaxonWorks a Person differs from a User. To be a Person in TaxonWorks, you have been vetted and with best practice, you have a globally unique identifier (e.g. an ORCiD or Wikidata Q number).

Add Project Member

When you want to add an existing TW User to a Projectsee these steps:

  • After signin, select the desired Project
  • Then click Project in the header menu
  • Under Members click Add project member
  • Search the User and once found, click to select
  • (Optional) select Is administrator if desired
  • Click Create Project member
  • (Optional) you may want to send the new Project members an email if need be with a link to the new project.

If you need to add many folks at one time, use the Add many project members option instead. (See Project > Members > Add many project members) and select the desired individuals and click Create project members.

Inside a Project

Note that once you log into a given project, you see 3 options for interacting with others and data. See the Tasks, Data, and Favorites tabs.

The Tasks provide you with one-click access to working on a specific activity such as Filter Sources for the ones you seek or Comprehensive Digitization of specimen data.

  • currently 80 tasks exist in TW
  • tasks can be customized
  • new tasks can be written
  • you can search tasks
  • tasks are associated with given global concepts (e.g. Nomenclature, Source, Biology, Collection object, Collecting event, Image, Matrix, dna, etc.)

With the Favorites tab, you can store your most-used tasks (aka activities) for quick access to what you do most often.

  • To add a task to appear in your Favorites tab, click the 'star' on the task card.

The Data tab provides you with more of a traditional table view of information as stored in TW. Here you begin to get a sense of how the data are structured and related in TW.

If you would like more details about the TW Data Model, see the Data section of docs.taxonworks.org

Explore TW Tasks

With your knowledge of the Tasks, Data, and Favorites structure you can try these actions.

  1. Find a Task of interest, click on the star and then click on the Favorites tab. You'll see this task listed now for easy access.

  2. ...

Icons in TaxonWorks

Some icons in TaxonWorks help you move around (i.e. "navigate") in the software. Other icons touch the database, providing you with functions to add data or delete something. In TaxonWorks, icon button colors convey this idea.

  • Green buttons = write to the database
  • Red buttons = delete from the database
  • Blue buttons = activate something in the interface

Note also, all icons with a blue circle and white middle are Radials and serve to help you add information to (i. e. to annotate) the object you are looking at (e. g. the Source publication record, the CollectionObject record, the Collecting Event record, the TaxonName record, etc). In other words, a tool found many places in TW, that integrates commonly used functions or tasks for annotating things (adding related information) in one place. The particular functions found after click are context dependent.

IconIcon NamePurpose of Icon
Radial Icons in TaxonWorksuse these to add information to the current object of interest, move to a different area in TW, or select objects of interest. The particular functions found after click show you what types of information you can add or actions you can take.
Annotate Radialuse this to add information to the current object of interest. The particular functions found after click are show you what types of information you can add.
Navigate Radialuse this icon to move across to different areas in TaxonWorks
Mass Annotate Radialuse this icon to add information to many records at once in TaxonWorks
Filter Radialuse this icon to select a set of records from a search in TaxonWorks using the Filter task (e. g. Filter Nomenclature, Filter Sources, Filter Collection Objects, etc.)
Quick Forms Radialuse this to bring up commonly used forms associated with OTUs, such as Asserted distributions or Biological Associations
Label Radialuse this to create labels
Linker Radialuse this to send selected results from a filtered search to another Task in TaxonWorks to further refine your data subset
Loan Radialselect objects to loan or that are being returned
Browse Taxamoves you from a taxon name to its associated OTU
Browse Nomenclaturetakes you from an OTU to its associated taxonomic name
PinboardAdd (if green) or Remove (if red) an item from your Pinboard. If the icon is blue, the item has been selected as the default in your pinboard and you can add it to a field automatically, for example, with literature citations.
EditWith this icon, you may edit a given item. For example, from the Browse nomenclature page, this icon takes you to the Edit taxon name page associated with the taxon.
TrashcanUse this to remove the current record from the database

Did you know

  • As of this writing, you can only be logged into one instance (one project) of TW at-a-time.
  • You can write your own tasks in TW? Ask us how.
',52),s=[n];function r(d,c){return o(),t("div",null,s)}const h=e(i,[["render",r],["__file","conventions.html.vue"]]),u=JSON.parse('{"path":"/guide/Manual/conventions.html","title":"The User Interface","lang":"en-US","frontmatter":{"sidebarPosition":20},"headers":[{"level":2,"title":"Philosophy","slug":"philosophy","link":"#philosophy","children":[]},{"level":2,"title":"Logging in","slug":"logging-in","link":"#logging-in","children":[]},{"level":2,"title":"Administration","slug":"administration","link":"#administration","children":[{"level":3,"title":"Add New Project","slug":"add-new-project","link":"#add-new-project","children":[]},{"level":3,"title":"Adding folks to projects","slug":"adding-folks-to-projects","link":"#adding-folks-to-projects","children":[]},{"level":3,"title":"Add New User","slug":"add-new-user","link":"#add-new-user","children":[]},{"level":3,"title":"Add Project Member","slug":"add-project-member","link":"#add-project-member","children":[]},{"level":3,"title":"Inside a Project","slug":"inside-a-project","link":"#inside-a-project","children":[]}]},{"level":2,"title":"Explore TW Tasks","slug":"explore-tw-tasks","link":"#explore-tw-tasks","children":[]},{"level":2,"title":"Icons in TaxonWorks","slug":"icons-in-taxonworks","link":"#icons-in-taxonworks","children":[]},{"level":2,"title":"Did you know","slug":"did-you-know","link":"#did-you-know","children":[]}],"git":{"updatedTime":1686866578000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":17},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":2},{"name":"mjy","email":"diapriid@gmail.com","commits":2}]},"filePathRelative":"guide/Manual/conventions.md"}');export{h as comp,u as data}; diff --git a/assets/customization.html-BPiCMdGT.js b/assets/customization.html-BPiCMdGT.js new file mode 100644 index 00000000..f5172689 --- /dev/null +++ b/assets/customization.html-BPiCMdGT.js @@ -0,0 +1 @@ +import{_ as o,c as e,o as a,a as t}from"./app-Bwgh_xIT.js";const l={},n=t("h1",{id:"customization",tabindex:"-1"},[t("a",{class:"header-anchor",href:"#customization"},[t("span",null,"Customization")])],-1),i=t("p",null,"TODO",-1),s=t("h2",{id:"controlled-vocabulary-terms",tabindex:"-1"},[t("a",{class:"header-anchor",href:"#controlled-vocabulary-terms"},[t("span",null,"Controlled Vocabulary Terms")])],-1),c=t("p",null,"TODO",-1),r=[n,i,s,c];function d(m,u){return a(),e("div",null,r)}const h=o(l,[["render",d],["__file","customization.html.vue"]]),p=JSON.parse('{"path":"/guide/Manual/customization.html","title":"Customization","lang":"en-US","frontmatter":{"sidebarPosition":330},"headers":[{"level":2,"title":"Controlled Vocabulary Terms","slug":"controlled-vocabulary-terms","link":"#controlled-vocabulary-terms","children":[]}],"git":{"updatedTime":1712178034000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"guide/Manual/customization.md"}');export{h as comp,p as data}; diff --git a/assets/data-quality.html-DbfyvRgN.js b/assets/data-quality.html-DbfyvRgN.js new file mode 100644 index 00000000..c5be7bc9 --- /dev/null +++ b/assets/data-quality.html-DbfyvRgN.js @@ -0,0 +1 @@ +import{_ as e,c as t,o as a,b as o}from"./app-Bwgh_xIT.js";const i={},n=o('

Data Quality Help and Hints

The nature of data, particularly aspects of quality (e.g. completeness, consistency, compliance) are directly related to whether or not it can be re-used (the R in FAIR). Quality is an abstract and rather subjective term, one difficult to pin down. Fidelity* may prove more a more tractable term. Conceptual and implemented means to improve data quality in and around TaxonWorks.

Motivation

This documentation originated via the co-organization of a workshop at Digital Data 8, Data cleaning for maximum impact: Tools and workflows for data providers to efficiently find and fix data quality issues. Other co-organizers produced similar documentation resulting in a cross-platform page can be found at iDigBio: Data Quality Toolkit 2024. Each section below is linked to its corresponding topic on that iDigBio page.

Rationale and Background

Our TW philosopy on data quality or fidelity is multifaceted and can be thought of as the concepts of prevention, discovery, and resolution as applied to a spectrum of processes, from designing the data-models, to implementing validations, to creating tools and workflows facilitating discovery and visualization, to building user-interfaces that curators use to resolve issues, to reflecting feedback from external sources back into the system.

Prevention

Many of the issues highlighted below can be prevented at inception (when data are captured). At a low level this can happen during data-model design and implementation. For example in TaxonWorks we:

  • Carefully model our domain (models) so that there is a solid basis for expanding the semantics of what we are capturing. This helps to prevent the addition of fields that seem useful at the time but that ultimately confuse our understanding of the data as the system evolves.
  • Isolating data fields from fields that facilitate TaxonWorks functionality. This separation of concerns ensures we can efficiently implement globally-relevant data-cleaning (e.g. stripping bad characters) and iterative checks on the data while not being confused by fields that don't require such.
  • Only permit data changes through a single API (TaxonWorks models), as opposed to updates directly to the database. This forces all validations to be checked when data enters the system, greatly improving data integrity.
  • Choosing either the database or the data-model as the location of data validation functions (not both, TaxonWorks validates in the model)
  • Creating (sometimes complex) tests that check that the validations implemented still hold, these are run on every single commit to the repository.
  • Using a convention to implement our data models and their relationships to one another (e.g. Rails ActiveRecord models)

Discovery

In general, when, where, and how you find any data anomalies will vary, not only with respect to TaxonWorks but in working with data in general. For example, you might become aware of issues when:

  • Mapping you data to an external standard, perhaps during migration to another database or share with an aggregator
  • Cleaning data up in a spreadsheet before upload to a workbench like TaxonWorks
  • Exploring your exported data with tools like OpenRefine, or via R, or via another API
  • Receiving feedback from another source (e. g. GBIF or iDigBio or ALA or OBIS or Bionomia)
  • Hearing from someone on the internet sees something and contacts you
  • Perusing data already in your own database
  • Visualizing issues in day-to-day work, for example via the hundreds of notices possible in TaxonWorks on its "soft validation" framework.
  • Using your database data visualization tools to see distinct values in a given field (e. g. Project vocabulary task in TaxonWorks) or on a map.
  • Reviewing your software repository issue-tracker (e.g. gitHub for TaxonWorks)
  • Learning about what others have done in similar systems (e.g. see Distinct Values - Why This Data Directory?)

How data issues are discovered influences the options and methods for fixing them (e. g. one-by-one, bulk annotation, scripts).

Resolution

Example means to resolve the data are detailed in the specifics below. In addition to those one of the important ways to resolve problems is to use TaxonWorks models in scripts to batch process and fix data.

Acknowledgements

To extend the value and scope of this work we link to the work of the Biodiversity Information Standards (TDWG) Biodiversity Data Quality Task Group (BDQ). We list the BDQ tests relevant to each issue, where they exist. With these connections, we hope to enhance the software developer's vision and work to connect to the BDQ tests to the workbench functionality around preventing, finding, and fixing these types of issues.

We gratefully acknowledge the efforts of this TDWG Task Group and the contributions and conversations with Paul Morris and Lee Belbin in figuring out how to do this. Special thanks to Paul Morris for work done to map the BDQ tests to the specific data quality issues highlighted in this workshop and on this page.

Structure

Issues below are grouped into the: Identifiers (e .g. catalog numbers), Time (e. g. dates), Place (aka geography, location), Taxon, and Other and Tools and Resources.

WARNING

TaxonWorks only references many DarwinCore fields on export of the data, i.e. in the translation of its data model to an external format.

Identifiers

CatalogNumbers

TIP

Duplicate Identifiers are prevented in the data model. This prevents errors in initial or subsequent (bulk OR one-by-one) uploads to TW. We use Namespaces and a simple Identifier ontology to ensure sets of Identifiers whose members are all unique.

catalogNumber is only invoked as a column when exporting to Darwin Core format (it's not a specific field in a TaxonWorks model). When multiple objects are identified by the same catalogNumber we associate the corresponding Identifier to a virtual container. This lets us export a "duplicate" catalogNumber in the export for each occurrence record (which is uniquely identified by a UUID) while maintain specific data on individual specimens. catalogNumbers that appear identical in their rendering can be differentiated via different Namespaces if it can be determined that they were created via independent processes. Finally, you can extend any DarwinCore export with a custom data-attribute that might reference, say dwc:otherCatalogNumbers.

Time

Date out-of-bounds

idigbio-dqtk-time, TDWG BDQ Relevant Tests: VALIDATION_DATEIDENTIFIED_INRANGE, VALIDATION_EVENTDATE_INRANGE, VALIDATION_YEAR_INRANGE, VALIDATION_NAMEPUBLISHEDINYEAR_INRANGE, VALIDATION_EVENT_CONSISTENT

In TaxonWorks, different types of records have dates associated, for example: the event date for a given Collecting Event, or the date identified (that is, date determined), or the date georeferenced. Dates out-of-expected bounds would include several kinds of impossible dates. That is, dates in the future or dates before the objects were actually ever collected or dates that are not possible with the birth and death dates for the person who collected/identified/observed/georeferenced/imaged the object/s. These could be grouped as

  • date hasn't happened yet
  • date is suspiciously old and
  • flourit date and event date not compatible.

Filter Collecting Event by Date

Find outlier dates using the Filter Collecting Event task, the Filter Collection Object task, and you can use the Project Vocabulary task to peak inside each field in your database to see distinct values and the records with those values.

Using the date range method to find outlier dates with the Filter Collecting Event task
  • Navigate to the Filter Collecting Event task
  • Scroll down to the Collecting Event filter section
  • Enter date range to search
    • e. g. to check for future out-of-bounds dates try putting "tomorrow's" date in for the start date and some date way into the future for the End date
  • Click Filter to see resulting records.

TIP

Note you can click any column to sort on that column (which sorts only for the records showing on that page). This makes it simpler to see outliers in a date-related column. These sets can also be downloaded as CSV files if need be.

Find outlier dates using the Project Vocabulary task. With this task, one can see the unique values present for a given field and how many times that string/value occurs. You click on one of the results of the output and see the associated records having that value. For the out-of-expected-bounds-date use case, one could see odd unexpected dates easily.

Find outlier dates based on someone's lifespan, when known. In the future, you can expect that if you have the active years for a given person entered into the database, and that person is linked to a record where the date collected or identified is not within their active years, you will be able to find these records.

Fix the outlier dates found from the above Filter Collecting Event task search.

  • In the result set, you can navigate to a single record and edit that one
  • You can use the download csv version of the results if you have a lot of records and want to sort by year in a spreadsheet to see the extent of the year bounds.
    • You can sort by year by clicking on a given column, however, it is only sorting the records on that page (note the number of records per/page can be increased).

eventDate and year month day

idigbio-dqtk-date-ymd, TDWG BDQ Relevant Tests: VALIDATION_EVENT_CONSISTENT

In TaxonWorks these align automatically.

  • If using the DwC Occurrence Importer and you provide the eventDate (in YYYY-MM-DD format) and you provide the dwc:day, dwc:month, and dwc:year, the importer software checks for consistency.
  • If using the DwC Occurrence Importer and you provide the eventDate (in YYYY-MM-DD format) only, we derive the dwc:day, dwc:month, and dwc:year on import.
  • After upload, the year, month, and day fields can be edited, there is no single eventDate field which prevents these from potentially getting out of sync.

Place

idigbio-dqtk-place

Coordinates Zero

idigbio-dqtk-zero, TDWG BDQ Relevant Tests: VALIDATION_COORDINATES_NOTZERO, ISSUE_COORDINATES_CENTEROFCOUNTRY

In TW this will depend. 0, 0 are of course "Valid" however they have to match other data in the record.

Find 0, 0 coordinates uing the Project vocabulary task

  • Select model: Collecting Event
  • Select attribute: verbatim_longitude (or verbatim_latitude)
  • in Beginning with put: 0.0 (for example)
  • Click on Show records
  • Result is a set of records in Filter collecting events
    • You will have a set of records that have the properties you provided that you can work on editing.
    • You can edit one record at a time or potentially edit many at once depending on what needs to be updated.

Fix unexpected coordinates It may be possible to fix more than one record at a time depending on the specific issue.

  • In your resulting set, Select a record to fix,
  • Then click the navigator icon for that record and
  • Click Edit in the options provided.

If there are many to fix:

  • Select all for that page, or some subset of records
  • Then click on the radial collecting event icon
  • In the radial collecting event radial pop-up, select one of these options
    • Set Collection Date/Time
    • Set verbatim fields

Coordinates Do Not Fall Within Named Geographic Unit

idigbio-dqtk-geo-unit, TDWG BDQ Relevant Tests: VALIDATION_COORDINATES-STATEPROVINCE_CONSISTENT, VALIDATION_COORDINATES_COUNTRYCODE_CONSISTENT

If you provide coordinates on upload, we compute the geographic units based on the gazetteer information. So we don't have this issue specifically. You can potentially see outliers using the following method.

Find and Fix

  • Go to Filter collecting events
  • Search for the area of interest, (e. g. United States and pick Descendants)
  • Click Filter
  • In the resulting set, in the left sidebar, click the linker icon to get the Radial linker
    • Select Spatial Summary which gives you a scatter plot where the x-axis is longitude, the y-axis is latitude
    • If there are longitudes with positive (or other outlier non-expected) values, you will be able to see them and go to those records to debug.

TIP

Using the Collecting Event software, if you provide spatial constraint (choose a GeographicArea with shape) and try and provide a point outside that, you are not allowed to. We note at the same time, you can put whatever conflicting info you want in verbatim_ fields, these are not validated.

Georeference Metadata with no Associated Georeference

idigbio-dqtk-metadata-no-georef

Not possible on export (though the inverse is).

Elevation Unlikely

idigbio-dqtk-elevation-questionable, TDWG BDQ Relevant Tests: VALIDATION_MAXELEVATION_INRANGE, VALIDATION_MINELEVATION_INRANGE, see also VALIDATION_MINDEPTH_INRANGE, VALIDATION_MAXDEPTH_INRANGE

To look for unlikely or unexpected elevations, one way would be to use the Project vocabulary task.

Find and Fix elevation value ranges uing the Project vocabulary task:

  • Select model: Collecting Event
  • Select attribute: maximum_elevation (or minimum_elevation)
  • Click on Show records
  • in the left sidebar, click Term to sort column to see the value range for max (or min, depending on what you picked)
  • Click on the row with any unexpected value to see the records with that value (or click that value in the word cloud).
  • Result is a set of records in Filter collecting events
    • You will have a set of records that have the properties you provided that you can work on editing.
    • You can edit one record at a time or potentially edit many at once depending on what needs to be updated.

Improperly Negated Latitudes Longitudes

idigbio-dqtk-lat-lon-neg, TDWG BDQ Relevant Tests: AMENDMENT_COORDINATES_TRANSPOSED, VALIDATION_COORDINATES_TERRESTRIALMARINE

Find and Fix

  • Go to Filter collecting events
  • Search for the area of interest, (e. g. United States and pick Descendants)
  • Click Filter
  • In the resulting set, in the left sidebar, click the linker icon to get the Radial linker
    • Select Spatial Summary which gives you a scatter plot where the x-axis is longitude, the y-axis is latitude
    • IF there are longitudes with positive values, you will be able to see them and go to those records to debug.

Invalid Coordinates

idigbio-dqtk-invalid-coord, TDWG BDQ Relevant Tests: VALIDATION_DECIMALLATITUDE_INRANGE, VALIDATION_DECIMALLONGITUDE_INRANGE

Coordinates are exported as Geo referenced, i.e. they can not be illegal values. They can of course be based on points placed in error. Errors are minimized due to cross-referencing to geo-spatial gazetteers ensuring that the points dropped are within 10km of the place selected.

Lower Geography Values Provided, but No Higher Geography

Selecting any GeographicArea happens in one place in TaxonWorks, so you automatically get spatial and parent validation going up.* In other words, if you provide the lower geography, we derive the higher geography where there is information in our gazetteers to do so.

Minimum and Maximum Elevation Values Mismatched

Our Validation software catches this for any parsed values. You can of course put what you like in verbatim fields.

Mismatched Country and CountryCode Values

idigbio-dqtk-mismatch-codes, TDWG BDQ Relevant Tests: VALIDATION_COUNTRY_COUNTRYCODE_CONSISTENT

If a country is reported and we have access to a corresponding ISO code (true for a majority of cases), then they are always matched, i.e. they are derived from a unified source, not manually entered independently.

Mismatched Geographic Terms

idigbio-dqtk-mismatch-terms

TaxonWorks makes use of an internally managed GeographicArea gazeteer. Selecting a finer resolution entity (e.g. county, state) permits us to crawl the parenthood to fill in the pertinent data.

WARNING

TaxonWorks also does spatial lookup for Georeference point data. The lookup algorithm can error based on limits to the resolution of the referenced gazeteers. In this case one cap prioritize the use of GeographicArea to over-ride the spatial lookup.

Missing Geodetic Datum

idigbio-dqtk-datum-missing, TDWG BDQ Relevant Tests: VALIDATION_GEODETICDATUM_NOTEMPTY, see also VALIDATION_GEODETICDATUM_STANDARD expects an EPSG code, AMENDMENT_GEODETICDATUM_STANDARDIZED sets to an EPSG code, AMENDMENT_GEODETICDATUM_ASSUMEDDEFAULT

Missing data here are the norm for historical data. For de-novo capture TaxonWorks exports a number of types as estimated from the processes by which the Georeference was captured or an explicity Protocol reference.

Missing Latitudes Longitudes

idigbio-dqtk-lat-lon-missing, TDWG BDQ Relevant Tests: VALIDATION_DECIMALLATITUDE_NOTEMPTY, VALIDATION_DECIMALLONGITUDE_NOTEMPTY

Using the Filter collecting event task, you can find records with no Georeference.

Misspelled Geographic Unit Names

idigbio-dqtk-geounit-names-spelling, TDWG BDQ Relevant Tests: VALIDATION_COUNTRY_FOUND, VALIDATION_STATEPROVINCE_FOUND

Taxon

Misspelled or Invalid Taxonomic Names

idigbio-dqtk-taxonname-missing-invalid, TDWG BDQ Relevant Tests: VALIDATION_SCIENTIFICNAME_FOUND

A huge variety of nomenclatural nuances can be specifically classified and identified in TaxonWorks, synonymous and misspelled names included. All of these represent the historical record. TaxonDeterminations are linked to these names and a CollectionObject as a bridging step. Presenting synomous or misspelled names during export is not only possible but required in various cases (for example for nomenclatural catalogs).

Unknown Higher Taxonomy

idigbio-dqtk-higher-tax-unknown, TDWG BDQ Relevant Tests: VALIDATION_KINGDOM_FOUND, VALIDATION_PHYLUM_FOUND, VALIDATION_CLASS_FOUND, VALIDATION_ORDER_FOUND, VALIDATION_SUPERFAMILY_FOUND supplemental, VALIDATION_FAMILY_FOUND, VALIDATION_TRIBE_FOUND supplemental, VALIDATION_SUBTRIBE_FOUND supplemental, VALIDATION_GENUS_FOUND, VALIDATION_TAXON_UNAMBIGUOUS, VALIDATION_CLASSIFICATION_CONSISTENT

Unknown higher taxonomy is highly specific to the purpose of use of the data. There is no one true classification of nomenclature, or taxa. Syncronizing of TaxonWorks data to external taxonomies is best done via the processes that merge or take TaxonWorks data into a new system.

Other

Incorrect Character Encodings

All data are encoded as UTF-8. TaxonWorks pre-processes all strings before writing (persisting) them to remove a handful of well-known issues with encoding, for example trimming white-space and removing various invisible characters.

Incorrect Line Endings

Many different exports are possible in TaxonWorks. Exporting returns a unified format.

Invalid Individual Count

idigbio-dqtk-invalid-count, TDWG BDQ Relevant Tests: VALIDATION_INDIVIDUALCOUNT_INTEGER

The CollectionObject model requires a positive integer as the total, invalid values are impossible.

Nonstandardized basisOfRecord Values

idigbio-dqtk-nonstand-basesOfRecord, TDWG BDQ Relevant Tests: VALIDATION_BASISOFRECORD_STANDARD, AMENDMENT_BASISOFRECORD_STANDARDIZED

We generate dwc:basisOfRecord, so a non-issue for TW. If an issue on Import, our Importer software will tell you. With the Importer you can "find" and "replace" any non-standard value and then continue the upload.

External Tools and Resources

Many approaches have influenced how we build and what we build in TaxonWorks with respect to data-quality:

  • Data Carpentry Data Cleaning with OpenRefine
  • Data Carpentry Data Organization in Spreadsheets
  • OpenRefine as a great tool for
    • cleaning and structuring messy data
    • extending and enhancing your data
    • tracking and sharing your data cleaning steps automatically
  • Voyant Tools for visualizing and exploring text data
  • ChatGPT proves useful in some instances too (e. g. for finding less common datums)
  • Bob Mesibov’s Data Cleaner’s Cookbook
  • GBIF’s data quality flags NOTE: in TaxonWorks, we pull GBIF DQ data back for you into the user-interface so you can evaluate the feedback without leaving TaxonWorks.
  • iDigBio’s data quality flags
  • OBIS Manual (e. g. their Data Laundry help and community) See also Gan Y-M, Perez Perez R, Provoost P, Benson A, Peralta Brichtova AC, Lawrence E, Nicholls J, Konjarla J, Sarafidou G, Saeedi H, Lear D, Penzlin A, Wambiji N, Appeltans W (2023) Promoting High-Quality Data in OBIS: Insights from the OBIS Data Quality Assessment and Enhancement Project Team . Biodiversity Information Science and Standards 7: e112018. https://doi.org/10.3897/biss.7.112018
  • Linter tools offer another way to evaluate and tidy up your data. For example, you have a BibTeX file (from EndNote, Zotero, or elsewhere) that seems to have errors. You can use online tools that help you find and fix formatting (syntax) errors.
  • Need to create or convert data into other formats? Some tools that help you with this part of any data transformation processes include:
  • Authority Files for comparing your data with known sources

Footnotes

  • Fidelity - as referenced by Erica Krimmel at TaxonWorks Together 2024 as a term that may more exactly convey what we can manage when we talk about making our data as fit-for-purposes (known and imagined) as possible (rather than the more subjective term of quality).
',117),r=[n];function s(l,d){return a(),t("div",null,r)}const h=e(i,[["render",s],["__file","data-quality.html.vue"]]),p=JSON.parse('{"path":"/guide/data-quality.html","title":"Data Quality Help and Hints","lang":"en-US","frontmatter":{"sidebarPosition":55},"headers":[{"level":2,"title":"Motivation","slug":"motivation","link":"#motivation","children":[]},{"level":2,"title":"Rationale and Background","slug":"rationale-and-background","link":"#rationale-and-background","children":[{"level":3,"title":"Prevention","slug":"prevention","link":"#prevention","children":[]},{"level":3,"title":"Discovery","slug":"discovery","link":"#discovery","children":[]},{"level":3,"title":"Resolution","slug":"resolution","link":"#resolution","children":[]},{"level":3,"title":"Acknowledgements","slug":"acknowledgements","link":"#acknowledgements","children":[]},{"level":3,"title":"Structure","slug":"structure","link":"#structure","children":[]}]},{"level":2,"title":"Identifiers","slug":"identifiers","link":"#identifiers","children":[{"level":3,"title":"CatalogNumbers","slug":"catalognumbers","link":"#catalognumbers","children":[]}]},{"level":2,"title":"Time","slug":"time","link":"#time","children":[{"level":3,"title":"Date out-of-bounds","slug":"date-out-of-bounds","link":"#date-out-of-bounds","children":[{"level":4,"title":"Filter Collecting Event by Date","slug":"filter-collecting-event-by-date","link":"#filter-collecting-event-by-date","children":[]}]},{"level":3,"title":"eventDate and year month day","slug":"eventdate-and-year-month-day","link":"#eventdate-and-year-month-day","children":[]}]},{"level":2,"title":"Place","slug":"place","link":"#place","children":[{"level":3,"title":"Coordinates Zero","slug":"coordinates-zero","link":"#coordinates-zero","children":[]},{"level":3,"title":"Coordinates Do Not Fall Within Named Geographic Unit","slug":"coordinates-do-not-fall-within-named-geographic-unit","link":"#coordinates-do-not-fall-within-named-geographic-unit","children":[]},{"level":3,"title":"Georeference Metadata with no Associated Georeference","slug":"georeference-metadata-with-no-associated-georeference","link":"#georeference-metadata-with-no-associated-georeference","children":[]},{"level":3,"title":"Elevation Unlikely","slug":"elevation-unlikely","link":"#elevation-unlikely","children":[]},{"level":3,"title":"Improperly Negated Latitudes Longitudes","slug":"improperly-negated-latitudes-longitudes","link":"#improperly-negated-latitudes-longitudes","children":[]},{"level":3,"title":"Invalid Coordinates","slug":"invalid-coordinates","link":"#invalid-coordinates","children":[]},{"level":3,"title":"Lower Geography Values Provided, but No Higher Geography","slug":"lower-geography-values-provided-but-no-higher-geography","link":"#lower-geography-values-provided-but-no-higher-geography","children":[]},{"level":3,"title":"Minimum and Maximum Elevation Values Mismatched","slug":"minimum-and-maximum-elevation-values-mismatched","link":"#minimum-and-maximum-elevation-values-mismatched","children":[]},{"level":3,"title":"Mismatched Country and CountryCode Values","slug":"mismatched-country-and-countrycode-values","link":"#mismatched-country-and-countrycode-values","children":[]},{"level":3,"title":"Mismatched Geographic Terms","slug":"mismatched-geographic-terms","link":"#mismatched-geographic-terms","children":[]},{"level":3,"title":"Missing Geodetic Datum","slug":"missing-geodetic-datum","link":"#missing-geodetic-datum","children":[]},{"level":3,"title":"Missing Latitudes Longitudes","slug":"missing-latitudes-longitudes","link":"#missing-latitudes-longitudes","children":[]},{"level":3,"title":"Misspelled Geographic Unit Names","slug":"misspelled-geographic-unit-names","link":"#misspelled-geographic-unit-names","children":[]}]},{"level":2,"title":"Taxon","slug":"taxon","link":"#taxon","children":[{"level":3,"title":"Misspelled or Invalid Taxonomic Names","slug":"misspelled-or-invalid-taxonomic-names","link":"#misspelled-or-invalid-taxonomic-names","children":[]},{"level":3,"title":"Unknown Higher Taxonomy","slug":"unknown-higher-taxonomy","link":"#unknown-higher-taxonomy","children":[]}]},{"level":2,"title":"Other","slug":"other","link":"#other","children":[{"level":3,"title":"Incorrect Character Encodings","slug":"incorrect-character-encodings","link":"#incorrect-character-encodings","children":[]},{"level":3,"title":"Incorrect Line Endings","slug":"incorrect-line-endings","link":"#incorrect-line-endings","children":[]},{"level":3,"title":"Invalid Individual Count","slug":"invalid-individual-count","link":"#invalid-individual-count","children":[]},{"level":3,"title":"Nonstandardized basisOfRecord Values","slug":"nonstandardized-basisofrecord-values","link":"#nonstandardized-basisofrecord-values","children":[]}]},{"level":2,"title":"External Tools and Resources","slug":"external-tools-and-resources","link":"#external-tools-and-resources","children":[{"level":3,"title":"Footnotes","slug":"footnotes","link":"#footnotes","children":[]}]}],"git":{"updatedTime":1717095660000,"contributors":[{"name":"Deborah Paul","email":"dlpaul@illinois.edu","commits":5},{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":1},{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"guide/data-quality.md"}');export{h as comp,p as data}; diff --git a/assets/digitization.html-DUdm7cWf.js b/assets/digitization.html-DUdm7cWf.js new file mode 100644 index 00000000..9d24ff9b --- /dev/null +++ b/assets/digitization.html-DUdm7cWf.js @@ -0,0 +1 @@ +import{_ as a,r as n,c as o,a as e,d as i,e as s,w as l,b as r,o as d}from"./app-Bwgh_xIT.js";const c={},h=e("h1",{id:"digitization",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#digitization"},[e("span",null,"Digitization")])],-1),u=e("p",null,[e("em",null,"TaxonWorks offers taxonomists, collections staff, and others to collaboratively manage collections data for specimens and related objects.")],-1),p=e("p",null,'Uniquely in TaxonWorks, we make it easy up-front to add customized fields (aka "data attributes") where needed. In addtion, in TW you can upload data mapped to Darwin Core, to specific fields in TW, and to these customized data attributes you add.',-1),g=e("h2",{id:"digitization-quick-start",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#digitization-quick-start"},[e("span",null,"Digitization Quick Start")])],-1),m=r('

#left[Legend: ]

Comprehensive Digitization

To get a sense of what can be tracked regarding specimens in your collection, see the Comprehensive Digitization Task in TW outlined next. Note also that you may enter data into TW record-by-record, or in batch mode (see Import and Export).

[INSERT screenshot of Comprehensive Digitization Task screen here]

Label Printing

There are many places where you can print labels from different tasks in TaxonWorks, including unit trays, specimen labels, and identifiers. The main task where you manage what is finally printed is Print Labels, but labels are generated within a variety of other tasks.

Printing Header Labels

Legend: Filter Nomenclature Task Box
  • To create a set of new header labels.
    • Search for Filter Nomenclature search bar and click the task box.
    • Use the various search parameters on the left to create a list of names you want to have on header labels.
      • For example, you can select a higher taxon, then check descendents to include all of its children.
      • Legend: Filter Nomenclature Task
    • Once you have a list of names you want to create header labels for, check the Select All Box or select individual names.
    • Legend: Radial Label
    • A "Labels Created" success box will pop-up. Your labels should now be ready in the Print Labels task.

There will be a user guide for Print Labels here.

  • This is a list of instructions
    • TaxonWorks to return to this Dashboard view

Did you know

  • You can generate many labels from many different places, then select which ones to print later?
',14);function f(b,k){const t=n("RouteLink");return d(),o("div",null,[h,u,p,g,e("p",null,[i("TW provides a suite of common tasks help you to manage your digitization and related data. This section assumes you have some familiarity with the "),s(t,{to:"/guide/Manual/conventions.html"},{default:l(()=>[i("TW user interface conventions")]),_:1}),i(" and introduces new user interface features where needed. Next, please familiarize yourself some of the tasks TW offers directly relevant to digitization.")]),m])}const T=a(c,[["render",f],["__file","digitization.html.vue"]]),v=JSON.parse('{"path":"/guide/Manual/digitization.html","title":"Digitization","lang":"en-US","frontmatter":{"sidebarPosition":300},"headers":[{"level":2,"title":"Digitization Quick Start","slug":"digitization-quick-start","link":"#digitization-quick-start","children":[]},{"level":2,"title":"Comprehensive Digitization","slug":"comprehensive-digitization","link":"#comprehensive-digitization","children":[]},{"level":2,"title":"Label Printing","slug":"label-printing","link":"#label-printing","children":[{"level":3,"title":"Printing Header Labels","slug":"printing-header-labels","link":"#printing-header-labels","children":[]},{"level":3,"title":"Print Labels Task","slug":"print-labels-task","link":"#print-labels-task","children":[]}]},{"level":2,"title":"Did you know","slug":"did-you-know","link":"#did-you-know","children":[]}],"git":{"updatedTime":1682459396000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":4},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":1},{"name":"Tommy McElrath","email":"monotomidae@gmail.com","commits":1}]},"filePathRelative":"guide/Manual/digitization.md"}');export{T as comp,v as data}; diff --git a/assets/events.html-BvhDNAz9.js b/assets/events.html-BvhDNAz9.js new file mode 100644 index 00000000..254d3f22 --- /dev/null +++ b/assets/events.html-BvhDNAz9.js @@ -0,0 +1 @@ +import{_ as e,c as t,o,b as a}from"./app-Bwgh_xIT.js";const n={},r=a('

Events

Weekly

Every Wednesday, the Species File Group hosts topic-specific meetings currently covering nomenclature, digitization, matrices/observations, technical input, and two open sessions. Questions of any sort are welcome there, regardless of topic. All are welcome.

TaxonWorks Together

A yearly event promoting community and commons development.

TaxonWorks Late-nite

From time to time we hang out in the evening on Zoom. See the events link above for details.

',8),s=[r];function i(l,h){return o(),t("div",null,s)}const p=e(n,[["render",i],["__file","events.html.vue"]]),m=JSON.parse('{"path":"/about/events.html","title":"Events","lang":"en-US","frontmatter":{"sidebarPosition":20},"headers":[{"level":2,"title":"Weekly","slug":"weekly","link":"#weekly","children":[]},{"level":2,"title":"TaxonWorks Together","slug":"taxonworks-together","link":"#taxonworks-together","children":[]},{"level":2,"title":"TaxonWorks Late-nite","slug":"taxonworks-late-nite","link":"#taxonworks-late-nite","children":[]}],"git":{"updatedTime":1668373922000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":3},{"name":"mjy","email":"diapriid@gmail.com","commits":3}]},"filePathRelative":"about/events.md"}');export{p as comp,m as data}; diff --git a/assets/export.html-Kta3YHgi.js b/assets/export.html-Kta3YHgi.js new file mode 100644 index 00000000..9a71333e --- /dev/null +++ b/assets/export.html-Kta3YHgi.js @@ -0,0 +1 @@ +import{_ as e,c as a,o as t,b as i}from"./app-Bwgh_xIT.js";const o={},l=i('

Export

Full database dumps

You can export a full copy of your database, minus binaries (e.g. images, documents) into PostgreSQL format via the Export project database task. This lets you:

  • Archive your data
  • Load it into a local version of TaxonWorks (e.g. running on your desktop)

Individual TaxonWorks tables

Individual tables in native TaxonWorks format as CSV

Via "Project data overview and download"

  • Open the Project data overview and download task
  • Click a Download link corresponding to the table you want to download (22+ tables available)

Via individual Data cards

  • Click on a Data Card, e.g. Otus.
  • On the bar in the middle click on Download, you'll get a CSV file with the data for that table.

CSV

Basic

  • Note that these formats are "in progress", they need refinement.
  • Open any of the Filter tasks
  • Complete a search
  • Select the CSV option in the download select and click the blue download button beside it.

Darwin Core Archives

A quite common data package used for sharing data with biodiversity data aggregators like the Global Biodiversity Information Facility (GBIF) and iDigBio, a Darwin Core Archive (dwca) contains several files (e.g. your data file, a metadata file, and an index file to tell computers reading the package what to expect to find in this specific data package). In TaxonWorks, you can create these packages as needed. To do so, you will use the DwC Dashboard shown next.

Legend: The DwC Dashboard Task

From the DwC Dashboard

  • Open the DwC Dashboard task.
  • Click one of the green buttons in the Download Darwin Core Archive section.
    • Note your green button options for your dwca file. You may create a dwca for all your data, or a given desired or relevant subset. You can also create your own custom archive (see the Create DwC Archive by filtered collection object result option).
    • Once you click on an option, generating the file can sometimes take several seconds to create/load, so wait a few seconds, and you will see a result in the next step.
      Legend: The TaxonWorks Download Darwin Core Archive panel
  • Your download will be queued and built, then available under the Recently created DwC Archives section. Legend: Recently created DwC Archives

From the Filter collection objects task

  • Open the task Filter collection objects.
  • Perform a query to create your desired data subset.
  • Use the download select to choose DwC.
Legend:From Filter Collection Object, select the DwC download format for a given dataset
  • Click the blue download button beside the select.
  • Optionally click to include data-predicate (custom) fields, scroll down, then click Download.
Legend: Optional fields you can include in your dwca file
  • Your download is available on the DwC Dashboard task after a short period.

Preparing your data for an aggregator (e.g. GBIF, iDigBio, ALA)

  • Your export will download as a DWCA, that includes three files (or more) when unzipped:
    1. data.csv (a tab-separated file (TSV) file that can be opened by most spreadsheet programs). This is your downloaded specimen occurrence data.
    2. eml.xml (a metadata file with information about your dataset)
    3. meta.xml (a metadata file that describes the headers included in your dataset).
  • You can (and will need to) edit your eml.xml file in a plain text editor to prepare it for upload to an aggregator. A sample file that works is available here.
  • Once you've edited this EML file, make sure to re-package it into a ZIP file.
  • CAUTION, if using a Mac, the system will add two invisible system files when re-zipping. A workaround is available here: https://perishablepress.com/remove-macosx-ds-store-zip-files-mac/
  • Once repackaged, add this zipped file to your Integrated Publishing Toolkit (IPT) endpoint. Note there are existing IPT instances that would be happy to host your packaged data. More information on setting one up here:
    1. iDigBio
    2. GBIF

Bibliographies (Reference lists)

  • Open the task Filter sources
  • Use the facets to filter a list of Sources

As CSV

  • Select the CSV option in the download select and click the blue download button beside it.

As BibTeX

  • Select the BiBTeX option in the download select and click the blue download button beside it.

Formatted for journals

  • Select the Download formatted option in the download select and click the blue download button beside it.

You can share a zipped copy of the file by generating a link to it. This functionality is turned on if the project administrator has created an API token (See addendum).

  • Click Generate download
  • Copy the link generated and share it.

A copy of the Download file is also available for future reference, for a period of 2 days, via the Download data card.

Catalog of Life Data Package (ColDP)

  • Open the task Catalogue of Life (ColDP) exports
  • Use the OTU autocomplete to choose an OTU. All children of this OTU, by proxy of the attached TaxonName name will be exported.
  • Click Download

A copy of the Download file is also available for future reference, for a period of 2 days, via the Download data card.

Data matrices (evolutionary, descriptive, quantitative, etc.)

  • Open the Obervation matrix hub task
  • Click View beside the matrix to be downloaded
  • Click the link corresponding to the format you want to download (e.g. TNT, nexus, or NeXML)

Descriptor lists and OTU contents are also available as downloads here.

Nomenclature stats

  • Use the Search a taxon name autocomplete to select a taxon name
  • Refine the columns you wish to see and click Search again to update
  • Click the blue download icon on the top right

JSON

Individual records

  • Open a record in 'Show'
  • Notice the URL format, like /otus/123. Nearly all records can be viewed in with a URL pattern like this (this is a "RESTful" format)
  • Add .json to the request, like /otus/123.json
  • Select all to copy-paste, or use your web-browsers save as to save as a JSON document

Via filters

All filters can all be used to generate a query that returns JSON

  • Open a filter
  • Complete a search
  • Click on the eyeball button and then Show JSON request
  • Copy the path of the request to your clipboard
  • Paste the path of the request to your TaxonWorks base URL (e.g. add it to something like https://my.taxonworks.org/) and hit enter
  • Select all to copy-paste, or use your web-browsers save as to save as a JSON document

The TaxonWorks API

See api.taxonworks.org.

',54),r=[l];function n(s,d){return t(),a("div",null,r)}const h=e(o,[["render",n],["__file","export.html.vue"]]),u=JSON.parse('{"path":"/guide/export.html","title":"Export","lang":"en-US","frontmatter":{"sidebarPosition":62},"headers":[{"level":2,"title":"Full database dumps","slug":"full-database-dumps","link":"#full-database-dumps","children":[]},{"level":2,"title":"Individual TaxonWorks tables","slug":"individual-taxonworks-tables","link":"#individual-taxonworks-tables","children":[{"level":3,"title":"Via \\"Project data overview and download\\"","slug":"via-project-data-overview-and-download","link":"#via-project-data-overview-and-download","children":[]},{"level":3,"title":"Via individual Data cards","slug":"via-individual-data-cards","link":"#via-individual-data-cards","children":[]}]},{"level":2,"title":"CSV","slug":"csv","link":"#csv","children":[{"level":3,"title":"Basic","slug":"basic","link":"#basic","children":[]}]},{"level":2,"title":"Darwin Core Archives","slug":"darwin-core-archives","link":"#darwin-core-archives","children":[{"level":3,"title":"From the DwC Dashboard","slug":"from-the-dwc-dashboard","link":"#from-the-dwc-dashboard","children":[]},{"level":3,"title":"From the Filter collection objects task","slug":"from-the-filter-collection-objects-task","link":"#from-the-filter-collection-objects-task","children":[]},{"level":3,"title":"Preparing your data for an aggregator (e.g. GBIF, iDigBio, ALA)","slug":"preparing-your-data-for-an-aggregator-e-g-gbif-idigbio-ala","link":"#preparing-your-data-for-an-aggregator-e-g-gbif-idigbio-ala","children":[]}]},{"level":2,"title":"Bibliographies (Reference lists)","slug":"bibliographies-reference-lists","link":"#bibliographies-reference-lists","children":[{"level":3,"title":"As CSV","slug":"as-csv","link":"#as-csv","children":[]},{"level":3,"title":"As BibTeX","slug":"as-bibtex","link":"#as-bibtex","children":[]},{"level":3,"title":"Formatted for journals","slug":"formatted-for-journals","link":"#formatted-for-journals","children":[{"level":4,"title":"Create shareable link to your filtered bibliography","slug":"create-shareable-link-to-your-filtered-bibliography","link":"#create-shareable-link-to-your-filtered-bibliography","children":[]}]},{"level":3,"title":"Catalog of Life Data Package (ColDP)","slug":"catalog-of-life-data-package-coldp","link":"#catalog-of-life-data-package-coldp","children":[]}]},{"level":2,"title":"Data matrices (evolutionary, descriptive, quantitative, etc.)","slug":"data-matrices-evolutionary-descriptive-quantitative-etc","link":"#data-matrices-evolutionary-descriptive-quantitative-etc","children":[{"level":3,"title":"Nomenclature stats","slug":"nomenclature-stats","link":"#nomenclature-stats","children":[]}]},{"level":2,"title":"JSON","slug":"json","link":"#json","children":[{"level":3,"title":"Individual records","slug":"individual-records","link":"#individual-records","children":[]},{"level":3,"title":"Via filters","slug":"via-filters","link":"#via-filters","children":[]}]},{"level":2,"title":"The TaxonWorks API","slug":"the-taxonworks-api","link":"#the-taxonworks-api","children":[]}],"git":{"updatedTime":1711747772000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"guide/export.md"}');export{h as comp,u as data}; diff --git a/assets/getting-started.html-RycraOQW.js b/assets/getting-started.html-RycraOQW.js new file mode 100644 index 00000000..1bc2cf31 --- /dev/null +++ b/assets/getting-started.html-RycraOQW.js @@ -0,0 +1 @@ +import{_ as e,c as t,o as a,b as i}from"./app-Bwgh_xIT.js";const n={},s=i('

Getting started with some basics

Before you read a manual, setup a workflow, import data, or get deep into TaxonWorks you'll want the basics.

In-application help

  • Where: Orange half-circle icon at right side of screen
  • What:
    • When glowing indicates there is an overlay with markers containing help information regarding parts of the UI
    • Also includes a link to context-sensitive hot keys applicable to the current page.
',4),l=[s];function o(r,c){return a(),t("div",null,l)}const p=e(n,[["render",o],["__file","getting-started.html.vue"]]),d=JSON.parse('{"path":"/guide/getting-started.html","title":"Getting started with some basics","lang":"en-US","frontmatter":{"sidebarPosition":35},"headers":[{"level":2,"title":"In-application help","slug":"in-application-help","link":"#in-application-help","children":[]}],"git":{"updatedTime":1668385163000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":6},{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":1}]},"filePathRelative":"guide/getting-started.md"}');export{p as comp,d as data}; diff --git a/assets/glossary.html-h1YJcZRI.js b/assets/glossary.html-h1YJcZRI.js new file mode 100644 index 00000000..0776abbf --- /dev/null +++ b/assets/glossary.html-h1YJcZRI.js @@ -0,0 +1,6 @@ +import{_ as e,c as a,o as t,b as i}from"./app-Bwgh_xIT.js";const n={},s=i(`

Glossary

I read the word(s) X on this site, or heard them in relation to TaxonWorks. What do they mean according to this community?

Editing these pages? Adding a link to a Glossary term is simple, do it like this:

[your term](/about/glossary#your-term)
+

Asserted Distribution

Refers to a geographic distribution record for a taxon listed in a publication. It is “asserted” in the sense that the information is simply taken as given from the publication. If it is “original” it is the first record for that OTU in that place.

Buffered

A prefix (buffered_) used to indicate verbatim text that is part of a CollectionObject record. Buffered fields are used TaxonWorks in a digitization workflow as the first step of transcribing labels, or images, to digital data. Buffered fields are write-once, they after addition they should not be changed, nor do they track changes to parsed values.

Cached (values)

Fields prefixed in cached_ are auto-generated by TaxonWorks based on other values in the record and/or records related to the record. They are used as indicies for searching and for display purposes, particularly cached_<>_html values.

Context sensitive

Something that appears similar at the outset (e.g. an Icon), but changes in behaviour or appearance given where and when it is encountered in the application.

Fidelity

In this context, we want to talk about and focus on data fidelity. While we often refer to data quality, we note that in reality, quality as a categorical goal proves quite hard to define. It's subjective and "it depends" on may other factors. With fidelity as the goal, we can seek to ensure the data are as fit as possible (e.g formatted as expected, compliant with relevant standards) and whose completeness can be better understood or visualized. With fidelity as the goal, others can then determine if said data are fit-for-use for their research / data management needs and questions. We recognize and appreciate this considered nuance in terminology as shared by Erica Krimmel at TaxonWorks Together 2024 in our Data Quality Round Table Conversation.

Hot keys

Typing a combination of keys to trigger a behaviour in the UI. Universal hot keys include concepts like ctrl-c for "Copy text to clipboard". TaxonWorks has numerous hot key combinations that speed tasks.

Identifiers

Identifiers distinguish instances, i.e. specific things. TaxonWorks supports many different types of identifiers, and multiple identifiers can be added to individual instances. Some identifier types map 1:1 with physical things like the catalog number attached to specimen in collections, others types are strictly digitial. Some identifiers are Global, some are Local. Global identifiers are those that come from well thought out systems that mint identifiers that are intended to be truly globally (universally) unique. Local identifiers have a user-defined Namespace (the fixed bit of the identifier that doesn't change across the identifier) and a value, which must be unique within that Namespace.

Is Original

Throughout TW, “Is Original” next to a checkbox means that the information, data, or image has not been published before.

Naïve matching

Used in context of tracing text in buffered fields to the verbatim fields include parsed out values. "Naïve" means we anticipate a very simple match, string to string, no fuzziness, no AI, etc.

Namespace

A “namespace” is the abbreviation for a collection used in specimen accession numbers. For example, in the accession number label USNM 1234567, “USNM” is the namespace. It is not necessarily the same as a repository, as there may be multiple namespaces used by a given repository.

Object

An "object" is an abstract term often used when referencing the representation of a data instance in code. For example, in the underlying code in TaxonWorks there are TaxonName objects, CollectingEvent objects, CollectionObject objects, People objects, etc. We also often speak of adding attributes to objects. In the case of TaxonWorks these additions are called DataAttributes and AlternateValues. In this case we are adding some description to our data-object, for example a name for a "body of water" attribute to our CollectingEvent, or an abbreviation for a term in the tihe title of a Source.

OTU (Operational Taxonomic Unit)

The biological unit that is useful to work with. They act as proxies.

Parsed values

In TaxonWorks parsed values are the formalized representation of the data. For example the verbatim date "12.iv.1997" parsed into three fields in TaxonWorks: start_date_day (12), start_date_month (4), start_date_year (1997).

Parent

In TW the parent is the next higher taxon in which the taxon of interest is classified, for example, a genus for a species or a subfamily for a genus. By setting the parent, a curator controls how the classification will appear in TW. For example, for a small family in which subfamilies are not used, the parent of a genus may be a family. In other cases, the parent of a genus could be a tribe. This is determined by the curator. The complete taxonomic history of the taxon’s classification is recorded separately on the Browse Nomenclature screen.

Parsing

Breaking down buffered or verbatim values into further fields, or semantic relationships.

Project

An instance of TaxonWorks supports multiple projects. Each project may have one or more users. Data in one project are only accessible in that project -- with a couple of key strategic exceptions (e.g. "Community" data like source publications that are public, or people names) where data are shared across projects.

Protonym

“Protonym” in TW refers to a name at the species, genus or family level in its first validly published form. It will always be associated with a literature citation, and it has an author and date, as spelled out by the rules of ICZN. You can think of it as occupying a unique niche in nomenclatural hyperspace. In cases of synonymy, the protonym is not the currently valid name. The currently valid protonym is indicated in many places in by a check mark. However, note that for species names in a taxonomic history, the check mark will indicate the original combination of the name rather than the current one.

Pull Request

A simple means to elegantly suggest changes to a website or code repository by editing a clone of that respository and then sending a message back to the origin that includes those changes. The changes can be considered by the maintainers of the original respostory and integrated, or not.

Radial

A modal (pop-up requiring exit) form in TaxonWorks that looks like a pie. These are all indicated by a circular icon with a blue border.

Radial Annotator

A radial that lets you add an edit annotations on an object.

Radial Navigator

A radial that lets you navigate from an object to its related tasks and forms.

Repository

Generally speaking, a collection in which specimens are deposited. It may or may not be associated with an institution.

SOP

"Standard operating proceedure." In TaxonWorks this might be a project-specific way of doing things. In TaxonWorks you can assert that some or all of your data was derived from some process by annotating it with a Protocol annotation.

Stage 2

A temporary(?) code-name referencing a step in the digitization process that represents moving from Buffered or Verbatim values to parsed values.

Staged (or staged images)

A reference to a digitization process in where all data are laid out for complete capture within an image. TaxonWorks uses stages that have areas defined to match specific types of data, for example "Catalog numbers", "Specimen", "Image registration".

Taxon Name

A taxonomic name, used in the same sense as in the ICZN.

UI

User interface = the buttons, inputs, layout, and views in the application.

UX

User experience = how you navigate, interpret, think about and make use of the UI.

Verbatim fields

Verbatim fields in TaxonWorks are a small set of CollectingEvent fields that contain parts of the Verbatim or Buffered values. For example given a label like:

USA:TX:Brazos Co.
+Lick Creek Park
+12.iv.1997
+M. Yoder, YPT
+

Then the TaxonWorks verbatim fields verbatim_locality would contain 'Lick Creek Park' and the verbatim_date would include 12.iv.1997.

Other glossaries and descriptions

Heard a term in the context of a biodiversity informatics discussion that you don not understand? One of these resources might define it.

  • TDWG Standards - TaxonWorks exports, and maps to numerous TDWG defined terms.
`,67),o=[s];function r(l,d){return t(),a("div",null,o)}const h=e(n,[["render",r],["__file","glossary.html.vue"]]),p=JSON.parse('{"path":"/about/glossary.html","title":"Glossary","lang":"en-US","frontmatter":{"sidebarPosition":40},"headers":[{"level":3,"title":"Asserted Distribution","slug":"asserted-distribution","link":"#asserted-distribution","children":[]},{"level":3,"title":"Buffered","slug":"buffered","link":"#buffered","children":[]},{"level":3,"title":"Cached (values)","slug":"cached-values","link":"#cached-values","children":[]},{"level":3,"title":"Context sensitive","slug":"context-sensitive","link":"#context-sensitive","children":[]},{"level":3,"title":"Fidelity","slug":"fidelity","link":"#fidelity","children":[]},{"level":3,"title":"Hot keys","slug":"hot-keys","link":"#hot-keys","children":[]},{"level":3,"title":"Identifiers","slug":"identifiers","link":"#identifiers","children":[]},{"level":3,"title":"Is Original","slug":"is-original","link":"#is-original","children":[]},{"level":3,"title":"Naïve matching","slug":"naive-matching","link":"#naive-matching","children":[]},{"level":3,"title":"Namespace","slug":"namespace","link":"#namespace","children":[]},{"level":3,"title":"Object","slug":"object","link":"#object","children":[]},{"level":3,"title":"OTU (Operational Taxonomic Unit)","slug":"otu-operational-taxonomic-unit","link":"#otu-operational-taxonomic-unit","children":[]},{"level":3,"title":"Parsed values","slug":"parsed-values","link":"#parsed-values","children":[]},{"level":3,"title":"Parent","slug":"parent","link":"#parent","children":[]},{"level":3,"title":"Parsing","slug":"parsing","link":"#parsing","children":[]},{"level":3,"title":"Project","slug":"project","link":"#project","children":[]},{"level":3,"title":"Protonym","slug":"protonym","link":"#protonym","children":[]},{"level":3,"title":"Pull Request","slug":"pull-request","link":"#pull-request","children":[]},{"level":3,"title":"Radial","slug":"radial","link":"#radial","children":[]},{"level":3,"title":"Radial Annotator","slug":"radial-annotator","link":"#radial-annotator","children":[]},{"level":3,"title":"Radial Navigator","slug":"radial-navigator","link":"#radial-navigator","children":[]},{"level":3,"title":"Repository","slug":"repository","link":"#repository","children":[]},{"level":3,"title":"SOP","slug":"sop","link":"#sop","children":[]},{"level":3,"title":"Stage 2","slug":"stage-2","link":"#stage-2","children":[]},{"level":3,"title":"Staged (or staged images)","slug":"staged-or-staged-images","link":"#staged-or-staged-images","children":[]},{"level":3,"title":"Taxon Name","slug":"taxon-name","link":"#taxon-name","children":[]},{"level":3,"title":"UI","slug":"ui","link":"#ui","children":[]},{"level":3,"title":"UX","slug":"ux","link":"#ux","children":[]},{"level":3,"title":"Verbatim fields","slug":"verbatim-fields","link":"#verbatim-fields","children":[]},{"level":2,"title":"Other glossaries and descriptions","slug":"other-glossaries-and-descriptions","link":"#other-glossaries-and-descriptions","children":[]}],"git":{"updatedTime":1716574303000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":6},{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":3},{"name":"Deborah Paul","email":"dlpaul@illinois.edu","commits":1},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":1},{"name":"kandakoj","email":"70152690+kandakoj@users.noreply.github.com","commits":1}]},"filePathRelative":"about/glossary.md"}');export{h as comp,p as data}; diff --git a/assets/identifiers.html-BA8g1PWZ.js b/assets/identifiers.html-BA8g1PWZ.js new file mode 100644 index 00000000..25144940 --- /dev/null +++ b/assets/identifiers.html-BA8g1PWZ.js @@ -0,0 +1 @@ +import{_ as i,c as s,o as a,a as e}from"./app-Bwgh_xIT.js";const t={},n=e("h1",{id:"identifiers",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#identifiers"},[e("span",null,"Identifiers")])],-1),c=e("p",null,"TODO",-1),r=e("h2",{id:"namespaces",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#namespaces"},[e("span",null,"Namespaces")])],-1),d=e("p",null,"TODO",-1),l=[n,c,r,d];function o(m,_){return a(),s("div",null,l)}const p=i(t,[["render",o],["__file","identifiers.html.vue"]]),f=JSON.parse('{"path":"/guide/Manual/identifiers.html","title":"Identifiers","lang":"en-US","frontmatter":{"sidebarPosition":320},"headers":[{"level":2,"title":"Namespaces","slug":"namespaces","link":"#namespaces","children":[]}],"git":{"updatedTime":1712178034000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"guide/Manual/identifiers.md"}');export{p as comp,f as data}; diff --git a/assets/import.html-CCynoaFR.js b/assets/import.html-CCynoaFR.js new file mode 100644 index 00000000..c31486c6 --- /dev/null +++ b/assets/import.html-CCynoaFR.js @@ -0,0 +1 @@ +import{_ as e,c as t,o as a,b as o}from"./app-Bwgh_xIT.js";const r={},i=o('

Import

Many projects start with imports, and target Exports, the former are detailed here.

For strategies on migrating whole projects see Migrate to TaxonWorks. This includes an overview of the many ways that data can be added to TaxonWorks.

Batch loaders

There are various batch importers available within the UI. These are polished to differing degrees and have various benefits and limitations. The required format, and often an example spreadsheet, is provided in the UI. All batch loaders are two-step, allowing for (and requiring) a preview of results before inserting them into the database.

  • To explore available batch loaders click on a Data card in the Hub. If batch loader(s) are available then then the batch load link will be enabled.
  • Batch importers largely target tab-separated text files, though this is not exclusively the case.
  • Notable batch loaders are found in the TaxonNames, Otus, and Sources data cards, though others exist.
  • Explore various batch loaders (each data card highlighted in yellow has associated batch loaders at this writing).

Try a batch loader

In your test project,

  1. Go to the data tab
  2. Select the Otu Data card
  3. Click “batch load”
  4. See instructions in the UI for expected / accepted data types and format.
  5. Create your own file or use this test file Header column = otu_name Blank lines are skipped Tab-delimited format, UTF-8 encoding, Unix line-endings required
  6. Browse to your file to select it, click preview
  7. If data looks as expected, browse to select that file again and click create.

Batch loaders (as of March 2022) include:

  • OTUs operational taxonomic units
    • simple batch load
    • data attributes
    • simple batch file
    • OTU with identifier batch load
  • collecting events
    • gpx (collecting events with georeferences)
    • castor
  • collection objects
    • castor
    • buffered strings
  • descriptors
    • qualitative descriptors
    • modify gene descriptor
  • sequences
    • Genbank
    • Genbank batch
    • primers
  • sources
    • BibTeX
  • taxon names
    • simple
    • castor
  • asserted distributions
    • simple
  • namespaces
    • simple
  • sequence relationships
    • primers batch

Darwin Core Archive (DwC-A) import

To upload occurrence data, TW offers the ability to use a DwC Archive file format. For occurrences, the importer is presently limited to vouchered specimen data records.

To use this approach you must have your specimen data in a single spreadsheet-style format that can be export as "CSV".

Preparing for an import follows the following general procedures:

TIP

As part of your process you may need to go back and forth between mapping and configuring

Map your data

The DwC importer provides flexibility in importing diverse data. These fall in to several types:

  1. DwC terms
  2. User customizable data attributes
  3. User customizable biocuration classes
  4. TaxonWorks' model specific attributes

As headers, these will look like this:

catalogNumberTW:DataAttribute:CollectionObject:colorcasteTW:CollectingEvent:verbatim_collectors
A DwC term mappingA user customizable data attributeA TW biocuration attributeA TW specific attribute

TIP

A first step is to go through your data and figure out which column header type you'll need. Start by matching to supported DwC terms, then go on from there.

DwC term mapping

When going from DwC, a flat format, to TaxonWorks your moving your data from rows to Things. We can group the DwC terms into classes to reflect where they end up in TaxonWorks.

Record-level class
TermMapping
typeIt is checked that it equals PhysicalObject before allowing the record to be imported. If the value is empty or term not present it is assumed it is a PhysicalObject
institutionCodeSelects the repository for the specimen that is registered with an acronym equal to this value
collectionCodePaired with institutionCode it is used to select the namespace for catalogNumber from a user-defined lookup table in import settings, the value itself is not imported.
basisOfRecordIt is checked that it equals an expected valid value for term, e.g. PreservedSpecimen or FossilSpecimen before allowing the record to be imported. If the value is empty or term not present it is assumed it is a PreservedSpecimen [IS THIS STILL TRUE?]
Occurrence class
TermMapping
catalogNumberThe identifier value for Catalog Number local identifier. The namespace is selected from the namespaces lookup table in import settings queried by institutionCode:collectionCode pair.
recordedByIt is imported as-is in verbatim collectors field of the collecting event. Additionally, the value is parsed into people and assigned as collectors of the CE. Previously existing people are not used unless the data origin is the same dataset the record belongs to, otherwise any missing people are created.
individualCountThe total number of entities associated with the specimen record (e.g. this record may be for a "lot" containing 6 objects).
sexSelects the biocuration class from the "sex" biocuration group to be assigned as biocuration classification for the specimen.
preparationsSelects an existing preparation matching the name with this value.
Event class
TermMapping
fieldNumberVerbatim trip identifier of collecting event
eventDateThe ISO8601-formatted date is split into start year, month and day collecting event fields. If the value is composed of two dates separated by /, then rightmost date is used as end date and split in the same way as start date. If data contradicts dates from other non-empty date-related terms the record will fail to import
eventTimeTime is split into time start hour, minute, and second of collecting event
startDayOfYearUsing year and the value for this term month and day are calculated and stored in start year, month, and day collecting event fields. If the computed value contradicts dates from other non-empty date-related terms the record will fail to import.
endDayOfYearUsing year and the value for this term month and day are calculated and stored in end year, month and day collecting event fields. If the computed value contradicts dates from other non-empty date-related terms the record will fail to import.
yearThe start date year of the collecting event. If the value contradicts dates from other non-empty date-related terms the record will fail to import
monthThe start date month of the collecting event. If the value contradicts dates from other non-empty date-related terms the record will fail to import.
dayThe start date day of the collecting event. If the value contradicts dates from other non-empty date-related terms the record will fail to import
verbatimEventDateVerbatim date of the collecting event
habitatVerbatim habitat of the collecting event
samplingProtocolVerbatim method of the collecting event
fieldNotesField notes of the collecting event
Location class
TermMapping
fieldNumberVerbatim trip identifier of collecting event
Identification class
TermMapping
identifiedByA list (concatenated and separated) of names of people, groups, or organizations who assigned the Taxon to the subject. If possible, separate the values in a list with space vertical bar space | (known as a pipe). (e.g. Theodore Pappenfuss | Robert Macey)
dateIdentifiedThe date on which the subject was determined as representing the Taxon. Best practice is to use a date that conforms to ISO 8601-1:2019 see examples.
Taxon class
TermMapping
nomenclaturalCodeSelects the nomenclatural code for the taxon ranks used when creating protonyms. The value itself is not imported
kingdomCreates (unless already present) a protonym at kingdom rank
phylumCreates (unless already present) a protonym at phylum rank
classCreates (unless already present) a protonym at class rank
orderCreates (unless already present) a protonym at order rank
familyCreates (unless already present) a protonym at family rank
genusIgnored. Extracted from scientificName instead
subgenusIgnored. Extracted from scientificName instead
specificEpithetIgnored. Extracted from scientificName instead
infraspecificEpithetIgnored. Extracted from scientificName instead
scientificNameSeveral protonyms created (only when not present already) with their corresponding ranks and placements
taxonRankThe taxon rank of the most specific protonym
higherClassificationSeveral protonyms created (only when not present already) with their corresponding ranks and placement. In case a protonym was not already present, only family-group names will be created, names with classsification higher than family-group not previously registered will result in error. Names at genus rank or lower are ignored and extracted from scientificName instead
scientificNameAuthorshipVerbatim author of most specific protonym

TaxonWorks mappings

The DwC importer task includes some TW-specific mappings that are neither DwC core terms nor in any DwC extension term lists but instead, direct mappings to predicates in your projects imported as data attributes for collection objects and collecting events, biocuration groups and classes, and as an advanced-use feature you may have direct mappings to model fields.

WARNING

If submitting an actual DwC-A zip file and not tab-separated text file or spreadsheet, this TW-specific mappings have to be placed as headers in the core table, and not in meta.xml. If you are replacing a mapping from meta.xml, you must make sure to comment it out and also if inserting colums make sure you do the appropriate adjustments to avoid collision.

See Configure TaxonWorks for your DwC import for how to create the records referenced in these mappings.

Mappings to project predicates

In cases where you need to import predicate values targetting the imported collection object or collecting event you may do so by naming the column with a pattern like TW:DataAttribute:<target_class>:<predicate_identifier>. <target_class> may be CollectionObject or CollectingEvent, and the <predicate_identifier> may be the either the name of the predicate or its URI. As an example if you have a predicate registered with name ageInDays and URI http://rs.gbif.org/terms/1.0/ageInDays, both TW:DataAttribute:CollectionObject:ageInDays and TW:DataAttribute:CollectionObject:http://rs.gbif.org/terms/1.0/ageInDays can be used to refer to the same predicate.

Mappings to biocuration groups and classes

The importer is able to map sex into the appropriate biocuration group and select the approriate class according to the value. For additional mappings you may use a special column name pattern to select a biocuration group like TW::BiocurationGroup:<group_identifier> where <group_identifier> can be the name of the biocuration group or its URI. In addition the values must match an existing biocuration class and you may use either its name or URI. For example, if you have a biocuration group registered with name Caste and URI urn:example:ants:caste and biocuration class with name Queen and URI urn:example:ants:caste:queen the following examples do all create the same biocuration classification:

Casteurn:example:ants:caste
Queenurn:example:ants:caste:queen
urn:example:ants:caste:queenQueen
Mappings to DwC predicates

Whenever the importer sees that your project has custom attributes for collecting events and/or collection objects that matches Darwin Core URI terms (http://rs.tdwg.org/dwc/terms/<term>), them will be imported as data attributes regardless of any existing mapping of the same field. This allows to preserve verbatim dataaset value for reference as also to import data from terms not supported by the importer.

Direct mapping to TW model fields

This is an advance mapping and requires knowledge of the underlying TW models. The pattern is TW:<model_class>:<field> where model can be either CollectionObject or CollectingEvent, and <field> can be the ones listed below.

Classfields
CollectionObjectbuffered_collecting_event, buffered_determinations, buffered_other_labels, total,
CollectingEventdocument_label, print_label, verbatim_label, field_notes, formation, group, lithology, max_ma, maximum_elevation, member, min_ma, minimum_elevation, elevation_precision, start_date_day, start_date_month, start_date_year, end_date_day, end_date_month, end_date_year, time_end_hour, time_end_minute, time_end_second, time_start_hour, time_start_minute, time_start_second, verbatim_collectors, verbatim_date, verbatim_datum, verbatim_elevation, verbatim_geolocation_uncertainty, verbatim_habitat, verbatim_latitude, verbatim_locality, verbatim_longitude, verbatim_method, verbatim_trip_identifier

Configure TaxonWorks for your DwC import

To import your DwC you many need to create several types of things in TaxonWorks. These include namespaces and controlled vocabulary terms.

Namespaces

In the context of the DwC importer namespaces allow TW to

  • Assign an Identifier as a CatalogNumber
  • Track uniqueness of each object during the import, helping TW to normalize your data, turning it from rows to Things
  • Group your Identifiers (and therefor the CollectionObjects they reference) as coming from a specific place

Controlled vocabulary terms

There are several kinds of CVTs that may be used in the import process.

TIP

All CVTs are created and managed via the Manage controlled vocabulary terms task.

Predicates

Think of Predicates as your custom column headers. Predicates are referenced in DataAttributes. Use a Predicate when you want to assign many different values (have rows with many different values) under one heading.

Biocuration classes

Think of biocuration classes as custom attributes for your collection objects, things like 'male', 'pupa', or 'larva'. These let you assign values useful for your curation of your specimens in a controlled way, ensuring problems like 'M.', 'MALE', 'ale' don't happen in what might otherwise be a "Sex" field. [TODO: reference groups?]. This approach is used when your rows have only a few specific values across the dataset.

Unmapped columns

Column headers that can't be linked via one of the 3 mechanisms are ignored during the import process. This means its important to do some trial runs in a sandbox, or with a smaller dataset to see that your values are mapping over. The Browse collection object task is a good place to check this.

DANGER

No warning is given when columns do not map, they are simply ignored.

TIP

You can augment your data after import with batch update functionality inside TW. Carefully planning your overal import process can lead to a more efficient overall approach. Sometimes its easier to work in spreadsheets, sometimes within a database.

Drag and drop

Drag and drop loading of images and documents are accessible in various places in including the Radial annotator, and, notable, Tasks -> New image.

Record by record

When first learning TaxonWorks, entering records one-at-a-time offers you the opportunity to learn about more of the features in TW and get a feel for how you and others experience the UI.

For example, you want to enter a specimen record. You have two Tasks enabling you to do this. Choose to use Comprehensive Specimen Digitization Task or the Simple New Specimen Task.

Try Simple New Specimen

In your project, try creating a simple new specimen record.

  • Note you will need to select a namespace. You may find you need to add a namespace before you can do this TW task. Adding a value for namespace ensures your uploaded data records will be unique inside your TW project and across TW projects. In your project, you may also need more than one namespace. [Use Tommy’s INHS Insect Collection as an example, with 12 different namespaces that effectively group the various collections housed at INHS ENT].

  • If you tried the OTU batch loader you can pick one of your OTUs for the name to assign to this specimen.

  • Add an image if you wish

  • Select the Preparation type for this specimen. You may need to add a new value to the dropdown using the New preparation type task.

Coming from other software

Scratchpads

We are in the process of exploring two routes to come from Scratchpads to TaxonWorks.

  • The DwC import should work well for occurrence data that is based on collected objects.
  • The SFG team is has worked with a select number of individual Scratchpad curators to script the process of transferring their datadata. Contact us if you are interested in what this approach entails. Note that this process takes programming effort that is a limited resource within the SFG.
',79),d=[i];function s(n,c){return a(),t("div",null,d)}const p=e(r,[["render",s],["__file","import.html.vue"]]),h=JSON.parse('{"path":"/guide/import.html","title":"Import","lang":"en-US","frontmatter":{"sidebarPosition":60},"headers":[{"level":2,"title":"Batch loaders","slug":"batch-loaders","link":"#batch-loaders","children":[{"level":3,"title":"Try a batch loader","slug":"try-a-batch-loader","link":"#try-a-batch-loader","children":[]}]},{"level":2,"title":"Darwin Core Archive (DwC-A) import","slug":"darwin-core-archive-dwc-a-import","link":"#darwin-core-archive-dwc-a-import","children":[{"level":3,"title":"Map your data","slug":"map-your-data","link":"#map-your-data","children":[{"level":4,"title":"DwC term mapping","slug":"dwc-term-mapping","link":"#dwc-term-mapping","children":[{"level":5,"title":"Record-level class","slug":"record-level-class","link":"#record-level-class","children":[]},{"level":5,"title":"Occurrence class","slug":"occurrence-class","link":"#occurrence-class","children":[]},{"level":5,"title":"Event class","slug":"event-class","link":"#event-class","children":[]},{"level":5,"title":"Location class","slug":"location-class","link":"#location-class","children":[]},{"level":5,"title":"Identification class","slug":"identification-class","link":"#identification-class","children":[]},{"level":5,"title":"Taxon class","slug":"taxon-class","link":"#taxon-class","children":[]}]},{"level":4,"title":"TaxonWorks mappings","slug":"taxonworks-mappings","link":"#taxonworks-mappings","children":[{"level":5,"title":"Mappings to project predicates","slug":"mappings-to-project-predicates","link":"#mappings-to-project-predicates","children":[]},{"level":5,"title":"Mappings to biocuration groups and classes","slug":"mappings-to-biocuration-groups-and-classes","link":"#mappings-to-biocuration-groups-and-classes","children":[]},{"level":5,"title":"Mappings to DwC predicates","slug":"mappings-to-dwc-predicates","link":"#mappings-to-dwc-predicates","children":[]},{"level":5,"title":"Direct mapping to TW model fields","slug":"direct-mapping-to-tw-model-fields","link":"#direct-mapping-to-tw-model-fields","children":[]}]}]},{"level":3,"title":"Configure TaxonWorks for your DwC import","slug":"configure-taxonworks-for-your-dwc-import","link":"#configure-taxonworks-for-your-dwc-import","children":[{"level":4,"title":"Namespaces","slug":"namespaces","link":"#namespaces","children":[]},{"level":4,"title":"Controlled vocabulary terms","slug":"controlled-vocabulary-terms","link":"#controlled-vocabulary-terms","children":[{"level":5,"title":"Predicates","slug":"predicates","link":"#predicates","children":[]},{"level":5,"title":"Biocuration classes","slug":"biocuration-classes","link":"#biocuration-classes","children":[]}]}]},{"level":3,"title":"Unmapped columns","slug":"unmapped-columns","link":"#unmapped-columns","children":[]}]},{"level":2,"title":"Drag and drop","slug":"drag-and-drop","link":"#drag-and-drop","children":[]},{"level":2,"title":"Record by record","slug":"record-by-record","link":"#record-by-record","children":[{"level":3,"title":"Try Simple New Specimen","slug":"try-simple-new-specimen","link":"#try-simple-new-specimen","children":[]}]},{"level":2,"title":"Coming from other software","slug":"coming-from-other-software","link":"#coming-from-other-software","children":[{"level":3,"title":"Scratchpads","slug":"scratchpads","link":"#scratchpads","children":[]}]}],"git":{"updatedTime":1712614078000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":3},{"name":"Deborah Paul","email":"dlpaul@illinois.edu","commits":1}]},"filePathRelative":"guide/import.md"}');export{p as comp,h as data}; diff --git a/assets/index.html-B6PPCidR.js b/assets/index.html-B6PPCidR.js new file mode 100644 index 00000000..b66e825f --- /dev/null +++ b/assets/index.html-B6PPCidR.js @@ -0,0 +1 @@ +import{_ as e,c as t,o,b as a}from"./app-Bwgh_xIT.js";const i={},n=a('

Introduction

Categorized help that answer a commonly asked question.

How do I contribute back to the community?

See 'Contributing' in develop.

What about sequence and genomic data, how do they fit into TaxonWorks vision?

To see this vision realized we need dedicated collaborators (developers, work-bench experts, labs) and funding, i.e. the Species File Group and its current collaborators does not presently have these advances as targeted milestones, nor do they anticipate significant code-contributions from "core" members in the absence of said collaborations/funding. The SFG is very open to guiding work done in this area, i.e. facilitating developers and data-modellers and providing parallel work in some areas, for example implementing externally developed, well thought out, UIs.

At present managing Sequence data is within the purview of TaxonWork's "vision" in the following ways (we're an open community, this can evolve):

  • Sequence handling in TaxonWorks is envisioned as leaning towards long-term vouchering alongside simple sequence annotations (think biodiversity informatics focused on taxonomy) as opposed to more complex annotation systems (e.g. complex structural annotations, functional graphs, etc.).
  • TaxonWorks contains excellent CollectionObject and Extract management capabilities, i.e. the framework for vouchering the physical origin of sequences is well developed. This in-and-of-itself, particularly in combination with the extensible functionality offered by customizable data-attributes may fill a gap within molecular labs.
  • TaxonWorks has a Sequence model, and some nice back-end functionality work has been done on it, for example we added a logic-based (and/or) description framework for linking one sequence to another (think primers, blast reference sequences, etc.)
  • There is a nice Descriptor context that treats Sequences as just another column type, i.e. there are excellent inherent capabilities for mixing molecular and morphological data and exporting unified datasets for analysis.
  • While Sequence objects can be created in the UI functionality therein is primitive and has not been used "for real", i.e. the UI/UX needed for actual practical day-to-day work does not exist (2024/1/26)
  • Sequences managed in TaxonWorks should be curated and have some human-asserted metadata. For example we're not aiming to manage raw-reads, or unassembled data.
  • Sequences are stored as raw strings, not in a BLAST database, it is of course conceivable to change this back-end storage should advantages in indexing and storage size be needed in the future.
  • Storing genomes (unassembled or assembled) is not presently a goal. Linking vouchers to metadata about a genome is fully in scope.
  • We know of many systematics labs where 10k x 4k matrices (terminals by genes) are now the targets of research efforts. We know of no system that comprehensively manages this type of project, for example tracking gaps in required target specimens or genes as projects progress. This is the initial maximum size we envision fitting within a TaxonWorks framework.
  • We understand the basic starting points (annotated FASTA files) for large-scale integrative taxonomy (LIT). Combining an entry point that starts data management with an annotated FASTA file and then lets users advance their species concepts through the powerful means of exploring their data with existing (and novel) querying is very much in the scope of our vision. Single barcode-style sequences for 100s of thousands of specimens / project is well within our vision.
  • Analysis of sequence data should be done outside TaxonWorks, being facilitated by API endpoints and exports manageable inside TaxonWorks. For example once Sequence data are present you can not use TaxonWorks to trigger an alignment (though calculating some simple distance metrics are desirable for filtering data in LIT contexts).
  • We have done prior work in managing full Sanger-sequencing workflows (PCRs, worksheets, etc.). This code is in the precursor project mx. It may be relevant to some.
  • No well tested batch loading functionality exists. Simple FASTA processing should be very straightforward. Thanks to the scripting framework that comes with TaxonWorks the software is very well positioned to facilitate custom 1-off migrations.
  • We very much would like to facilitate the export to NCBI/repository framework based on data captured in TaxonWorks.
',8),s=[n];function r(l,c){return o(),t("div",null,s)}const h=e(i,[["render",r],["__file","index.html.vue"]]),m=JSON.parse('{"path":"/guide/FAQs/","title":"Introduction","lang":"en-US","frontmatter":{"sidebarParentPosition":100},"headers":[{"level":3,"title":"How do I contribute back to the community?","slug":"how-do-i-contribute-back-to-the-community","link":"#how-do-i-contribute-back-to-the-community","children":[]},{"level":3,"title":"What about sequence and genomic data, how do they fit into TaxonWorks vision?","slug":"what-about-sequence-and-genomic-data-how-do-they-fit-into-taxonworks-vision","link":"#what-about-sequence-and-genomic-data-how-do-they-fit-into-taxonworks-vision","children":[]}],"git":{"updatedTime":1706297562000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":7},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":1}]},"filePathRelative":"guide/FAQs/README.md"}');export{h as comp,m as data}; diff --git a/assets/index.html-B_Sr65y4.js b/assets/index.html-B_Sr65y4.js new file mode 100644 index 00000000..8c50010d --- /dev/null +++ b/assets/index.html-B_Sr65y4.js @@ -0,0 +1 @@ +import{_ as e,c as t,o}from"./app-Bwgh_xIT.js";const a={};function i(s,r){return o(),t("div")}const l=e(a,[["render",i],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/","title":"Home","lang":"en-US","frontmatter":{"home":true,"title":"Home","heroImage":"/images/taxonworks_home.svg","actions":[{"text":"Guide","link":"/guide/","type":"primary"},{"text":"Develop","link":"/develop/","type":"primary"},{"text":"About","link":"/about/","type":"secondary"}],"features":[{"title":"Guide","splash":"Learn to use TaxonWorks","details":"Get the big picture. Start a project. Get started. Study manuals, watch videos, get tips, learn best practices from SOPs, answer \\"How do I?\\" from FAQs, mobilize data with import and export, conect workflows with the API. Request features, file bug reports."},{"title":"Develop","splash":"Learn to develop TaxonWorks","details":"Install, design, code, and document TaxonWorks. Find source-code, data-models and technical documentation. Issue tracking. Build this site!"},{"title":"About","splash":"Learn more about TaxonWorks","details":"Contact and connect with the community. Understand who TaxonWorks is for. Cite the project. Find users, their data, and examples of use. Read about its past, present and future. More about biodiversity informatics."}],"footer":"Content is CC0. Please consider citation.","footerHtml":true},"headers":[],"git":{"updatedTime":1663604848000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":2},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":2},{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"README.md"}');export{l as comp,d as data}; diff --git a/assets/index.html-BaZZjf64.js b/assets/index.html-BaZZjf64.js new file mode 100644 index 00000000..247eb336 --- /dev/null +++ b/assets/index.html-BaZZjf64.js @@ -0,0 +1 @@ +import{_ as e,c as o,o as i,b as n}from"./app-Bwgh_xIT.js";const t={},a=n('

The big picture

The view from 30K feet at TaxonWorks and why this online documentation tool.

Vision and mission

Our vision is a world in which the descriptions of Earth's life permeates humanity.

Our mission is to make TaxonWorks, and its companions, as excellent as those that describe life on Earth. As the requirements, needs, and goals for those that describe life evolve, so too should the resources and tools that facilitate their work.

Read more at TaxonWorks.org.

Everyone included

Here in docs.taxonworks.org, everyone contributes to the content, development, and evolution of TaxonWorks' documentation. Click where you see "Edit this page" to offer new information and update existing content.

',8),s=[a];function r(d,l){return i(),o("div",null,s)}const h=e(t,[["render",r],["__file","index.html.vue"]]),m=JSON.parse('{"path":"/guide/","title":"The big picture","lang":"en-US","frontmatter":{"sidebarParentPostion":10},"headers":[{"level":2,"title":"Vision and mission","slug":"vision-and-mission","link":"#vision-and-mission","children":[]},{"level":2,"title":"Everyone included","slug":"everyone-included","link":"#everyone-included","children":[]}],"git":{"updatedTime":1668392731000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":4},{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":3},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":1}]},"filePathRelative":"guide/README.md"}');export{h as comp,m as data}; diff --git a/assets/index.html-BoUmPZh2.js b/assets/index.html-BoUmPZh2.js new file mode 100644 index 00000000..e93a6f69 --- /dev/null +++ b/assets/index.html-BoUmPZh2.js @@ -0,0 +1 @@ +import{_ as a,r as n,c as i,a as e,d as o,e as s,w as r,o as c}from"./app-Bwgh_xIT.js";const d={},l=e("h1",{id:"introduction",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#introduction"},[e("span",null,"Introduction")])],-1),u=e("p",null,[e("em",null,"In these next sections you'll find detailed instructions and examples of how-to scenarios in TaxonWorks, sometimes from the perspective of a specific projects needs.")],-1),m=e("p",null,"With this manual we break down TaxonWorks into sections by different pivot points. For example, once you've understood the basic interface of TW, you may want to focus on given areas of interest such as managing your source data or your images or creating a matrix or entering data as part of your digitization efforts.",-1),f=e("p",null,"Of course, you may also want to focus your work around a particular process instead such as filtering existing data to create a subset of records for download or for verification and editing.",-1),p=e("p",null,"What follows next are sections dedicated to how-to for specific major functions of TW and to processes available.",-1);function h(_,g){const t=n("RouteLink");return c(),i("div",null,[l,u,m,f,p,e("p",null,[o("Note in the "),s(t,{to:"/guide/community-resources.html"},{default:r(()=>[o("Community Documentation")]),_:1}),o(' section you can find examples of entire manuals written for a specific group managing their project data in TW as well as workflows and protocols for how they manage specific tasks in TW (aka "standard-operating-procedures").')])])}const w=a(d,[["render",h],["__file","index.html.vue"]]),y=JSON.parse('{"path":"/guide/Manual/","title":"Introduction","lang":"en-US","frontmatter":{"sidebarParentPosition":40,"sidebarPosition":10},"headers":[],"git":{"updatedTime":1660851576000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":4},{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"guide/Manual/README.md"}');export{w as comp,y as data}; diff --git a/assets/index.html-CJG0iPrK.js b/assets/index.html-CJG0iPrK.js new file mode 100644 index 00000000..1b42cb04 --- /dev/null +++ b/assets/index.html-CJG0iPrK.js @@ -0,0 +1 @@ +import{_ as e,c as a,o,b as r}from"./app-Bwgh_xIT.js";const s={},n=r('

El panorama general

¿Por qué enfatizar que el desarrollo de software en la ciencia es importante en términos generales? ¿Cómo se describen aquí los recursos disponibles para los desarrollares?

¿Cómo apoya TaxonWorks las contribuciones de los desarrolladores?

Un proyecto de la naturaleza de TaxonWorks necesita contribuciones de muchas personas para mantenerse en el tiempo. Para este fin, trabajamos arduamente en construir una base que permita y aliente a cualquier persona a contribuir con el proyecto. Los puntos detallados incluyen:

  • Todos los elementos del proyecto son de codigo abierto.
  • Existen ejemplos de meta-proyectos, por ejemplo taxonowrks_stats (demo) que ilustran como construir una aplicación a partir de la API.
  • TaxonWorks cuenta con generadores de codigo que le permiten crear una nueva tarea o un cargador por lotes en una sola linea.
  • TaxonWorks está construido en Rails. Las convenciones aqui actuan como un marco de las catacteristicas que pueden ser escritas en Ruby u otros framework de javascript como Vue.
  • TaxonWorks está sometido a pruebas unitarias. Esto significa que puede contribuir sin miedo a romper algo.
  • TaxonWorks utiliza Kubernetes para el despligue en producción.
  • El Species File Group y sus miembros han realizado hackatones y muchos talleres conjuntos. Pongase en contacto si está interesado en participar en estos. También están interesados en apoyar visitas a posibles desarrolladores, estudiantes. Tambien estan interesados en apoyar la visita de posibles desarrolladores, estudiantes o cualquier otra persona que desee obtener un bootcamp en el desarrollo de TaxonWorks
  • Las imagenes de Docker le permiten desarrollar a traves de la API utilizando un framework de JavaScript con una minina configuración.
',5),t=[n];function i(l,c){return o(),a("div",null,t)}const p=e(s,[["render",i],["__file","index.html.vue"]]),u=JSON.parse('{"path":"/es/develop/","title":"El panorama general","lang":"es-ES","frontmatter":{"sidebarPosition":10},"headers":[{"level":2,"title":"¿Cómo apoya TaxonWorks las contribuciones de los desarrolladores?","slug":"¿como-apoya-taxonworks-las-contribuciones-de-los-desarrolladores","link":"#¿como-apoya-taxonworks-las-contribuciones-de-los-desarrolladores","children":[]}],"git":{"updatedTime":1677462190000,"contributors":[{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":1},{"name":"jlpereira","email":"pepelui@outlook.com","commits":1}]},"filePathRelative":"es/develop/README.md"}');export{p as comp,u as data}; diff --git a/assets/index.html-CKgkt9my.js b/assets/index.html-CKgkt9my.js new file mode 100644 index 00000000..74cc4ba5 --- /dev/null +++ b/assets/index.html-CKgkt9my.js @@ -0,0 +1 @@ +import{_ as a,c as t,o as n,a as e}from"./app-Bwgh_xIT.js";const o={},r=e("h1",{id:"el-panorama-general",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#el-panorama-general"},[e("span",null,"El panorama general")])],-1),s=[r];function l(i,c){return n(),t("div",null,s)}const d=a(o,[["render",l],["__file","index.html.vue"]]),_=JSON.parse('{"path":"/es/guide/","title":"El panorama general","lang":"es-ES","frontmatter":{},"headers":[],"git":{"updatedTime":1636727588000,"contributors":[{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":1}]},"filePathRelative":"es/guide/README.md"}');export{d as comp,_ as data}; diff --git a/assets/index.html-CohxOsIQ.js b/assets/index.html-CohxOsIQ.js new file mode 100644 index 00000000..ed58232d --- /dev/null +++ b/assets/index.html-CohxOsIQ.js @@ -0,0 +1 @@ +import{_ as i,r as l,c as r,a as e,d as t,e as a,w as s,b as n,o as d}from"./app-Bwgh_xIT.js";const c={},h=n('

Overview

Addresses the questions: "What does the data-store in TaxonWorks look like, and what is the thought process behind its development? Who are the target audiences for these docs?"

To understand the data model used in TaxonWorks, in addition to the discussion below, there are series of linked resources here.

  1. Graphical entity-relationship ("ER") figures. We use er in the "modelling a domain sense", not particularly a 1:1 description of the links between model and database (though there are numerous times where this is the case). Algorithmically drawn, their purpose is to provide an overview of how data in TaxonWorks are modelled at a generalized level. To draw these figures certain constraints are used, this means that they are cleaner looking, and not cluttered, but also that they may not completely illustrate all pertinent entities or relationships as defined for that model. Follow the er links or see the Model section. Most nodes can be clicked to navigate onwards.
  2. A description of the database table for each model. Tables are named as seen in the headers. Many (but not all) related tables are linked in the column name. Follow the table links or see theTables section.
  3. A text description of each model/class. This is provided in the context of the code for that model on a separate website. That website is generated with each code commit, it includes the full documentation for the TaxonWorks code-base, so it is easy to get lost for the uninitiated. Follow the rdoc links from the respective tables and models. Using this site as a basis for exploring rdoc can keep you from getting lost therein.
  4. Direct links (api) to the resources behind the models as represented by TaxonWorks external facing API. For now see documentation at https://api.taxonworks.org. Some models do not yet have a corresponding resource. Some models properties and attributes are accessible by related API endpoints.

Audience

There are various target audiences for this information, some served more than others. TaxonWorks users may belong to more than one of these roles, they are not exclusive of one-another. With some small exceptions no one resource here fully meets the needs of these audiences, but with a little imagination they have a role. Those who might make use include:

',6),u=n("
  • Developers - The obvious target group. All resources (er, table, rdoc, api) are routinely referenced during development
  • TaxonWorks' scientists - TaxonWorks has many facets, browsing the er diagrams can illuminate data types that you might not have known existed, or give you a better understanding of how some of interfaces relate to one-another
  • Scientists migrating or evolving personal databases - Perhaps looking for how they might migrate their data into TaxonWorks, table documentation is a potential start for those who seek to migrate their data by scripts
  • Ontology curators - While not a true ontology, many of the models illustrated in the er must be represented in ontologies and all need to be abstracted if ontologies are to represent core needs of biodiversity informatics
  • Standards builders - Software and tools guide standards development, and vice-versa. Because standards take a long time to develop tools often "predict" what might need to be standardized. Tools may directly implement standards or serialize to them. All of the entities, and their attributes here, potentially contribute to the broader standards discussion.
  • High-level data modellers - E.g. those considering archival or indexing resources, er diagrams self-describe their domain, and can be used to get a quick over-view of the kinds of data that data-aggregators might need to integrate at a broader scale
  • Students - Students are perhaps first exposed to taxonomy via specimens in natural history collections, reading papers in print, and in their course work or textbooks. There is whole layer of data-science (biodiversity informatics) behind taxonomy, the illustrations and documentation here can act as a resource for learning about how we describe and classify the Earth's species.
  • ",7),p=e("strong",null,"Scientists",-1),m=e("a",{href:"https://api.taxonworks.org",target:"_blank",rel:"noopener noreferrer"},"API",-1),g=e("li",null,[e("strong",null,"Semantic web enthusiasts"),t(" - A challenge is to turn the generalized "),e("code",null,"er"),t(" models into RDF, for example how might we see TaxonWorks data in "),e("a",{href:"https://www.wikidata.org",target:"_blank",rel:"noopener noreferrer"},"Wikidata"),t("? This challenge shares many concerns with ontology builders. What are the universals? Properties? Classes?")],-1),f=e("figure",null,[e("object",{data:"/images/model/data/specimen_object_graph_eg1.svg",type:"image/svg+xml"}),e("figcaption",null,' An "object graph", exported from TaxonWorks for a collection object, illustrating a serialization of TaxonWorks that begins to approximate that required in RDF representations. Notice Identifiers (orange triangles), People, Names (pink squares) and Taxon Concepts (green hexagons) are all their own classes of data, among numerous other types. The figure layout was post-processed in Illustrator. ')],-1),b=e("h2",{id:"concepts",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#concepts"},[e("span",null,"Concepts")])],-1),_=e("p",null,[t("At its core TaxonWorks' data model is a handful of straightforward, yet broad "),e("code",null,"core"),t(" concepts (orange rounded ovals below):")],-1),v=e("code",null,"annotations",-1),w=e("code",null,"supporting",-1),y=e("code",null,"core",-1),k=e("figure",null,[e("object",{data:"/images/model/er.svg",type:"image/svg+xml"}),e("figcaption",null," Key data classes in TaxonWorks. 1) Nodes. Orange, rounded rectangles: 'core' data; light-blue rectangles: 'supporting' data; blue ovals: 'annotators'x. 2) Edges. Solid lines: key relationships; dashed lines: examples, i.e. not all relationships to the class being pointed at are shown. Arrows point to the many side of the relationship, for example one OTU has many Identifiers. Click to navigate to that class. ")],-1),x=e("h2",{id:"meta-model",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#meta-model"},[e("span",null,"Meta-model")])],-1),T=e("p",null,'TaxonWorks uses an "ontology-based, graph-aware, relational database" approach to representing and storing data. Practically, this means several things:',-1),D=e("li",null,[t("Each "),e("a",{href:"/develop/Data/tables.htm"},"data table"),t(' corresponds to a class of data. A record in that table asserts that an single instance of that class exists. This is the "Ontology" bit.')],-1),W=e("code",null,"TaxonName",-1),S=e("code",null,"TaxonName",-1),j=e("code",null,"taxon_names",-1),A=e("code",null,"BiologicalCollectionObject",-1),O=e("code",null,"Specimen",-1),C=e("code",null,"BiologicalCollectionObject",-1),q=e("code",null,"type",-1),z=e("code",null,"_type",-1),I=e("code",null,"_id",-1),P=e("code",null,"note_object_id",-1),F=e("code",null,"note_object_type",-1),E=e("p",null,"There are well known arguments as to when/how each aspect of this approach breaks down or fails in certain circumstances. Our approach is to try and balance the semantics of the data models with the understanding and needs of the scientists using them. Too much semantics and there is a disconnect between what they actually do and the model, too little and things like identifiers, citations, provenance and attribution are not supported.",-1),N=e("p",null,"In addition to the individual table-class approach there are several higher-level classes, used to carefully isolate the differences between users, the data they curator, and how those data are displayed and presented:",-1),R=e("ul",null,[e("li",null,[t("Data - The properties of things in TaxonWorks. When designing our data-store we strive to eliminate, or minimize all fields that describe how we display or see Data (see below). Data are further classified, more for the purposes of utility than meaning, into three categories: "),e("ul",null,[e("li",null,"Core - the basic categories most useful for describing life"),e("li",null,"Supporting - the data that link or extend core classes"),e("li",null,"Annotation - General classes of of data that can be applied to most core and supporting classes")])]),e("li",null,"Project - Describes Users, and Projects, i.e. manages who can curate what data."),e("li",null,"UI/Display/Layout - Tables that define how we display, visualize, or present Data.")],-1),U=e("p",null,[t('There are various constraints (in ontology-speak "universals") on TaxonWorks models/concepts. For example if you create a CollectionObject instance then we assume some very specific things are true '),e("em",null,"in addition to"),t(" the data you provide. Definitions, and assumptions are encapsulated in the model via code, in the ways we serialize data (e.g. DwC exports), and in the textual descriptions (viewable in "),e("code",null,"rdoc"),t('), this partitioning is not optimal, but perhaps reflect the reality of how things get built. These assumptions must be further formalized both for computers (e.g. in RDF serialization, or ontology representation) and for human understanding. That is, people will use tools however they can, not however they should, the best way to prevent this "drift" away from intent is education as to why it is important to "follow the rules".')],-1),B=e("h2",{id:"code",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#code"},[e("span",null,"Code")])],-1),M=e("code",null,"otus table",-1),L=e("code",null,"OTU model",-1),V=e("a",{href:"https://rdoc.taxonworks.org/Otu.html",target:"_blank",rel:"noopener noreferrer"},[e("code",null,"otu.rb file")],-1),G=e("a",{href:"https://rubyonrails.org/",target:"_blank",rel:"noopener noreferrer"},"Rails",-1),H=n('

    Database

    TaxonWorks uses PostgreSQL with PostGIS extensions. For an auto-generated schema in text format see db/schema.rb.

    ',2);function J(K,Q){const o=l("RouteLink");return d(),r("div",null,[h,e("ul",null,[u,e("li",null,[p,t(" - In addition to all the science being done, scientists are constantly being asked to do more, differently. How should I organize my data? How might I integrate the diversity of my research program? I'm told to get out of Excel, how might that look? They want "),a(o,{to:"/develop/Data/models.html#identifier"},{default:s(()=>[t("Identifiers")]),_:1}),t(" for "),a(o,{to:"/develop/Data/models.html#person"},{default:s(()=>[t("People")]),_:1}),t("? A majority of the data types represented here are accessible via an externally-facing "),m,t(" well suited for all the data/information science running in parallel to the observation capture going on in labs, the field, and throughout the scientific process.")]),g]),f,b,_,e("ul",null,[e("li",null,[a(o,{to:"/develop/Data/models.html#taxon-name"},{default:s(()=>[t("Taxon names")]),_:1}),t(" - about nomenclature")]),e("li",null,[a(o,{to:"/develop/Data/models.html#collection-object"},{default:s(()=>[t("Collection objects")]),_:1}),t(" - about specimens")]),e("li",null,[a(o,{to:"/develop/Data/models.html#collecting-event"},{default:s(()=>[t("Collecting events")]),_:1}),t(" - who, where, when, and how some thing was collected")]),e("li",null,[a(o,{to:"/develop/Data/models.html#otu"},{default:s(()=>[t("OTUs")]),_:1}),t(" - like species or taxon concepts, but even broader, a place to link all the bits that aren't nomenclature, a useful biological unit permitting meaningful work")]),e("li",null,[a(o,{to:"/develop/Data/models.html#observation"},{default:s(()=>[t("Observations")]),_:1}),t(" - data about CollectionObjects or OTUs, e.g. characters or measurements")]),e("li",null,[a(o,{to:"/develop/Data/models.html#descriptor"},{default:s(()=>[t("Descriptors")]),_:1}),t(" - classes of Observations, like quantitative, qualitative, or statistical")]),e("li",null,[a(o,{to:"/develop/Data/models.html#asserted-distribution"},{default:s(()=>[t("Asserted distributions")]),_:1}),t(" - the low-resolution distribution of OTUs according to the literature")]),e("li",null,[a(o,{to:"/develop/Data/models.html#biological-association"},{default:s(()=>[t("Biological associations")]),_:1}),t(" - biological relationships, like host-parasite")]),e("li",null,[a(o,{to:"/develop/Data/models.html#sequence"},{default:s(()=>[t("Sequence")]),_:1}),t(" - curated chunks of the genome")]),e("li",null,[a(o,{to:"/develop/Data/models.html#source"},{default:s(()=>[t("Source")]),_:1}),t(" - a reference")])]),e("p",null,[t("The other types of data are loosely classified as "),v,t(" (blue ovals) and "),w,t(" (light-blue rectangles). Annotations can be thought of as ways to customize the data-model. Supporting data are the bits of information that link to and across "),y,t(" classes, for example a "),a(o,{to:"/develop/Data/models.html#citation"},{default:s(()=>[t("Citation")]),_:1}),t(" links a "),a(o,{to:"/develop/Data/models.html#source"},{default:s(()=>[t("Source")]),_:1}),t(' to nearly anything. This organization, core, supporting, annotation, is echoed in the UI by clicking the "Data" tab in the hub.')]),k,x,T,e("ul",null,[D,e("li",null,[t("In various cases data are organized into graph patterns (network-based, i.e. nodes, edges, and their attributes) amenable to down-stream migration into graph databases (e.g."),a(o,{to:"/develop/Data/models.html#taxon-name"},{default:s(()=>[W]),_:1}),t(" and "),a(o,{to:"/develop/Data/models.html#biological-association"},{default:s(()=>[t("Biological associations")]),_:1}),t(") or serialization into formats like RDF.")]),e("li",null,[t("Tables are named exactly as the class is named, in a pluralized format, for example the class "),a(o,{to:"/develop/Data/models.html#taxon-name"},{default:s(()=>[S]),_:1}),t(" is stored in table "),a(o,{to:"/develop/Data/develop/Data/tables.html#taxon-names"},{default:s(()=>[j]),_:1}),t(").")]),e("li",null,[t("Some classes of data have subclasses (e.g. "),A,t(" is a subclass of "),a(o,{to:"/develop/Data/models.html#collection-object"},{default:s(()=>[t("CollectionObject")]),_:1}),t(" and "),O,t(" is a subclass of "),C,t(". Each subclass adds assertions as to what the thing being represented is. Subclass assertions are stored in the field "),q,t(" (e.g. "),a(o,{to:"/develop/Data/develop/Data/tables.html#collection-objects"},{default:s(()=>[t("CollectionObject")]),_:1}),t(".")]),e("li",null,[t('Some classes of data are "polymorphic", particularly annotators (see below). This means that one table references many other tables by a combination of '),z,t(" and "),I,t(". For example see the fields "),P,t(" and "),F,t(" in "),a(o,{to:"/develop/Data/develop/Data/tables.html#notes"},{default:s(()=>[t("Notes")]),_:1}),t(".")])]),E,N,R,e("p",null,[t("When customizing or adapting TaxonWorks to your needs, maintaining this separate of concerns will facilitate the long term integrity of your data. For example, you can create custom attributes for Data classes via "),a(o,{to:"/develop/Data/models.html#data-attribute"},{default:s(()=>[t("DataAttributes")]),_:1}),t(', these attributes should describe the things they are tied to, not just what "I want to see on some page".')]),U,B,e("p",null,[t("As noted the database model is mirrored almost exactly in code, for example the "),a(o,{to:"/develop/Data/develop/Data/tables.html#otus"},{default:s(()=>[M]),_:1}),t(" is represented by an "),a(o,{to:"/develop/Data/models.html#otu"},{default:s(()=>[L]),_:1}),t(" in a "),V,t(". This is broadly a convention from "),G,t(", the back-end software used by TaxonWorks.")]),H])}const Y=i(c,[["render",J],["__file","index.html.vue"]]),Z=JSON.parse('{"path":"/develop/Data/","title":"Overview","lang":"en-US","frontmatter":{"sidebarParentPosition":100,"acknowledgments":"Lars Vogt provided many useful insights as to how to frame this page."},"headers":[{"level":2,"title":"Audience","slug":"audience","link":"#audience","children":[]},{"level":2,"title":"Concepts","slug":"concepts","link":"#concepts","children":[]},{"level":2,"title":"Meta-model","slug":"meta-model","link":"#meta-model","children":[]},{"level":2,"title":"Code","slug":"code","link":"#code","children":[]},{"level":2,"title":"Database","slug":"database","link":"#database","children":[]}],"git":{"updatedTime":1668380273000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"develop/Data/README.md"}');export{Y as comp,Z as data}; diff --git a/assets/index.html-DAxUMUpM.js b/assets/index.html-DAxUMUpM.js new file mode 100644 index 00000000..bdc3d6ea --- /dev/null +++ b/assets/index.html-DAxUMUpM.js @@ -0,0 +1 @@ +import{_ as n,r,c,a as e,d as o,e as a,w as s,b as t,o as d}from"./app-Bwgh_xIT.js";const l={},h=t('

    About Sources in TW

    Discover the Source (e.g. publications) management features of TaxonWorks here. For example, sources are shared across projects, a cool and unique time-saving community feature of TW.

    Credit: much of the following information derived from a manual tailored for and written by the Universal Chalcidoidea Database (UCD@TW) Project community.

    The Source Hub

    In TaxonWorks, sources include the literature database, citations, and other related content that is fed directly into the database. The easiest way to access sources is through the Source hub task. This is a unifying task that combines several commonly used tasks associated with sources. As a curator, researcher, data manager, student, or technician you may primarily be working from sources that are published papers. Source data can be entered one record at-a-time field-by-field, or using BibTeX or CrossRef DOIs. From most reference manager software, one can export source information in the BibTex format and edit as needed in any regular text editor. This can be used for uploading source data into TW. With this wiki, you can learn more about BibTex.

    Legend: Source hub user interface sections: select, filter, recent sources, add new source, and batch load.

    Source hub task features

    Select a Source

    The TW Select a source option offers a smart selector so you only need to enter as many letters needed to uniquely identify a source. For example, the search string 'wool dal sig' brings up Woolley and Dal Molin (2017). If a source is found it will show beneath the search box.

    • Type information in Select a source to see if a source is in the database. In this example, search string is 'Woolley, J. B.'
    • If you click on a result in the popup beneath the search box, it will take you to a page showing that source.
    Legend: Source hub search result
    • With Filter sources you can apply different search criteria to locate sources of interest.
      • Use this feature to identify sources you want to work on.
    • My recent sources shows a list of sources that you have entered recently.
    • New Source takes you to a screen that enables you to add new sources using various methods.
    • Note the Batch upload option here via BibTeX formatted source data.

    Next we delve into the details of various work you may need or want to do with source information (e.g. adding sources, editing, tagging, and filtering). The source content needing to be captured includes such data as new taxon names, people strings or names, distribution information, type information, and biological associations. For efficient source data extraction and entry, we recommend familiarity with the following TW Tasks and Data Cards.

    FUTURE LINK TO INFORMATION about each of these items

    TasksData Cards
    Browse nomenclatureTaxon names
    Browse OTUsBiological Associations
    Source hubSources
    Filter sourcesManage Controlled Vocabulary Terms
    New taxon name
    New type specimen
    New combination
    Uniquify People

    Source Show

    Once you find the publication of your choice using the Source Hub, clicking on it opens the Show page. Here you will find various ways to navigate to related information and a path to Edit this source record. Next we describe some of the features and functions found in the Source show.

    Note the green Pinboard icon at the upper right. Clicking this adds the source to your Pinboard for quick access.

    The Radial Annotator is a very common function used throughout TW. It provides convenient access in one place to a variety of relevant functions. For example, clicking on the Radial Annotator for a givenSource might look like this:

    Legend: The Radial Annotator functions
    • Documentation is where you can drop a pdf of the source, or supplementary files.
    • Tags allow you to mark sources for later with tags such as Source Unprocessed, or Source Processed for Nomenclature. Instructions on creating and editing Tags are included below.
    • Notes is a free text field for any information you might want to add.
    • Identifiers provides a place to store one-to-many identifiers for a given object. For example, a paper might have a globally unique digital object identifier, aka DOI, but also an author-assigned identifier.
    • Data attributes in TW gives you a place to store your unique data that may not fit in any typical TW field currently in the data model.

    Try Editing a Source

    ',24),u=e("img",{align:"right",width:"200",title:"Edit a source",hspace:"10",src:"https://sfg.taxonworks.org/s/vrbjbz"},null,-1),p=t('
    • From the Source Hub search to a publication you choose
    • Click Edit to open the task to make corrections or put text in title in italics, for example.

    Note that italics are indicated in BibTex format as follows <i> text </i>. Everything in between the special symbols will display or print in italics. There are tools in TW to do this for you by selecting text and hitting a button.

    • Be sure to click the Save button to keep any changes.

    HINT: In Edit, you see New source but you started by clicking the Edit option from an existing source. Rest assured this New source window does not mean duplication of the source.

    Adding a Source

    About adding Sources, options offered here include the option to re-order fields and ways to auto-fill the Source information using a CrossRef DOI or using BibTeX you may generate from Zotero or EndNote. This section features commonly used fields. See the scenarios section to find related activities that fit your workflows.

    • First, using the Source hub always check to be sure the source is not already in TW. If it isn’t found in the search box in the Source Hub, '—None—' will appear below it. With TW "smart" searches you need only provide enough minimal text to find the source (e.g. misspellings may cause you to miss a source).
    • Clicking New Source in the Source Hub brings up this screen.
    New Source user interface options. Note you may reorder the fields as you see fit using the Sortable fields box in the upper right.
    • The yellow triangle means you have made changes that have not been saved.
    • Be sure to Save before you leave this screen, or changes will be lost.
    • If you have the DOI for a new source, this button provides access to the CrossRef database of DOIs. If it works (it usually does), most of the fields you need will be filled in. Be sure to check them, as they are not always correct.
    • If you have the reference in BibTex format (most reference databases will output this), you can input it here.
      • From Zotero, simply select the reference, right-click on it, select "export item" and save the file as BibTeX.
      • From EndNote, select the reference and fill out the "label" field. Then go to File > export and select "text file", "BibTeX export". Most people don’t fill out the "label" field in their EndNote database, but if you don’t, you will have to add the label manually by editing the exported text file (that is the field highlighted in the example below).
      • In the New Source Form, Choose the blue BibTex box at the top of the screen, and paste in the exported *.txt file. (No drag and drop here).

    Most of the fields may be self-explanatory. Here we note a few tricks, for instance:

    • Entering an author name in this box (5) Authors tries to pull it up from the table of known authors. If it isn’t found, you can use the Add New button that appears in this case. This is an advantage in some situations over entering authors as verbatim text (in the Verbatim from BibTex field lower in the screen), because you can easily pull them up later, for example, when adding author names to new species.

    • Similarly, below the Author section is a search box for Serials (journals). If the journal is not found, look for the New button to the right of the Serial screen. This opens a screen for you to add a serial to the serials table.

    • Once you have created the new source, you should go to Documentation in the blue Radial annotator to the right of the Source and upload the PDF file if available.

    • (Optional) Use the TW Tag feature to group and track which papers need data parsing or do not.

      • To do this go to the Tags choice in the Radial annotator
      • Tag the source as desired (e.g. Unprocessed)
      • And add other suitable tags such as No Nomenclatural Acts or Nomenclatural Acts as appropriate (this is specific for the UCD project, other projects may use different tags).
    • If a source has a title in a language other than English, and you wish to enter the English translation (or translation in any other language), follow these steps:

      • Enter the source with the title as given in the paper and create it.
      • Click on the blue Radial BibTex annotator to the right of the source at the top of the page, and click on the pie slice for Alternate Values.
      • Choose title from the pick-list, the language for the translated title, and paste the translation in the Value field.
      • Be sure to Save it (green button) if this is a new source. Then the original title and translation will both be rendered.

      As all fields are present on the data entry screen for all types of sources, it can be a bit confusing, particularly for books and chapters in books. The article type for a chapter in a book is "Inbook", and the book title would go into the Booktitle field. For books, there are fields for Editors, Series (if needed), Booktitle, Publisher, and Address (usually city or city and country). The type of a technical report is techreport.

    PDFs for Sources

    Using the UCD@TW Project as an example, note that most screens that pull up lists of sources in TW have a convenient PDF icon that either opens the source in the PDF viewer (where you can download it), or enables you to download it directly to your browser. For example, if you pull up a source using the Source hub, you will get a screen like this -- the so-called Show page. The pdf icon will open the source in your browser.

    Legend: Source has PDF

    You can also check to see whether a pdf has been associated with a source using the Radial Annotator associated with that source.

    • Click the Documentation wedge in the Radial Annotator to get the screen below.
    • If a pdf for the source is not present, drag and drop it into the box as shown.
    • If a pdf is associated with the source, you can click the icon indicated by the red arrow to download to your browser.
    Legend: Does Source have a PDF?

    Tags on Sources

    Tags in TW provide a unique way to group documents (or other objects in TW) in any way that you choose. With the keywords that you put into a tag, you and colleagues can find the relevant materials needing work or find groups where work is complete and may need vetting.

    UCD@TW Project Tag Example

    Because UCD@TW is a community-curated database, they added keyword tags for sources that allow them to better organize and coordinate group work. These are the tags currently associated with their sources. Tags can be added or removed from a source in the Radial Annotator. Most of these tags should be self-explanatory.

    ',21),g=e("img",{align:"right",width:"300",title:"Source Processing Tags for UCD",hspace:"10",src:"https://sfg.taxonworks.org/s/2cldsu"},null,-1),f=t('
    • HINT: Keywords are the words you put in a Tag.
    • If certain that a source is an early view document, that is, not yet published, they add this tag as any nomenclatural acts in the source are not yet valid.
    • If the source is new to TW, for now, they use the tag Source unprocessed, as this allows other curators and helpers to pull up sources that need to be curated.
    • And to anyone starting work to curate a paper, they apply the tag Source being processed so that other community members will not try to work on it simultaneously.

    HINT: Using the Browse Annotations task you can find out who has claimed sources (or assigned various tags).

    Creating or Editing Tags

    Using the Manage Controlled Vocabulary task (shown below), you can create custom tags with the keywords of your choice. In this task, you will need to decide the keywords to use, enter them, and define what they mean.

    Legend: Find Manage Controlled Vocabulary task
    Legend: Create and Edit Tags
    • To create a new tag use the Name, Definition, and Label color fields on the left of the screen.
    • Note that the definition field must have at least 20 characters before the Create button is clickable.
    • Note that if you want to use the same color for multiple tags, you can use the eyedropper tool in the Label color window.
    • To Edit an existing tag, use the green icon associated with the Tag.

    Sources With Versions or Translated Titles

    Some sources exist in more than one version, either with translated titles or in entirely translated versions. To add a translated title, use the radial annotator, under Alternate values, and add the information under title to add the English version, such as in the case below:

    ',9),m=e("p",null,[o("Example Paper With Title in German and English "),e("img",{width:"600",title:"Source Title Versions",hspace:"10",src:"https://sfg.taxonworks.org/s/8vsf1w"})],-1),b=t('

    Note, there are at least two reasons why you might have more than one version of source:

    1. Someone has done a translation of a paper, but it has not been published separately. In this case, simpy add the translated pdf as a second document to the source (see Documentation option in Radial Annotator).
    2. The translation has been published separately from the original source. A common example is Entomological Review, which is a parallel version of Entomologicheskoe Obozrenie published in English. In this case, the page numbers are likely to be different in the two journals. You should enter this as a separate source from the original paper in Russian. A search on the author and date will bring up both sources.

    Filtering Sources

    TW employs a powerful utility to search for particular sources, the Filter Source task. Among the search fields, which can be used in any combination, are the following:

    • Keywords: search text or title. These are verbatim text search fields that will scan the title or other text fields for keywords, such as taxon names. However, if the name is not in the title, it may not get picked up.
    • Authors: self explanatory. Search for authors verbatim or for authors in the Authors data table.
    • Date: you can provide starting and ending years for the search.
    • Tags: If a source has been tagged, you can search for the tag(s) here.
      • You can batch tag sources using the method described below.
      • (UCD@TW specific note: However, this will apply mostly to literature that has been added since the transfer of sources from UCD@NHM to UCD@TW).
    • Topics: This is one of the potentially most powerful uses of this utility. All of the tags to citations from UCD@NHM (the original UCD in London) should have been carried over to UCD@TW on import. Thus, UCD@TW folks can search for papers containing host information, keys to species, redescriptions, or any of the topics in the Topics list. Note that if you have Topics in your pinboard, they will appear here if you select Pinboard. Or you can Search for a topic or pull up the entire list of topics using All.

    Once you have created a list of sources, you can do the following:

    • Select All (button is at top left) or Select Individual Sources.
    • Tag: once you have selected sources you can tag them using whatever tag or tags are in your pinboard by hitting the green Tag button. If there is more than one tag indicated as the default in your pinboard, both will be added. Note that if you create a new tag (explained above) this automatically becomes the default tag in your pinboard.
      • HINT: This is a powerful way to create groups of sources for particular projects.
    • Download CSV: this creates and downloads to your browser a comma-delimited data file.
    • Download formatted: here you have the option to choose a format style (e.g. Zootaxa) and create a formatted bibliography.
    • If a pdf is associated with the source, you can capture it using the pdf icon.

    Importing Sources

    Add a Source, one at a time

    ',9),y=e("code",null,"New Source",-1),w=t('

    Source Batch Upload

    Using the Batch Upload section of the Sources Data tab (i.e. not the task tab) from the project home screen, you can upload a list of BibTex-formatted references all at once. batch_load

    From this screen, you can upload a Bibtex formatted TXT file that will allow for import of your references. Use this to load bibliographies exported from tools like EndNote, or Zotero. An example file is available here. Your Bibtex file must meet the following conditions:

    • The file to import should be in UTF-8 encoding.
    • The file should have unix style line-endings.
    • All entries should include a populated 'Label' field containing a unique internal identifier for the record. Endnote does not provide this by default, Zotero does. label_field

    Year fields should not include periods ('.'). Try using a BibTeX bibliography "linter" or validating tool (for example) on the web to find errors in your file.

    Once you upload, you will see a preview list of your sources, highlighted in green, brown, and red. Green references will be imported, brown ones will be imported but have some soft validation that should be cehcked or fixed before upload, and red ones will not be imported. references_red_green

    Once you've ironed out any problems, you need to re-upload your data using the Choose File button. image

    Click the Create Button to upload your sources. Once the upload finishes, you should get a screen like this:

    image

    You can click the edit buttons or search for them in the Filter Sources task.

    Exporting Sources

    In TaxonWorks, several options exist to download a source list in the desired format (e. g. comma separated (aka CSV), BibTeX, a custom style of your choosing). Using the Filter sources task, you limit your sources to the desired subset and then choose your download format.

    Use Filter sources to download selected sources

    Using Filter sources to select sources to export
    • Navigate to the Filter sources task.
    • Use the options in the left side column to limit (aka filter) your results to the desired subset
      • E. g. In the screenshot above, we used the Title filter option with the string Cecidomyiidae.
    • Click on Filter at the top left of the window. The result (in this example) returns 1640 records.
    • Next, you will decide to download one of the following:
      • all 1640 records
      • a selected subset of the records shown on the first page (default limit is 50 records)
      • all records on the page
    • Select your set to export.
      • To select a few sources shown on the page, check the boxes next to each desired source.
      • To export all sources on this specific page, you can check just the single box in the header row at the top of the list.
      • To export all 1640 sources, you need to change the number of records shown on the page, to a number larger than your subset. See the drop-down option in the header menu for records per page.
        • Maximum number supported is 2500. If your set is larger than that, you'll need to do this using more than one download. Example, you might add a year range to subset your records.
    • Use the download options picklist (in the header menu) to select: CSV, BibTeX, Download formatted to get these sources exported in the format you need.
    • If you select CSV from the drop-down options, then click the down arrow next to the drop-down box, you get a CSV file downloaded right away.
    • If you select BibTeX or Download formatted you will see a preview window to review if they look as expected. If all is well, click on the Generate download option.
    Click the Generate download button to get the BibTeX file
    Click the Generate download button to get the Custom formatted file

    Source Scenarios (aka How-To)

    When getting data from publication sources into TW, many "how-to" questions may arise. Please see next the following common situations and how to proceed for each. Each of these examples offer you an opportunity to try it yourself in your sandbox account.

    Find uncurated unparsed papers

    ',20),x=e("em",null,"Say you want to find new sources (papers) that have not yet been curated.",-1),T=e("code",null,"Filter Sources",-1),k=e("em",null,"tagging",-1),v=e("code",null,"Encyrtidae",-1),S=e("code",null,"Search Text and Title",-1),C=e("code",null,"Source unprocessed",-1),U=t('
    Tags can help you organize and find specific data

    The tag box allows you to create collections of sources, for example, to download as *.CSV files for your own spreadsheet or database.

    The PDF icon opens the source in the source viewer, from which it can be downloaded. If no PDF is associated with the source, the PDF icon will not show. You will need to find a pdf for the source outside of TW, and add it using the Radial Annotator, as shown above.

    Note that there is a red button to remove from project. This is because references are SHARED across projects in TaxonWorks, that is, if someone outside UCD already created this source record, you should be able to simply add it. Note that reference data for sources are shared, but not PDFs.

    The blue buttons to the right are the BibTex Annotator for sources, described above, and the Navigate Radial (looks like a compass arrow), which brings up various functions, including an edit slice which takes you to the source editor.

    Document information from a newly published source

    When a new source (paper/book/etc.) is published and you want to document the information it contains, note the following steps.

    (Historically, this workflow is described in-depth as an exercise in the former documentation repository in "basic_article_parsing.md" which you can find in Other Documents from the left sidebar).

    1. Go to the Source Hub task card, search the sources in TW to see if it exists.
    2. If it doesn’t then create it, preferably using CrossRef function (blue icon at top of New Source Screen) as described above. We recommend using CrossRef because it imports more metadata (BibTeX e.g. from Google Scholar keeps fields to a bare minimum).
    3. If it is in the database but has not been processed, this will be indicated in the Radial Annotator under tags. Always be careful since automatically imported articles, even if they are recent, may have wrong data. For example, the year informed by the web site may not match the year of publication (usually explicitly stated in the PDF file).
    4. Also, see immediately above for instructions on using the Filter Sources task.

    Add more species information

    To add additional information about the species from the publication, first navigate to the OTU corresponding to the new taxon name. From the Browse nomenclature page for the taxon, you can hit the Browse OTU icon at the top of the page. This takes you to the OTU that is associated with the taxon:

    Alternatively, you can use the Browse OTU task to find the OTU. TW may bring up more than one choice:

    Browse OTUs and find the subsequent combinations

    In this case the OTU name with the check mark refers to the protonym (name as originally published. The OTU name followed by (c) refers to a subsequent combination``. It is best to choose the subsequent combination`` as this will ensure that the data is tracked correctly.

    (UCD-specific note: in this case, there is a third choice, which looks like a ghost, that is, a name that was created as a string when host or distribution records were imported from the original UCD@NHM. You should ignore ghosts. UCD@TW are working on eliminating them).

    The most common tasks at this point will be to capture Citations, Asserted Distributions, and Biological Associations.

    • Citations. These provide a way to capture any information that is in the publication (e.g. whether it includes a diagnosis, whether the taxon is figured, information on hosts or distribution, etc.), and page numbers on which the information is found. Citing the exact page numbers will help subsequent users quickly find this information in long publications treating many species.
    • To enter this information, hit the Radial Annotator at top of screen
    • Choose Citations, enter the source (it should still be pinned)
    • Enter the exact page numbers on which the information is found in the publication
    • Click Create
    • Click the blue All button for a list of currently used topics. Select the ones that are relevant
    • Scroll to the bottom of the screen, and click the green Create button.
    • When you close this screen (x at upper right) you should return to the OTU (Browse Taxa) page. If you refresh this in your browser, you should see the citation you have created in the upper right.

    HINT: Topics are unique to each project. For the UCD project, having created a lot of topics now, they suggest creating a new topic only if absolutely necessary.

    For those working on other projects, you can use the Manage Controlled Vocabulary Terms card in the Tasks portfolio to create and define new topics. Here, the Keyword tab at the top refers to Tags, discussed above, and the Topic tab refers to Topics.

    Asserted Distributions

    • Click the blue Quick Forms icon at top right, and follow the instructions to pick geographic areas from which the taxon is reported. This is the place to capture information from a Distribution section of the publication.
    • Enter the source which should still be pinned, and the exact page numbers on which the distribution information is given.
      • Is Original means this is the first time that this distribution has been published.
      • Is absent presumably means that the publication states that the taxon is not present in the designated area, but UCD notes they are not sure when to use this.
    • Next, enter the most restrictive geographic area present in the TW database, which in most cases will be a state or a province.

    HINT: If the paper contains many new asserted distributions, it is more efficient to record these using the New Asserted Distribution task. Here you can lock in the source and each OTU, and enter the geographic areas one by one, without having to repeat the other information. In this example, we have locked the source and OTU (orange boxes), and we can enter geographic areas one by one. The task contains other tools (not shown below) that enable you to clone combinations of the Source/OTU, Source/Geographic area, or OTU/Geographic area.

    New Asserted Distribution Task showing how to lock fields for re-use

    Next, update the tags (if necessary) to track progress. UCD Example, once you have entered the distribution data from the source, if you are not at this time going to enter other information such as biological associations, add the Source processed – Distribution tag to the source.

    • Biological Associations. These are also accessed from the blue Quick forms icon . The form is shown below. Examples presented here are UCD-based. You may have to enter more information as host data may or maynot already be in your instance of TW.

    [INSERT SCREENSHOT HERE]

    • Selecting All (1) will bring up a list of all Biological Association in the project (2).

    (UCD-specific note: In general for chalcidoids, you will want to capture the Primary (animal) host or Plant host, Plant Associate in the case of parasitoids, or Parasitoid host in the case of hyperparasitoids).

    • Pick the relevant blue tab and then hit the blue Search button (4) to find the host or associate name in the TW database. In most (UCD) cases, this will be a plant or animal name, so select OTU (3).
      • Search for the taxon name in the database (this brings up a select OTU search box). The UCD database is extensive, and usually the host will already be there, either as a Taxon Name or as an OTU. If TW finds either of these, it will bring them up for you to choose.
      • If neither are found, TW will ask you if you want to "customize an OTU with that name". Say yes, and cut and paste the OTU name in the OTU box that comes up. Leave the Taxon Name box below the OTU box blank. IF YOU DO THIS, BE SURE YOU ARE SPELLING THE NAME CORRECTLY! For this reason it is best to cut and paste whenever possible. There is probably no reason to enter the author name of the OTU, but it doesn’t hurt anything.
    • Once you have entered the host or associate OTU, enter the Citation (source) (5) and page number(s) on which the information is located.
    • As above the Is original box (6) means that this biological association has not been published previously. So check this box if this is new information not published before.
    • Use the Browse OTUs page for the taxon (accessed with the Browse OTUs card) to see all previous biological associations recorded in TW for that entity.

    At this time, there is no Biological Associations task comparable to the Asserted Distributions task (this has been requested of the development team).

    • IF you are entering several new Biological Associations from a paper, you can lock the citation for the source by hitting the little lock icon next to the pinboard icon in the Citation box.
    • [INSERT SCREEN SHOT for above]

    Since most new species will be compared with other existing species, you will want to capture this information also. This is treated as another Biological Association, since any comparison will involve another OTU.

    • Repeat the process for hosts, but choose Compared With (instead of associate) and follow the procedure above.

    After completing these tasks, close the form and return to the OTU page for the taxon. If you refresh your browser, all the new information should be displayed.

    [INSERT SCREEN SHOT of OTU for a taxon showing biological associations]

    Remember to make good use of the tags for tracking progress.

    • If you have entered data for the biological associations reported in a paper, but are not planning to enter other data such as geographic distributions at this time, add the Source processed – Biological Information to the source.
    • If you have entered all nomenclatural acts in the paper, all relevant topics associated with the citation, all distribution information and all biological information, remove any tags associated with processing and add the tag Source processed – Complete to the source. Congratulations, you have successfully and completely curated this publication!

    Enter information on an existing taxon

    Before you do this, we recommend you add the Browse Taxa and Browse Nomenclature cards to your favorites for easy quick access.

    • Check to ensure the publication source you are working with is on your Pinboard and selected as the default.
    • Navigate to the taxon (OTU) using the Browse Taxa card in tasks
    • Once you have found the correct taxon, proceed exactly as instructed above for a new taxon.

    HINT: There is at least one important caveat. If you are capturing information for a species that is currently used in a different combination from the genus in which it was originally described, you may get two OTUs for the species name when you search for it in Browse taxa.

    • one will be the OTU attached to the original protonym (indicated by a check mark next to the name)
    • one will be the OTU attached to the combination (indicated by a c next to the name).
    • Use the OTU attached to the combination, at least for now. This is an area of the database that is still being worked on, but this should facilitate downstream display of the new information.

    Adding images to TW

    Images can be attached to various entities in TW, such as Collection objects (specimens) including types, OTUs (concepts of taxa), Collecting events, etc. If you put images in TW that are not your own property or are in the public domain, you should be sensitive to copyright issues. TW will accept images in PNG, TIFF, or JPEG formats. The following are probably the most common cases in which you might wish to upload images.

    Adding Type specimen images

    • Navigate to the Collection object form for the type using the New type specimen task, or go to the Type screen (either Quick or Comprehensive) in the Edit taxon name form.
    • If the type has not already been recorded (which will be the case for many old names), you will need to create it first. Drag and drop the image into the Depiction field (it contains the text Drop images here to add figures), in either the quick or comprehensive type screen.
      • Of course, if you do this, you need to be sure that the images are actually of the types! Note that you can add images to holotypes, allotypes, and all of the other types possible in the Type screen.
      • Note also that if you click in the box surrounded by a dashed line, TW will open a dialog box representing the folders on your computer where you can browse for the images.

    If the image is something other than the type specimen itself, such as labels of a type specimen label or a copy of notes on the type, then:

    • Navigate to the Expanded Edit Radial navigator to the upper right of the Depiction field,
    • Choose Depiction and check Is data depiction.
    • If you are pulling the image from a publication, find Citation in the Radial annotator below the image and give the source and page number.

    Images depicting taxa go with OTUs

    Images illustrating taxa should be attached to OTUs.

    • Use the Browse taxa task to find the OTU.
    • Note the Radial Annotator to the right of the name at the top left of the field has a Depiction slice, which you can click on and then use to add the image.
    • Once the image has loaded, you can use the green Edit button to add a figure name and a caption.
    • If you are pulling the image from a published source, be sure to enter the source and page number, using the Citations slice in the Radial annotator to the right of the image.
    • To delete an image, click the red trash icon to the right of it.

    To enter the copyright status for an image, find the Attribution slice in the Radial annotator associated with it (it also has a copyright symbol in it). Here you will find a menu with different copyright options, the year of copyright, and various other places to enter the Creator, Owner, Editor, and Copyright holder for the image.

    Associated with each image are a Label field and a Caption field. We recommend using the Caption field only to record information associated with the image, such as "Fig. 2, male head, frontal view". The Label field is intended for use primarily when using TW to create output such as species pages or publications.

    It is also possible to batch process images using the New Image task, which may be more efficient if you are uploading many images from the same publication. You can drag and drop batches of images, and then assign the author/creator, source (publication), copyright information and so forth for all of them at once. If you plan to attach the images to an OTU or Collection Object (including type specimens) upload only the relevant images in each batch. Then you can use the Depict Some screen to assign them.

    ',55);function I(D,N){const i=r("RouteLink");return d(),c("div",null,[h,u,p,g,f,m,b,e("p",null,[o("As described above, sources can be uploaded in different ways, one-at-a-time, or in batch using BibTeX format, searching CrossRef or using a URL that pulls in source data using CrossRef DOIs. With the "),y,o(" task, you have all these options in one task. See above section "),a(i,{to:"/guide/Manual/Sources/#adding-a-source"},{default:s(()=>[o("Adding a Source")]),_:1})]),w,e("p",null,[x,o(" The easiest way to do this is to use the "),T,o(" task. This specific example uses the "),a(i,{to:"/guide/Manual/Sources/#ucd-tw-project-tag-example"},{default:s(()=>[k,o(" method chosen by the UCD@TW Project")]),_:1}),o(". In this example, if you enter the family "),v,o(" name string in both "),S,o(", and choose "),C,o(" tag in the Tags filter option, you will generate a list of currently uncurated papers for that family:")]),U])}const O=n(l,[["render",I],["__file","index.html.vue"]]),E=JSON.parse('{"path":"/guide/Manual/Sources/","title":"About Sources in TW","lang":"en-US","frontmatter":{"sidebarParentPosition":40},"headers":[{"level":2,"title":"The Source Hub","slug":"the-source-hub","link":"#the-source-hub","children":[{"level":3,"title":"Source hub task features","slug":"source-hub-task-features","link":"#source-hub-task-features","children":[{"level":4,"title":"Select a Source","slug":"select-a-source","link":"#select-a-source","children":[]}]}]},{"level":2,"title":"Related Source Tasks","slug":"related-source-tasks","link":"#related-source-tasks","children":[]},{"level":2,"title":"Source Show","slug":"source-show","link":"#source-show","children":[{"level":3,"title":"Try Editing a Source","slug":"try-editing-a-source","link":"#try-editing-a-source","children":[]}]},{"level":2,"title":"Adding a Source","slug":"adding-a-source","link":"#adding-a-source","children":[]},{"level":2,"title":"PDFs for Sources","slug":"pdfs-for-sources","link":"#pdfs-for-sources","children":[]},{"level":2,"title":"Tags on Sources","slug":"tags-on-sources","link":"#tags-on-sources","children":[{"level":3,"title":"UCD@TW Project Tag Example","slug":"ucd-tw-project-tag-example","link":"#ucd-tw-project-tag-example","children":[]}]},{"level":2,"title":"Creating or Editing Tags","slug":"creating-or-editing-tags","link":"#creating-or-editing-tags","children":[]},{"level":2,"title":"Sources With Versions or Translated Titles","slug":"sources-with-versions-or-translated-titles","link":"#sources-with-versions-or-translated-titles","children":[]},{"level":2,"title":"Filtering Sources","slug":"filtering-sources","link":"#filtering-sources","children":[]},{"level":2,"title":"Importing Sources","slug":"importing-sources","link":"#importing-sources","children":[{"level":3,"title":"Add a Source, one at a time","slug":"add-a-source-one-at-a-time","link":"#add-a-source-one-at-a-time","children":[]},{"level":3,"title":"Source Batch Upload","slug":"source-batch-upload","link":"#source-batch-upload","children":[]}]},{"level":2,"title":"Exporting Sources","slug":"exporting-sources","link":"#exporting-sources","children":[{"level":3,"title":"Use Filter sources to download selected sources","slug":"use-filter-sources-to-download-selected-sources","link":"#use-filter-sources-to-download-selected-sources","children":[]}]},{"level":2,"title":"Source Scenarios (aka How-To)","slug":"source-scenarios-aka-how-to","link":"#source-scenarios-aka-how-to","children":[{"level":3,"title":"Find uncurated unparsed papers","slug":"find-uncurated-unparsed-papers","link":"#find-uncurated-unparsed-papers","children":[]},{"level":3,"title":"Document information from a newly published source","slug":"document-information-from-a-newly-published-source","link":"#document-information-from-a-newly-published-source","children":[]},{"level":3,"title":"Add more species information","slug":"add-more-species-information","link":"#add-more-species-information","children":[{"level":4,"title":"Asserted Distributions","slug":"asserted-distributions","link":"#asserted-distributions","children":[]}]},{"level":3,"title":"Enter information on an existing taxon","slug":"enter-information-on-an-existing-taxon","link":"#enter-information-on-an-existing-taxon","children":[]},{"level":3,"title":"Adding images to TW","slug":"adding-images-to-tw","link":"#adding-images-to-tw","children":[{"level":4,"title":"Adding Type specimen images","slug":"adding-type-specimen-images","link":"#adding-type-specimen-images","children":[]},{"level":4,"title":"Images depicting taxa go with OTUs","slug":"images-depicting-taxa-go-with-otus","link":"#images-depicting-taxa-go-with-otus","children":[]},{"level":4,"title":"Adding Image Copyright infomation","slug":"adding-image-copyright-infomation","link":"#adding-image-copyright-infomation","children":[]}]}]}],"git":{"updatedTime":1695167580000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":15},{"name":"mjy","email":"diapriid@gmail.com","commits":3},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":2},{"name":"Deborah Paul","email":"dlpaul@illinois.edu","commits":1},{"name":"Tommy McElrath","email":"monotomidae@gmail.com","commits":1}]},"filePathRelative":"guide/Manual/Sources/README.md"}');export{O as comp,E as data}; diff --git a/assets/index.html-Db11gV9a.js b/assets/index.html-Db11gV9a.js new file mode 100644 index 00000000..a5d0f7bd --- /dev/null +++ b/assets/index.html-Db11gV9a.js @@ -0,0 +1 @@ +import{_ as e,c as a,o}from"./app-Bwgh_xIT.js";const t={};function r(s,n){return o(),a("div")}const c=e(t,[["render",r],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/es/","title":"Inicio","lang":"es-ES","frontmatter":{"home":true,"title":"Inicio","heroImage":"/images/taxonworks_home.svg","actions":[{"text":"Guía","link":"/guide/","type":"primary"},{"text":"Desarrollar","link":"/develop/","type":"primary"},{"text":"Acerca","link":"/about/","type":"secondary"}],"features":[{"title":"Guía","splash":"Aprenda a usar TaxonWorks","details":"Una aproximación general. Comience un nuevo proyecto. Estudie los manuales, mire videos, obtenga tips, aprenda las mejores practicas de SOPs, responda \\"Cómo lo hago?\\" desde FAQs, aprenda a mover los dato con importación y exportación, conectar flujos de trabajo con la API. Solicita nuevas características, crea reportes de errores."},{"title":"Desarrollar","splash":"Aprenda a desarrollar en TaxonWorks","details":"Instalación, diseño, código, y documentación de TaxonWorks. Encontrar codigo fuente, modelos de datos y documentación técnica. Seguimiento de problemas. Construye este sitio!"},{"title":"Acerca","splash":"Aprenda mas sobre TaxonWorks","details":"Contacta y conecte con la comunidad. Entienda para quién es TaxonWorks. Cite el proyecto. Encuentre usuarios, sus datos, y ejemplos de uso. Lea mas sobre su pasado, presente y futuro. Sepa mas acerca de la informática de la biodiversidad."}],"footer":"El contenido es CC0. Por favor, considere citar."},"headers":[],"git":{"updatedTime":1636739397000,"contributors":[{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":3}]},"filePathRelative":"es/README.md"}');export{c as comp,d as data}; diff --git a/assets/index.html-Dm5tlExW.js b/assets/index.html-Dm5tlExW.js new file mode 100644 index 00000000..c6181184 --- /dev/null +++ b/assets/index.html-Dm5tlExW.js @@ -0,0 +1 @@ +import{_ as o,c as t,o as a,a as e}from"./app-Bwgh_xIT.js";const n={},i=e("h1",{id:"overview",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#overview"},[e("span",null,"Overview")])],-1),r=e("p",null,[e("em",null,"More on the background of TaxonWorks. Who to contact with questions. Ongoing events. Concepts behind TaxonWorks data modelling, approach to development, and more.")],-1),s=[i,r];function c(d,l){return a(),t("div",null,s)}const h=o(n,[["render",c],["__file","index.html.vue"]]),_=JSON.parse('{"path":"/about/","title":"Overview","lang":"en-US","frontmatter":{},"headers":[],"git":{"updatedTime":1637512285000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":2}]},"filePathRelative":"about/README.md"}');export{h as comp,_ as data}; diff --git a/assets/index.html-GD_sZnvb.js b/assets/index.html-GD_sZnvb.js new file mode 100644 index 00000000..94e39fcc --- /dev/null +++ b/assets/index.html-GD_sZnvb.js @@ -0,0 +1 @@ +import{_ as e,c as t,o,b as r}from"./app-Bwgh_xIT.js";const i={},n=r('

    The big picture

    Why emphasize that software development in science is big-picture important? How are the resources available to developers described here?

    How is TaxonWorks supporting developer contributions?

    A project the nature of TaxonWorks needs contributions from many people to succeed over the long term. To that end we're working hard to build a foundation that permits and encourages anyone to contribute to the project. Highlights include:

    • All elements of the project are open source.
    • Example meta-projects exist, for example taxonowrks_stats (demo) illustrating how to build an application off of the API
    • Code generators let you stub a new task view (core feature) or batch-loader in a single line.
    • TaxonWorks is built on Rails. The conventions there acts a wrapper around features that can be written in Ruby or other frameworks like Vue, or other webpack supported frameworks.
    • TaxonWorks is extensively unit tested. This means you can code and contribute with a lot less fear of breaking things.
    • TaxonWorks is deployed in production in Kubernetes, cutting edge application deployment and management software.
    • The Species File Group and its members have held hackathons and many in-house joint workshops. Contact them if you're interested in participating on site. They are also interested in supporting visits to would-be developers, students, or others wishing to get a bootcamp in TaxonWorks development.
    • Docker images let you build against the API in your own JavaScript framework with extremely minimal setup.
    ',5),a=[n];function s(l,p){return o(),t("div",null,a)}const h=e(i,[["render",s],["__file","index.html.vue"]]),d=JSON.parse('{"path":"/develop/","title":"The big picture","lang":"en-US","frontmatter":{"sidebarPosition":10},"headers":[{"level":2,"title":"How is TaxonWorks supporting developer contributions?","slug":"how-is-taxonworks-supporting-developer-contributions","link":"#how-is-taxonworks-supporting-developer-contributions","children":[]}],"git":{"updatedTime":1668380273000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":3}]},"filePathRelative":"develop/README.md"}');export{h as comp,d as data}; diff --git a/assets/index.html-kUO2BIpO.js b/assets/index.html-kUO2BIpO.js new file mode 100644 index 00000000..be55447f --- /dev/null +++ b/assets/index.html-kUO2BIpO.js @@ -0,0 +1 @@ +import{_ as a,c as t,o as c,a as e}from"./app-Bwgh_xIT.js";const o={},s=e("h1",{id:"acerca",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#acerca"},[e("span",null,"Acerca")])],-1),r=[s];function n(i,l){return c(),t("div",null,r)}const _=a(o,[["render",n],["__file","index.html.vue"]]),m=JSON.parse('{"path":"/es/about/","title":"Acerca","lang":"es-ES","frontmatter":{},"headers":[],"git":{"updatedTime":1636727752000,"contributors":[{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":1}]},"filePathRelative":"es/about/README.md"}');export{_ as comp,m as data}; diff --git a/assets/installation.html-C5TqQ23A.js b/assets/installation.html-C5TqQ23A.js new file mode 100644 index 00000000..a45d904c --- /dev/null +++ b/assets/installation.html-C5TqQ23A.js @@ -0,0 +1 @@ +import{_ as t,c as o,o as n,a as e,d as a}from"./app-Bwgh_xIT.js";const s={},l=e("h1",{id:"instalacion",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#instalacion"},[e("span",null,"Instalación")])],-1),r=e("p",null,[e("em",null,"Como instalo TaxonWorks en ambientes de desarrollo y producción? Cual es el ambiente recomendado y las herramientas para desarrollar TaxonWorks?")],-1),i=e("p",null,[a("La documentación se encuentra presente en el repositorio "),e("a",{href:"https://github.com/SpeciesFileGroup/install_taxonworks",target:"_blank",rel:"noopener noreferrer"},"install_taxonworks"),a(".")],-1),c=[l,r,i];function d(m,p){return n(),o("div",null,c)}const h=t(s,[["render",d],["__file","installation.html.vue"]]),u=JSON.parse('{"path":"/es/develop/installation.html","title":"Instalación","lang":"es-ES","frontmatter":{"sidebarPosition":20},"headers":[],"git":{"updatedTime":1677462190000,"contributors":[{"name":"jlpereira","email":"pepelui@outlook.com","commits":1}]},"filePathRelative":"es/develop/installation.md"}');export{h as comp,u as data}; diff --git a/assets/installation.html-Dm117ntV.js b/assets/installation.html-Dm117ntV.js new file mode 100644 index 00000000..9f842a59 --- /dev/null +++ b/assets/installation.html-Dm117ntV.js @@ -0,0 +1 @@ +import{_ as n,c as o,o as a,a as e,d as t}from"./app-Bwgh_xIT.js";const l={},i=e("h1",{id:"installation",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#installation"},[e("span",null,"Installation")])],-1),s=e("p",null,[e("em",null,"How do I install TaxonWorks both in development and production environments? What is the recommended environment and tools for developing TaxonWorks?")],-1),r=e("p",null,[t("Presently documented in the "),e("a",{href:"https://github.com/SpeciesFileGroup/install_taxonworks",target:"_blank",rel:"noopener noreferrer"},"install_taxonworks"),t(" repository.")],-1),d=[i,s,r];function c(m,_){return a(),o("div",null,d)}const p=n(l,[["render",c],["__file","installation.html.vue"]]),u=JSON.parse('{"path":"/develop/installation.html","title":"Installation","lang":"en-US","frontmatter":{"sidebarPosition":20},"headers":[],"git":{"updatedTime":1668380273000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":5}]},"filePathRelative":"develop/installation.md"}');export{p as comp,u as data}; diff --git a/assets/matrices.html-BBek7Ay5.js b/assets/matrices.html-BBek7Ay5.js new file mode 100644 index 00000000..076b3dc0 --- /dev/null +++ b/assets/matrices.html-BBek7Ay5.js @@ -0,0 +1 @@ +import{_ as i,r as a,c as r,a as e,d as t,e as d,w as c,b as n,o as s}from"./app-Bwgh_xIT.js";const l={},h=e("h1",{id:"matrices",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#matrices"},[e("span",null,"Matrices")])],-1),m=e("p",null,[e("em",null,"Build sophisticated matrices in TW. Use them to create keys, score images and observations, manage projects, and streamline creation of custom outputs and sharing of descriptors.")],-1),u=e("h2",{id:"nomenclature-quick-start",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#nomenclature-quick-start"},[e("span",null,"Nomenclature Quick Start")])],-1),p=n('

    Understanding the data model

    Extensive information exists about the TaxonWorks data model. Information is presented in text and searchable graphic formats. Few comments:

    • Each matrix consistas of defined Rows and Columns.
    • Rows are OTUs, Collection Objects and other objects in the database which could be added to a matrix. The same OTU or any other object could be added to as many matrices as needed.
    • Columns are Descriptors (characters) which could be added to a matrix. The same descriptor could be added to sevaral matrices.
    • TaxonWorks does not store the entire matrix, instead we store individual observations for each cell in the table. In practice this means, that if you have two matrices which include the same OTU and the same descriptor, the observations in the cell will be identical in both matrices, regardless in which matrix the original observation was made. This allow for the user to clone and combine matrices as needed, the observations will be replicated for each matrix and the combination of the Row object and Column object.

    Curating data

    Basic information

    • In most cases, the work with matrices starts in Observation Matrix Hub task.
    • Click New button to create a new matrix. Once the matrix is created, you are automatically in the Edit matrix mode.
    • Alternatively, in the Observation Matrix Hub, find an existing matrix from the list and click Edit button.
    • Also, in the Hub you can pin a matrix, so that it could be used as a default matrix in various interfaces.
    • Once in Edit mode, rows and columns needs to be defined.

    Adding a Descriptor to the Matrix

    • Switch the Row/Column switch to Column position; Dynamic/Fixed switch to Fixed position. After that we can add a new Descriptor to the matrix
    • To add a new Descriptor, click the New Descriptor link at the top off the interface. Select the descriptor Type. The available types are:
      • Qualitative - traditional phylogenetic descriptor with multiple character states
      • Presence/absence - similar to the previous one, but only two predefined states are possible
      • Quantitative - a single measurement character (a default measurement unit could be defined)
      • Sample - a numeric character, for which a min/max range could be scored (a default measurement unit could be defined)
      • Gene - ???
      • Free text
      • Media - a specialized descriptor designed for attachment of Depictions, which will serve as a visual observation in the image matrix
    • Show more mode allows to add some additional details about the descriptor: Short name, Description name - which will be used for autogenerated description, Key name - which will be used in an interactive key, Weight - which will bring the descriptor close to the top in an interactive key.
    • If the qualitative 'Descriptor' is selected, two or more character states need to be defined. Each Character state has two fields: Label - '0', '1', '2', and the Name, some additional information could also be provided when Show more is selector.
      • An example of a Qualitative descriptor: 'Body color' with two states: '0' - red, '1' - black.
    • Once the information on the descriptor entered you can click one of the Create buttons. In all cases, newly created descriptor is added to the matrix as a Column.
      • Create will save the record, but you can continue editing the descriptor
      • Create and return to matrix, will return you back to the Edit matrix interface
      • Create and new could be used if multiple descriptors need to be defined.
    • Alternatively, if descriptors do already exists in the database, they could be just added to an existing matrix in the Edit observation matrix interface by using the search interface on the low left side. Change the Row\\Column switch to the Column, and use Search option. Alternatively, multiple descriptors could be copies from another matrix using From Another Matrix option.

    Adding an OTU or Collection Object to the Matrix

    • To add Rows to the matrix, change Row/Column switch to Row; Dynamic/Fixed switch to Fixed position. OTU, Collection Object, or Extract could be added to a matrix as a Row. Assuming that those objects already exist in the database, they could be added to the matrix using Search or From Another Matrix options, it will work very simillar to adding an existing Descriptor to the matrix.
    • There is also an option to add a new Row to the matrix directly from the Browse OTU or Browse Nomenclature tasks. In either of tasks, select OTU radial button, in the Observation matrices sector, you can select a matrix to automatically add this OTU to it, and proceed directly to scoring mode.
    • Addvanced option to add multiple OTUs to the matrix is using Dynamic option. This option allow to select either all OTUs marked with a specific Tag or select a parent taxon, for example a genus, to add all children taxa, for example species, if new species are added to a genus in the future, those should automatically be added to the matrix.

    Reordering And Editing Rows and Collumns in the Matrix

    • Select Sortable columns/rows checkbox on the top, after that the columns and rowns could be resorted by drugging each up and down the list.
    • OTUs could also be sorted by their nomenclature, using Sort by nomenclature button.
    • To delete a Row or Column from the matrix, use the Trash can button. Keep in mind, deleting each of those does not delete the corresponding object from the database, it only delete its association with a particular Matrix. Deleting Rows and Columns also do not affect the observations associated with those.
    • To edit Row or column, for example to add a new character state to the descriptor, use Edit button next to this descriptor.

    Adding scores to a Row

    • In the Edit Matrix interface, select a 'Score' button second after an OTU or Collection object name in the list
    • You will see the list of descriptors and all possible states, you can check applicable states or add values for numeric descriptors. All changes are saved automatically.
    • Scores could also be cloned from an another object in the matrix using Clone and copy button. After cloning, only few changes may be required to separate one OTU or a Collection Object from another. It is recommended to select the most similar object for clonning.
    • Destroy button could be use to clear all scores from a particular OTU or a Collection object.
    • The Matrix Row Coder interface could also be accessed from the Browse OTU or Browse Nomenclature tasks. In either of tasks, select OTU radial button, in the Observation matrices sector, you can select a matrix to automatically add this OTU to it (if not added previously), and proceed directly to scoring mode.

    Adding scores to a Collumn

    • In the Edit Matrix interface, select a 'Score' button second after a Descriptor in the list
    • You will see the list of OTUs and Collection object associated with this particular Descriptor. You can check applicable states or add values for numeric descriptors. All changes are saved automatically.
    • On the top of the form, there are options to Destroy all observations, Populate column with one particular character state,

    Using a Matrix

    • From the Observation Matrix Hub task, you can click View button next to the name of the matrix. In the view mode, you can preview entire matrix, download the matrix in TNT, nexus, NeXML, CSV formats, to be used, for example in phylogenetic recontstuction or be uploaded into a Lucid builder.
    • Once the matrix is completed, it could be used for species determination as an Interactive Key, which is accessible from the Observation Matrix Hub.
    • Before using the matrix for identification, it is recommended to validate the matrix. A matrix could be validated in the Edit mode by selecting the checkbox Validation. Each row of the matrix will be evaluated if it has enough resolution to separate this particular row from all other rows in the same matrix. If a row does not pass validation, the matrix could still be used for interactive identification, but adding some additional descriptors may improve the resolution.

    Interactive key interface

    • The Interactive key interface is divided into 4 frames: the top one with the title and options; the middle one with the list of descriptors; the lower two frames include the list of rows which could be identifier, and eliminated rows which will be populated once the identification is started.
    • The descriptors are sorted by their weight and separating power. The order of the descriptors could be changed in the preferences on the top.
    • To start the identification, select one character state from any descriptor. It is possible to select more than one state in a case of uncertanty, to do this, click on the descriptor name, and make multiple selection.
    • By default the rows which do not have scores for selected descriptor are not eliminated from the list, it is assumed that any character state is possible, but this behavior could be changed in the settings on the top of the page, if it is needed, for example, for the matrix evaluation.
    • If a particular row in the matrix does not have a score matching selected character state, this taxon or collection object is moved to the list of Eliminated rows. The behavior could be slightly changed by adding error tolerance. The tolerance equal '1' means that a single error in identification is permitted, the row will be eliminated only when 2 or more errors exists.
    • To clear the interactive key, and start the identification from the beginning, use Reset button.
    • If the matrix is large, it could be more convenient not to eliminate the row after selection of each descriptor, since the wait time could be several seconds, before you can select a next descriptor. It is possible to use Refresh only taxa option. The list of descriptors will not be updated before the Refresh button is clicked.
    • After the refresh, the taxa not matching the search criteria are moved to the right, and the list of descriptors also updated to bring more useful once closer to the top of the list.
    • Continue determination before only one or few rows still present in the list of Remaining.
    • It is also possible to use Select button, to reduce the list of rows to be identified from the very beginning. If the list of entities is reduced, the list of descriptors will also be optimized to identify the remaining entries.
    • To make the interactive key more functional, you can add depictions to each character state of each descriptor. To do this, go back to the Edit Matrix interface, select one of the descriptors, click edit button next to it. In the Edit mode, you can use the radial annotator next to each character state to add a depiction.

    Image matrices

    Image matrix is a specialized matrix which has defined descriptors and row, but does not have any scores. Instead of scores, images are added as a depiction to each cell of the table. The image matrix could also be used as a pictorial key for taxon identification, the images from the matrix are also viewed in the Browse OTU page. So instead of adding images directly to each OTU, they could be added to the image matrix instead to get additional functionality.

    • To work with an image matrix, create a new matrix as described above.
    • Add rows to the matrix, OTUs for example.
    • Add new descriptors to the matrix, all of them should be Media type descriptors. Usually this matrix has fewer descriptors than typical morphological matrix, and each descriptor will represent a standard view of the organism or a particular structure useful to determination of taxa. For example, 'dorsal view', 'lateral view', 'head', 'wing venation'.
    • Once the rows and columns are defined, the most convenient way to work with the image matrix would be to use the Observation Matrix Dashbord task.
    • In the Observation Matrix Dashbord task, select a parent taxon and rank of the children taxa which you would like to see, for example, select a genus name, and select species rank to see all the species-level taxa from this particular genus. Once selected, click the Search button.
    • You will see the table of OTUs with some summary, how many observations has each, and how many depictions are added to a particular OTU in an image matrix.
    • Use Open in a matrix button next to one of the OTUs to add OTU to a matrix. Select the image matrix from the list. Once the matrix is selected, you get redirected to an editing interface, which looks like a table, where the descriptors are the headers of each column.
    • To add an image to a particular cell of the table, simly drug and drop it from a folder on your computer to that cell. The images could also be moved from one cell to another.
    • Once the image added, you can provide some metadata. Click on the image to add caption. Click the Radial Annotator button, to add citation and/or attribution.
    • Adding images to multiple OTUs: in the 'Observation matrices dashboard', once you filtered the list of OTUs, select few of tham and click the Edit image matrix buttom. The table for editing multiple OTUs will be opened. WARNING: do not select all OTUs for editing, since ALL of tham will be added to a matrix as separate Rows.
    • Use the previous step to add multiple OTUs to any given matrix, not only to Image matrix, that could be another fast way to add multiple rows, for example adding rows for a future ineractive key.
    • Image matrix for any given OTU could also be accessed with the OTU Radial button, in the Browse OTU, or Browse Nomenclature tasks.

    Viewing images in the Image Matrix

    • In the Observation Matrix Dashbord task, select a parent taxon and rank of the children taxa which you would like to see, for example, select a genus name, and select species rank to see all the species-level taxa from this particular genus. Once selected, click the Search button.
    • In the filtered results, Select All or few OTUs using checkboxes before the names, and click the View image matrix button. A table will be open to display all illustrations, so that OTUs could be compared to each other.
    • In the View mode, you can hide some rows but clicking a checkbox before each row, or you can quickly switch to the Edit mode.
    ',25);function f(b,g){const o=a("RouteLink");return s(),r("div",null,[h,m,u,e("p",null,[t("TW provides a suite of common tasks help you to manage your matrices, descriptors, observations and related data. This section assumes you have some familiarity with the "),d(o,{to:"/guide/Manual/conventions.html"},{default:c(()=>[t("TW user interface conventions")]),_:1}),t(" and introduces new user interface features where needed. Next, please familiarize yourself with the kinds of tasks TW offers related to Matrices.")]),p])}const x=i(l,[["render",f],["__file","matrices.html.vue"]]),v=JSON.parse('{"path":"/guide/Manual/matrices.html","title":"Matrices","lang":"en-US","frontmatter":{"sidebarPosition":300},"headers":[{"level":2,"title":"Nomenclature Quick Start","slug":"nomenclature-quick-start","link":"#nomenclature-quick-start","children":[]},{"level":2,"title":"Understanding the data model","slug":"understanding-the-data-model","link":"#understanding-the-data-model","children":[]},{"level":2,"title":"Curating data","slug":"curating-data","link":"#curating-data","children":[{"level":3,"title":"Basic information","slug":"basic-information","link":"#basic-information","children":[]},{"level":3,"title":"Adding a Descriptor to the Matrix","slug":"adding-a-descriptor-to-the-matrix","link":"#adding-a-descriptor-to-the-matrix","children":[]},{"level":3,"title":"Adding an OTU or Collection Object to the Matrix","slug":"adding-an-otu-or-collection-object-to-the-matrix","link":"#adding-an-otu-or-collection-object-to-the-matrix","children":[]},{"level":3,"title":"Reordering And Editing Rows and Collumns in the Matrix","slug":"reordering-and-editing-rows-and-collumns-in-the-matrix","link":"#reordering-and-editing-rows-and-collumns-in-the-matrix","children":[]},{"level":3,"title":"Adding scores to a Row","slug":"adding-scores-to-a-row","link":"#adding-scores-to-a-row","children":[]},{"level":3,"title":"Adding scores to a Collumn","slug":"adding-scores-to-a-collumn","link":"#adding-scores-to-a-collumn","children":[]},{"level":3,"title":"Using a Matrix","slug":"using-a-matrix","link":"#using-a-matrix","children":[]}]},{"level":2,"title":"Interactive key interface","slug":"interactive-key-interface","link":"#interactive-key-interface","children":[]},{"level":2,"title":"Image matrices","slug":"image-matrices","link":"#image-matrices","children":[{"level":3,"title":"Viewing images in the Image Matrix","slug":"viewing-images-in-the-image-matrix","link":"#viewing-images-in-the-image-matrix","children":[]}]}],"git":{"updatedTime":1695167580000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":2},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":2},{"name":"Deborah Paul","email":"dlpaul@illinois.edu","commits":1},{"name":"Dmitry Dmitriev","email":"arboridia@gmail.com","commits":1}]},"filePathRelative":"guide/Manual/matrices.md"}');export{x as comp,v as data}; diff --git a/assets/migrate-to-TaxonWorks.html-DawmXU2R.js b/assets/migrate-to-TaxonWorks.html-DawmXU2R.js new file mode 100644 index 00000000..09ef3916 --- /dev/null +++ b/assets/migrate-to-TaxonWorks.html-DawmXU2R.js @@ -0,0 +1 @@ +import{_ as e,c as t,o as a,b as o}from"./app-Bwgh_xIT.js";const i={},r=o('

    Migrate to TaxonWorks

    General strategies and tips for migrating complete projects into TaxonWorks with reference to broader considerations for any data migration.

    For general import and input methods see Import and Export.

    Overview

    Those considering TaxonWorks often have existing data in many different formats. One of their first questions is how can they get their existing data in to TaxonWorks. In your considerations it might help to read the Checklist, a generic list of things to consider.

    Strategies

    TaxonWorks collectively provides a nice spectrum of strategies for moving projects into it depending on the nature of your data and the skill-sets of those helping you. These range from completely manually typing in the data to using code to script enter everything. All the strategies listed below have been employed by at least one project within TaxonWorks.

    Keying

    Even with a large dataset some see coming into a new project as a way to start fresh. Keying in your data has the benefit of forcing you to look carefully at it. It ensures a maximal match to TaxonWorks concepts (data models) as everything is done "natively". It lets you master the interfaces you'll ultimately use through repeated use and experimentation. For incoming datasets with tables of less than 500 rows this is very feasible. Remember that the time spent starting, even if weeks or months, is a tiny fraction of the years spent curating into the future. The elephant in the room- the time it takes to write a script, reformat your data, test and refine batch loads is all time spent, often waiting for others, that you and your team could have been entering data.

    We've worked hard to build interfaces that variously:

    • Facilitate adding multiple items via drag and drop (e.g. images)
    • Use "smart selectors" that predict what values you might use based on your recent use
    • Use hot keys to copy values from field to field
    • Use locks to lock in values from record to record
    • Use locks to increment values from record to record
    • Let you build a list of current favourites, and default forms to use one of them
    • Reference an extended clipboard toggling between 4 values
    • Use hot keys to clone records
    • Use in-line data creation for related values when autocompletes fail to find a search target
    • Select-paste from one target to another
    • Make annotation easy in many contexts via radial popups

    Batch load

    This option is most likely to fully cover needs if your data are encodable in Darwin Core Occurrence and Checklist formats. Other batch loaders exist per model, though without the sophistication of the former.

    Script

    If your data are old and rich/complex then writing a 1-off script is often the most effective strategy. It's the practice that SFG members use for datasets that span decades of curation. This is also useful for data not covered in other batch-loaders as part of the hybrid approach.

    Console

    This process is not comprehensive, i.e. complete datasets are not migrated in this way. It augments the Hybrid approach outlined below. Small updates are possible directly via careful code execution in the Rails console. In production this option is only accessible by server administrators, however crafting this code is possible by users, with the execution step provided via communication with those administrators.

    Hybrid

    Hybrid approaches use one or more of the above options to achieve complete coverage. For example use BibTeX formatted sources to import References followed by DwC Checklist data for names, DwC Occurrence data for specimens followed by a script that adds BiologicalAssociation data and Citations.

    Methods not available

    SQL statements

    Accessing the database directly via SQL calls is very rarely done by admins, almost exclusively to address bad data that was not initially caught by model validation but has been, i.e. for retroactive fixes. No batch import uses direct calls to write or update as this avoids the data validation layer.

    API POST/PATCH

    The external API does not allow POST/PATCH requests, i.e. you can't write to the system in that way.

    Migrating from an existing platform

    TODO, document paths from other broadly used software platforms. In general many platforms export to DwC, this is the first step then see Batch Load.

    Darwin Core Archive (DwC-A) based strategies

    Here the idea is to import the core of your data via the built-in importer, see Darwin Core Archive (DwC-A) import, then, if needed, augment the with the Hybrid approach.

    Checklist

    The intent is that these apply to any migration, not just into TaxonWorks.

    Before you start

    Getting out

    Regardless of what you're migrating, and where you are migrating to, one of the very first questions you should ask is not "How do I get in?", but rather "How do I get out?". We know of no software that has lasted forever in its current form, and there is little reason to expect this to change.

    • How long do I need to use the platform I'm using?
    • What platforms can you migrate to?
    • What data-formats does the new platform let me export to. Do I understand those formats. Do others understand them?

    What might I lose?

    And what can I afford to lose

    Going from one system to another means you will lose, so to speak, some things. In addition to the opposite of what you might gain (below) these might include:

    • Institutional memory on how things were done in the old system, for example how to use interfaces, and how data got in-and-out.
    • Documentation that is now not relevant in the new system
    • Data semantics

    What might I gain?

    In addition to the opposite of what you might lose (above):

    • Improved data semantics, which translates to an increase in data quality and the FAIRness of your data. This is one of the primary motivators for moving to a new system
    • New, better documentation (if it exists)
    • Improved interfaces.
    • Greater flexibility
    • Access to a community of support

    How long will this take?

    Longer than you expect, however this is highly dependent on what you're coming in with. In our experience, particularly with regards to complex, old data, a rough rule of thumb is that for every year of curation you've done on your dataset you can expect up to 1/2 a years time for the migration process to complete. This assumes that you want to be a lossless as possible. Research datasets 20 years old have gone through multiple revisions, have had their semantics drift here and there, cover things that are often very specific to some domain and contain other complexities that make this a difficult process. If we think about taking into account the time between the "AHA! This data should move!" moment to the time at which the dataset is moved then you might take into account such things as (in no particular order): 1) writing grants for support (and resubmitting them, that's 4 years right there); 2) finding people to do the work; 3) waiting for those people to have the time to do the work; 4) finding a community to join you in the move; 5) educating you and your community on how to use the new platform; 5) validating data at all steps; 6) practicing the migration; 7) modelling the transition of your data to the new model; 8) iteratively updating your data to match the new model; 9) writing the tools or processes that do the data migration; 10) waiting for new features that must be there to meet your needs to be created on the target platform; 11) debating other platforms to use; 12) building community consensus on what platform to migrate to; 13) doing feature comparisons; 14) learning about your options; 15) waiting for the original curator to retire; 16) waiting for the original curator to retire and "be done" with their data; 16) migrating your data to a platform and finding out near the end (or shortly thereafter) that the platform is no longer supported and starting all over again (thanks big G); 17) some standards group changing what identifier you should use; 18) some ontology group changing the meaning of the things the identifiers point to; 19) staff turnover; 20) your ace post-doc who ran the show retiring and never, ever, coming back; 21) big arguments with your governmental agency as to why you should be allowed to move; 22) doing the migration, then figuring out you missed that 1 critical field; 22) waiting for the server that hosts the data to finally die to induce that real motivating moment of panic. These are all things we've experienced, please share yours!

    Prepare your data

    Or, "get to text"

    Many systems that you migrate too will want your data in a text format (e.g. CSV). This is in contrast to something like a Spreadsheet. Depending on who is supporting the migration it might be valuable for you to get eperienced in exporting to this format, as it may happen iteratively and frequently. If your data are in a wide-spread SQL format that is compatible (e.g. SQLlite or PostgresQL)

    Archive your old data

    Consider archiving snapshots of your data as they originally existed for all the future digital-archaeologist who need to justify their jobs.

    Organize your text

    Keep original copies of exported text files, as "pristine" as possible in one directory. Clone those files into a working directory. Use Git to commit the files to persist changes at different times. TODO: Reference to data carpentry class or R for data science setup.

    Iteratively clean, transform, and validate your data

    Coming, a pointer to a checklist of data quality utilities.

    The process at this step seeks to accomplish a number of things:

    • Improving the consistency of your data prior to migration
    • Pre-adapting, so to speak, your data to the semantics of the new system. For example using specific column-headers or splitting data into multiple fields if the new system prefers a specific format.
    • A general cleaning of your data. Since you don't have to go back to your old tools you can use new tools to update your data (see list above) without having the problem of synchronizing the data back to your original tools format.

    Import

    At this point you'll engage the import capabilities of the system you're moving to.

    Practice

    Hopefully that system has ways to trial the import, and re-do it from scratch. This is key for complex data. Practice also means using the new system, getting familiar with the user-interfaces and tools. This helps to confirm whether or not you really want to migrate. It gives you new views on your data. You, as the expert, will best see anomalies in the data, some of which may suggests problems with the import process.

    Plan for transition

    Set a date-time a making the final import run. Make sure your community is aware and engaged.

    You may also consider taking the opportunity to:

    • Broaden your community by encouraging others to join. Solo-run projects on complex data are "fragile" in ways that groups of collaborators don't face.
    • Adding new ways to communicate issues. Remember, no migration is perfect, immediately after the import run expect to see a flurry of communication that points out problems with the data, tools, etc. Perhaps you can start a shared issue tracker or chat-room so that these issues become visible and accessible to others beyond yourself. Open, shared communications lets experts outside your community hop in and help, as opposed to, for example emails from 1 person to another that are "hidden"from others who might help. Open communication also leaves an audit-trail that can be used to highlight the broader impacts of your project (e.g. look, X number of people need our data, and took the time to engage us) in ways that emails can not.

    Complete the migration

    When you're done

    You're never done. Sorry.

    ',65),n=[r];function s(l,h){return a(),t("div",null,n)}const c=e(i,[["render",s],["__file","migrate-to-TaxonWorks.html.vue"]]),p=JSON.parse(`{"path":"/guide/migrate-to-TaxonWorks.html","title":"Migrate to TaxonWorks","lang":"en-US","frontmatter":{"sidebarPosition":32},"headers":[{"level":2,"title":"Overview","slug":"overview","link":"#overview","children":[]},{"level":2,"title":"Strategies","slug":"strategies","link":"#strategies","children":[{"level":3,"title":"Keying","slug":"keying","link":"#keying","children":[]},{"level":3,"title":"Batch load","slug":"batch-load","link":"#batch-load","children":[]},{"level":3,"title":"Script","slug":"script","link":"#script","children":[{"level":4,"title":"Console","slug":"console","link":"#console","children":[]}]},{"level":3,"title":"Hybrid","slug":"hybrid","link":"#hybrid","children":[]}]},{"level":2,"title":"Methods not available","slug":"methods-not-available","link":"#methods-not-available","children":[{"level":3,"title":"SQL statements","slug":"sql-statements","link":"#sql-statements","children":[]},{"level":3,"title":"API POST/PATCH","slug":"api-post-patch","link":"#api-post-patch","children":[]}]},{"level":2,"title":"Migrating from an existing platform","slug":"migrating-from-an-existing-platform","link":"#migrating-from-an-existing-platform","children":[]},{"level":2,"title":"Darwin Core Archive (DwC-A) based strategies","slug":"darwin-core-archive-dwc-a-based-strategies","link":"#darwin-core-archive-dwc-a-based-strategies","children":[]},{"level":2,"title":"Checklist","slug":"checklist","link":"#checklist","children":[{"level":3,"title":"Before you start","slug":"before-you-start","link":"#before-you-start","children":[{"level":4,"title":"Getting out","slug":"getting-out","link":"#getting-out","children":[]},{"level":4,"title":"What might I lose?","slug":"what-might-i-lose","link":"#what-might-i-lose","children":[]},{"level":4,"title":"What might I gain?","slug":"what-might-i-gain","link":"#what-might-i-gain","children":[]},{"level":4,"title":"How long will this take?","slug":"how-long-will-this-take","link":"#how-long-will-this-take","children":[]}]},{"level":3,"title":"Prepare your data","slug":"prepare-your-data","link":"#prepare-your-data","children":[{"level":4,"title":"Archive your old data","slug":"archive-your-old-data","link":"#archive-your-old-data","children":[]},{"level":4,"title":"Organize your text","slug":"organize-your-text","link":"#organize-your-text","children":[]},{"level":4,"title":"Iteratively clean, transform, and validate your data","slug":"iteratively-clean-transform-and-validate-your-data","link":"#iteratively-clean-transform-and-validate-your-data","children":[]}]},{"level":3,"title":"Import","slug":"import","link":"#import","children":[{"level":4,"title":"Practice","slug":"practice","link":"#practice","children":[]},{"level":4,"title":"Plan for transition","slug":"plan-for-transition","link":"#plan-for-transition","children":[]},{"level":4,"title":"Complete the migration","slug":"complete-the-migration","link":"#complete-the-migration","children":[]}]},{"level":3,"title":"When you're done","slug":"when-you-re-done","link":"#when-you-re-done","children":[]}]}],"git":{"updatedTime":1711747772000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":1}]},"filePathRelative":"guide/migrate-to-TaxonWorks.md"}`);export{c as comp,p as data}; diff --git a/assets/models.html-CKtLdWnZ.js b/assets/models.html-CKtLdWnZ.js new file mode 100644 index 00000000..1198e9ec --- /dev/null +++ b/assets/models.html-CKtLdWnZ.js @@ -0,0 +1 @@ +import{_ as r,r as s,c as n,a as e,d as t,e as a,w as l,o as i}from"./app-Bwgh_xIT.js";const d={},c=e("h1",{id:"models",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#models"},[e("span",null,"Models")])],-1),h=e("p",null,[e("em",null,"This file auto-generated 2022-02-08 10:47:07 -0600 via 'rake tw:docs:model_ers'. Do not hand-edit.")],-1),_=e("em",null,"target model",-1),m=e("em",null,"through",-1),p=e("em",null,"target model",-1),g=e("em",null,"target model",-1),u=e("em",null,"through",-1),b=e("h2",{id:"alternate-value",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#alternate-value"},[e("span",null,"Alternate value")])],-1),f=e("a",{href:"#models"},"top",-1),v=e("a",{href:"https://rdoc.taxonworks.org/AlternateValue.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),x=e("object",{data:"/images/model/alternate_values_model_er.svg",type:"image/svg+xml"},null,-1),k=e("h2",{id:"asserted-distribution",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#asserted-distribution"},[e("span",null,"Asserted distribution")])],-1),y=e("a",{href:"#models"},"top",-1),D=e("a",{href:"https://rdoc.taxonworks.org/AssertedDistribution.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),w=e("a",{href:"https://api.taxonworks.org/#/asserted_distributions",target:"_blank",rel:"noopener noreferrer"},"api",-1),j=e("object",{data:"/images/model/asserted_distributions_model_er.svg",type:"image/svg+xml"},null,-1),C=e("h2",{id:"attribution",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#attribution"},[e("span",null,"Attribution")])],-1),O=e("a",{href:"#models"},"top",-1),T=e("a",{href:"https://rdoc.taxonworks.org/Attribution.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),S=e("object",{data:"/images/model/attributions_model_er.svg",type:"image/svg+xml"},null,-1),B=e("h2",{id:"biocuration-classification",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#biocuration-classification"},[e("span",null,"Biocuration classification")])],-1),P=e("a",{href:"#models"},"top",-1),G=e("a",{href:"https://rdoc.taxonworks.org/BiocurationClassification.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),R=e("object",{data:"/images/model/biocuration_classifications_model_er.svg",type:"image/svg+xml"},null,-1),q=e("h2",{id:"biological-association",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#biological-association"},[e("span",null,"Biological association")])],-1),A=e("a",{href:"#models"},"top",-1),L=e("a",{href:"https://rdoc.taxonworks.org/BiologicalAssociation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),I=e("a",{href:"https://api.taxonworks.org/#/biological_associations",target:"_blank",rel:"noopener noreferrer"},"api",-1),N=e("object",{data:"/images/model/biological_associations_model_er.svg",type:"image/svg+xml"},null,-1),z=e("h2",{id:"biological-associations-biological-associations-graph",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#biological-associations-biological-associations-graph"},[e("span",null,"Biological associations biological associations graph")])],-1),M=e("a",{href:"#models"},"top",-1),E=e("a",{href:"https://rdoc.taxonworks.org/BiologicalAssociationsBiologicalAssociationsGraph.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),V=e("object",{data:"/images/model/biological_associations_biological_associations_graphs_model_er.svg",type:"image/svg+xml"},null,-1),F=e("h2",{id:"biological-associations-graph",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#biological-associations-graph"},[e("span",null,"Biological associations graph")])],-1),J=e("a",{href:"#models"},"top",-1),K=e("a",{href:"https://rdoc.taxonworks.org/BiologicalAssociationsGraph.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),U=e("object",{data:"/images/model/biological_associations_graphs_model_er.svg",type:"image/svg+xml"},null,-1),H=e("h2",{id:"biological-relationship-type",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#biological-relationship-type"},[e("span",null,"Biological relationship type")])],-1),Q=e("a",{href:"#models"},"top",-1),W=e("a",{href:"https://rdoc.taxonworks.org/BiologicalRelationshipType.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),X=e("object",{data:"/images/model/biological_relationship_types_model_er.svg",type:"image/svg+xml"},null,-1),Y=e("h2",{id:"biological-relationship",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#biological-relationship"},[e("span",null,"Biological relationship")])],-1),Z=e("a",{href:"#models"},"top",-1),$=e("a",{href:"https://rdoc.taxonworks.org/BiologicalRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ee=e("object",{data:"/images/model/biological_relationships_model_er.svg",type:"image/svg+xml"},null,-1),te=e("h2",{id:"character-state",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#character-state"},[e("span",null,"Character state")])],-1),oe=e("a",{href:"#models"},"top",-1),ae=e("a",{href:"https://rdoc.taxonworks.org/CharacterState.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),le=e("object",{data:"/images/model/character_states_model_er.svg",type:"image/svg+xml"},null,-1),re=e("h2",{id:"citation-topic",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#citation-topic"},[e("span",null,"Citation topic")])],-1),se=e("a",{href:"#models"},"top",-1),ne=e("a",{href:"https://rdoc.taxonworks.org/CitationTopic.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ie=e("object",{data:"/images/model/citation_topics_model_er.svg",type:"image/svg+xml"},null,-1),de=e("h2",{id:"citation",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#citation"},[e("span",null,"Citation")])],-1),ce=e("a",{href:"#models"},"top",-1),he=e("a",{href:"https://rdoc.taxonworks.org/Citation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),_e=e("a",{href:"https://api.taxonworks.org/#/citations",target:"_blank",rel:"noopener noreferrer"},"api",-1),me=e("object",{data:"/images/model/citations_model_er.svg",type:"image/svg+xml"},null,-1),pe=e("h2",{id:"collecting-event",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#collecting-event"},[e("span",null,"Collecting event")])],-1),ge=e("a",{href:"#models"},"top",-1),ue=e("a",{href:"https://rdoc.taxonworks.org/CollectingEvent.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),be=e("a",{href:"https://api.taxonworks.org/#/collecting_events",target:"_blank",rel:"noopener noreferrer"},"api",-1),fe=e("object",{data:"/images/model/collecting_events_model_er.svg",type:"image/svg+xml"},null,-1),ve=e("h2",{id:"collection-object-observation",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#collection-object-observation"},[e("span",null,"Collection object observation")])],-1),xe=e("a",{href:"#models"},"top",-1),ke=e("a",{href:"https://rdoc.taxonworks.org/CollectionObjectObservation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ye=e("object",{data:"/images/model/collection_object_observations_model_er.svg",type:"image/svg+xml"},null,-1),De=e("h2",{id:"collection-object",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#collection-object"},[e("span",null,"Collection object")])],-1),we=e("a",{href:"#models"},"top",-1),je=e("a",{href:"https://rdoc.taxonworks.org/CollectionObject.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ce=e("a",{href:"https://api.taxonworks.org/#/collection_objects",target:"_blank",rel:"noopener noreferrer"},"api",-1),Oe=e("object",{data:"/images/model/collection_objects_model_er.svg",type:"image/svg+xml"},null,-1),Te=e("h2",{id:"collection-profile",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#collection-profile"},[e("span",null,"Collection profile")])],-1),Se=e("a",{href:"#models"},"top",-1),Be=e("a",{href:"https://rdoc.taxonworks.org/CollectionProfile.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Pe=e("object",{data:"/images/model/collection_profiles_model_er.svg",type:"image/svg+xml"},null,-1),Ge=e("h2",{id:"common-name",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#common-name"},[e("span",null,"Common name")])],-1),Re=e("a",{href:"#models"},"top",-1),qe=e("a",{href:"https://rdoc.taxonworks.org/CommonName.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ae=e("object",{data:"/images/model/common_names_model_er.svg",type:"image/svg+xml"},null,-1),Le=e("h2",{id:"confidence",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#confidence"},[e("span",null,"Confidence")])],-1),Ie=e("a",{href:"#models"},"top",-1),Ne=e("a",{href:"https://rdoc.taxonworks.org/Confidence.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ze=e("object",{data:"/images/model/confidences_model_er.svg",type:"image/svg+xml"},null,-1),Me=e("h2",{id:"container-item",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#container-item"},[e("span",null,"Container item")])],-1),Ee=e("a",{href:"#models"},"top",-1),Ve=e("a",{href:"https://rdoc.taxonworks.org/ContainerItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Fe=e("object",{data:"/images/model/container_items_model_er.svg",type:"image/svg+xml"},null,-1),Je=e("h2",{id:"container",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#container"},[e("span",null,"Container")])],-1),Ke=e("a",{href:"#models"},"top",-1),Ue=e("a",{href:"https://rdoc.taxonworks.org/Container.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),He=e("object",{data:"/images/model/containers_model_er.svg",type:"image/svg+xml"},null,-1),Qe=e("h2",{id:"content",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#content"},[e("span",null,"Content")])],-1),We=e("a",{href:"#models"},"top",-1),Xe=e("a",{href:"https://rdoc.taxonworks.org/Content.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ye=e("a",{href:"https://api.taxonworks.org/#/contents",target:"_blank",rel:"noopener noreferrer"},"api",-1),Ze=e("object",{data:"/images/model/contents_model_er.svg",type:"image/svg+xml"},null,-1),$e=e("h2",{id:"controlled-vocabulary-term",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#controlled-vocabulary-term"},[e("span",null,"Controlled vocabulary term")])],-1),et=e("a",{href:"#models"},"top",-1),tt=e("a",{href:"https://rdoc.taxonworks.org/ControlledVocabularyTerm.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ot=e("object",{data:"/images/model/controlled_vocabulary_terms_model_er.svg",type:"image/svg+xml"},null,-1),at=e("h2",{id:"data-attribute",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#data-attribute"},[e("span",null,"Data attribute")])],-1),lt=e("a",{href:"#models"},"top",-1),rt=e("a",{href:"https://rdoc.taxonworks.org/DataAttribute.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),st=e("a",{href:"https://api.taxonworks.org/#/data_attributes",target:"_blank",rel:"noopener noreferrer"},"api",-1),nt=e("object",{data:"/images/model/data_attributes_model_er.svg",type:"image/svg+xml"},null,-1),it=e("h2",{id:"dataset-record-field",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#dataset-record-field"},[e("span",null,"Dataset record field")])],-1),dt=e("a",{href:"#models"},"top",-1),ct=e("a",{href:"https://rdoc.taxonworks.org/DatasetRecordField.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ht=e("object",{data:"/images/model/dataset_record_fields_model_er.svg",type:"image/svg+xml"},null,-1),_t=e("h2",{id:"dataset-record",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#dataset-record"},[e("span",null,"Dataset record")])],-1),mt=e("a",{href:"#models"},"top",-1),pt=e("a",{href:"https://rdoc.taxonworks.org/DatasetRecord.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),gt=e("object",{data:"/images/model/dataset_records_model_er.svg",type:"image/svg+xml"},null,-1),ut=e("h2",{id:"depiction",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#depiction"},[e("span",null,"Depiction")])],-1),bt=e("a",{href:"#models"},"top",-1),ft=e("a",{href:"https://rdoc.taxonworks.org/Depiction.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),vt=e("object",{data:"/images/model/depictions_model_er.svg",type:"image/svg+xml"},null,-1),xt=e("h2",{id:"derived-collection-object",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#derived-collection-object"},[e("span",null,"Derived collection object")])],-1),kt=e("a",{href:"#models"},"top",-1),yt=e("a",{href:"https://rdoc.taxonworks.org/DerivedCollectionObject.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Dt=e("object",{data:"/images/model/derived_collection_objects_model_er.svg",type:"image/svg+xml"},null,-1),wt=e("h2",{id:"descriptor",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#descriptor"},[e("span",null,"Descriptor")])],-1),jt=e("a",{href:"#models"},"top",-1),Ct=e("a",{href:"https://rdoc.taxonworks.org/Descriptor.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ot=e("object",{data:"/images/model/descriptors_model_er.svg",type:"image/svg+xml"},null,-1),Tt=e("h2",{id:"documentation",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#documentation"},[e("span",null,"Documentation")])],-1),St=e("a",{href:"#models"},"top",-1),Bt=e("a",{href:"https://rdoc.taxonworks.org/Documentation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Pt=e("object",{data:"/images/model/documentation_model_er.svg",type:"image/svg+xml"},null,-1),Gt=e("h2",{id:"document",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#document"},[e("span",null,"Document")])],-1),Rt=e("a",{href:"#models"},"top",-1),qt=e("a",{href:"https://rdoc.taxonworks.org/Document.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),At=e("object",{data:"/images/model/documents_model_er.svg",type:"image/svg+xml"},null,-1),Lt=e("h2",{id:"extract",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#extract"},[e("span",null,"Extract")])],-1),It=e("a",{href:"#models"},"top",-1),Nt=e("a",{href:"https://rdoc.taxonworks.org/Extract.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),zt=e("object",{data:"/images/model/extracts_model_er.svg",type:"image/svg+xml"},null,-1),Mt=e("h2",{id:"gene-attribute",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#gene-attribute"},[e("span",null,"Gene attribute")])],-1),Et=e("a",{href:"#models"},"top",-1),Vt=e("a",{href:"https://rdoc.taxonworks.org/GeneAttribute.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ft=e("object",{data:"/images/model/gene_attributes_model_er.svg",type:"image/svg+xml"},null,-1),Jt=e("h2",{id:"geographic-area-type",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#geographic-area-type"},[e("span",null,"Geographic area type")])],-1),Kt=e("a",{href:"#models"},"top",-1),Ut=e("a",{href:"https://rdoc.taxonworks.org/GeographicAreaType.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ht=e("object",{data:"/images/model/geographic_area_types_model_er.svg",type:"image/svg+xml"},null,-1),Qt=e("h2",{id:"geographic-area",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#geographic-area"},[e("span",null,"Geographic area")])],-1),Wt=e("a",{href:"#models"},"top",-1),Xt=e("a",{href:"https://rdoc.taxonworks.org/GeographicArea.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Yt=e("object",{data:"/images/model/geographic_areas_model_er.svg",type:"image/svg+xml"},null,-1),Zt=e("h2",{id:"geographic-areas-geographic-item",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#geographic-areas-geographic-item"},[e("span",null,"Geographic areas geographic item")])],-1),$t=e("a",{href:"#models"},"top",-1),eo=e("a",{href:"https://rdoc.taxonworks.org/GeographicAreasGeographicItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),to=e("object",{data:"/images/model/geographic_areas_geographic_items_model_er.svg",type:"image/svg+xml"},null,-1),oo=e("h2",{id:"geographic-item",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#geographic-item"},[e("span",null,"Geographic item")])],-1),ao=e("a",{href:"#models"},"top",-1),lo=e("a",{href:"https://rdoc.taxonworks.org/GeographicItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ro=e("object",{data:"/images/model/geographic_items_model_er.svg",type:"image/svg+xml"},null,-1),so=e("h2",{id:"georeference",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#georeference"},[e("span",null,"Georeference")])],-1),no=e("a",{href:"#models"},"top",-1),io=e("a",{href:"https://rdoc.taxonworks.org/Georeference.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),co=e("object",{data:"/images/model/georeferences_model_er.svg",type:"image/svg+xml"},null,-1),ho=e("h2",{id:"identifier",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#identifier"},[e("span",null,"Identifier")])],-1),_o=e("a",{href:"#models"},"top",-1),mo=e("a",{href:"https://rdoc.taxonworks.org/Identifier.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),po=e("a",{href:"https://api.taxonworks.org/#/identifiers",target:"_blank",rel:"noopener noreferrer"},"api",-1),go=e("object",{data:"/images/model/identifiers_model_er.svg",type:"image/svg+xml"},null,-1),uo=e("h2",{id:"image",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#image"},[e("span",null,"Image")])],-1),bo=e("a",{href:"#models"},"top",-1),fo=e("a",{href:"https://rdoc.taxonworks.org/Image.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),vo=e("a",{href:"https://api.taxonworks.org/#/images",target:"_blank",rel:"noopener noreferrer"},"api",-1),xo=e("object",{data:"/images/model/images_model_er.svg",type:"image/svg+xml"},null,-1),ko=e("h2",{id:"import-dataset",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#import-dataset"},[e("span",null,"Import dataset")])],-1),yo=e("a",{href:"#models"},"top",-1),Do=e("a",{href:"https://rdoc.taxonworks.org/ImportDataset.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),wo=e("object",{data:"/images/model/import_datasets_model_er.svg",type:"image/svg+xml"},null,-1),jo=e("h2",{id:"label",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#label"},[e("span",null,"Label")])],-1),Co=e("a",{href:"#models"},"top",-1),Oo=e("a",{href:"https://rdoc.taxonworks.org/Label.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),To=e("object",{data:"/images/model/labels_model_er.svg",type:"image/svg+xml"},null,-1),So=e("h2",{id:"language",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#language"},[e("span",null,"Language")])],-1),Bo=e("a",{href:"#models"},"top",-1),Po=e("a",{href:"https://rdoc.taxonworks.org/Language.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Go=e("object",{data:"/images/model/languages_model_er.svg",type:"image/svg+xml"},null,-1),Ro=e("h2",{id:"loan-item",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#loan-item"},[e("span",null,"Loan item")])],-1),qo=e("a",{href:"#models"},"top",-1),Ao=e("a",{href:"https://rdoc.taxonworks.org/LoanItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Lo=e("object",{data:"/images/model/loan_items_model_er.svg",type:"image/svg+xml"},null,-1),Io=e("h2",{id:"loan",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#loan"},[e("span",null,"Loan")])],-1),No=e("a",{href:"#models"},"top",-1),zo=e("a",{href:"https://rdoc.taxonworks.org/Loan.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Mo=e("object",{data:"/images/model/loans_model_er.svg",type:"image/svg+xml"},null,-1),Eo=e("h2",{id:"namespace",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#namespace"},[e("span",null,"Namespace")])],-1),Vo=e("a",{href:"#models"},"top",-1),Fo=e("a",{href:"https://rdoc.taxonworks.org/Namespace.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Jo=e("object",{data:"/images/model/namespaces_model_er.svg",type:"image/svg+xml"},null,-1),Ko=e("h2",{id:"note",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#note"},[e("span",null,"Note")])],-1),Uo=e("a",{href:"#models"},"top",-1),Ho=e("a",{href:"https://rdoc.taxonworks.org/Note.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Qo=e("a",{href:"https://api.taxonworks.org/#/notes",target:"_blank",rel:"noopener noreferrer"},"api",-1),Wo=e("object",{data:"/images/model/notes_model_er.svg",type:"image/svg+xml"},null,-1),Xo=e("h2",{id:"observation-matrix",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#observation-matrix"},[e("span",null,"Observation matrix")])],-1),Yo=e("a",{href:"#models"},"top",-1),Zo=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrix.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),$o=e("a",{href:"https://api.taxonworks.org/#/observation_matrices",target:"_blank",rel:"noopener noreferrer"},"api",-1),ea=e("object",{data:"/images/model/observation_matrices_model_er.svg",type:"image/svg+xml"},null,-1),ta=e("h2",{id:"observation-matrix-column-item",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#observation-matrix-column-item"},[e("span",null,"Observation matrix column item")])],-1),oa=e("a",{href:"#models"},"top",-1),aa=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrixColumnItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),la=e("object",{data:"/images/model/observation_matrix_column_items_model_er.svg",type:"image/svg+xml"},null,-1),ra=e("h2",{id:"observation-matrix-column",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#observation-matrix-column"},[e("span",null,"Observation matrix column")])],-1),sa=e("a",{href:"#models"},"top",-1),na=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrixColumn.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ia=e("object",{data:"/images/model/observation_matrix_columns_model_er.svg",type:"image/svg+xml"},null,-1),da=e("h2",{id:"observation-matrix-row-item",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#observation-matrix-row-item"},[e("span",null,"Observation matrix row item")])],-1),ca=e("a",{href:"#models"},"top",-1),ha=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrixRowItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),_a=e("object",{data:"/images/model/observation_matrix_row_items_model_er.svg",type:"image/svg+xml"},null,-1),ma=e("h2",{id:"observation-matrix-row",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#observation-matrix-row"},[e("span",null,"Observation matrix row")])],-1),pa=e("a",{href:"#models"},"top",-1),ga=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrixRow.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ua=e("object",{data:"/images/model/observation_matrix_rows_model_er.svg",type:"image/svg+xml"},null,-1),ba=e("h2",{id:"observation",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#observation"},[e("span",null,"Observation")])],-1),fa=e("a",{href:"#models"},"top",-1),va=e("a",{href:"https://rdoc.taxonworks.org/Observation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),xa=e("a",{href:"https://api.taxonworks.org/#/observations",target:"_blank",rel:"noopener noreferrer"},"api",-1),ka=e("object",{data:"/images/model/observations_model_er.svg",type:"image/svg+xml"},null,-1),ya=e("h2",{id:"organization",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#organization"},[e("span",null,"Organization")])],-1),Da=e("a",{href:"#models"},"top",-1),wa=e("a",{href:"https://rdoc.taxonworks.org/Organization.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ja=e("object",{data:"/images/model/organizations_model_er.svg",type:"image/svg+xml"},null,-1),Ca=e("h2",{id:"origin-relationship",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#origin-relationship"},[e("span",null,"Origin relationship")])],-1),Oa=e("a",{href:"#models"},"top",-1),Ta=e("a",{href:"https://rdoc.taxonworks.org/OriginRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Sa=e("object",{data:"/images/model/origin_relationships_model_er.svg",type:"image/svg+xml"},null,-1),Ba=e("h2",{id:"otu-page-layout-section",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#otu-page-layout-section"},[e("span",null,"Otu page layout section")])],-1),Pa=e("a",{href:"#models"},"top",-1),Ga=e("a",{href:"https://rdoc.taxonworks.org/OtuPageLayoutSection.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ra=e("object",{data:"/images/model/otu_page_layout_sections_model_er.svg",type:"image/svg+xml"},null,-1),qa=e("h2",{id:"otu-page-layout",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#otu-page-layout"},[e("span",null,"Otu page layout")])],-1),Aa=e("a",{href:"#models"},"top",-1),La=e("a",{href:"https://rdoc.taxonworks.org/OtuPageLayout.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ia=e("object",{data:"/images/model/otu_page_layouts_model_er.svg",type:"image/svg+xml"},null,-1),Na=e("h2",{id:"otu",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#otu"},[e("span",null,"Otu")])],-1),za=e("a",{href:"#models"},"top",-1),Ma=e("a",{href:"https://rdoc.taxonworks.org/Otu.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ea=e("a",{href:"https://api.taxonworks.org/#/otus",target:"_blank",rel:"noopener noreferrer"},"api",-1),Va=e("object",{data:"/images/model/otus_model_er.svg",type:"image/svg+xml"},null,-1),Fa=e("h2",{id:"person",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#person"},[e("span",null,"Person")])],-1),Ja=e("a",{href:"#models"},"top",-1),Ka=e("a",{href:"https://rdoc.taxonworks.org/Person.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ua=e("a",{href:"https://api.taxonworks.org/#/people",target:"_blank",rel:"noopener noreferrer"},"api",-1),Ha=e("object",{data:"/images/model/people_model_er.svg",type:"image/svg+xml"},null,-1),Qa=e("h2",{id:"preparation-type",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#preparation-type"},[e("span",null,"Preparation type")])],-1),Wa=e("a",{href:"#models"},"top",-1),Xa=e("a",{href:"https://rdoc.taxonworks.org/PreparationType.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ya=e("object",{data:"/images/model/preparation_types_model_er.svg",type:"image/svg+xml"},null,-1),Za=e("h2",{id:"project-member",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#project-member"},[e("span",null,"Project member")])],-1),$a=e("a",{href:"#models"},"top",-1),el=e("a",{href:"https://rdoc.taxonworks.org/ProjectMember.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),tl=e("object",{data:"/images/model/project_members_model_er.svg",type:"image/svg+xml"},null,-1),ol=e("h2",{id:"project-source",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#project-source"},[e("span",null,"Project source")])],-1),al=e("a",{href:"#models"},"top",-1),ll=e("a",{href:"https://rdoc.taxonworks.org/ProjectSource.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),rl=e("object",{data:"/images/model/project_sources_model_er.svg",type:"image/svg+xml"},null,-1),sl=e("h2",{id:"protocol-relationship",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#protocol-relationship"},[e("span",null,"Protocol relationship")])],-1),nl=e("a",{href:"#models"},"top",-1),il=e("a",{href:"https://rdoc.taxonworks.org/ProtocolRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),dl=e("object",{data:"/images/model/protocol_relationships_model_er.svg",type:"image/svg+xml"},null,-1),cl=e("h2",{id:"protocol",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#protocol"},[e("span",null,"Protocol")])],-1),hl=e("a",{href:"#models"},"top",-1),_l=e("a",{href:"https://rdoc.taxonworks.org/Protocol.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ml=e("object",{data:"/images/model/protocols_model_er.svg",type:"image/svg+xml"},null,-1),pl=e("h2",{id:"ranged-lot-category",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#ranged-lot-category"},[e("span",null,"Ranged lot category")])],-1),gl=e("a",{href:"#models"},"top",-1),ul=e("a",{href:"https://rdoc.taxonworks.org/RangedLotCategory.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),bl=e("object",{data:"/images/model/ranged_lot_categories_model_er.svg",type:"image/svg+xml"},null,-1),fl=e("h2",{id:"repository",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#repository"},[e("span",null,"Repository")])],-1),vl=e("a",{href:"#models"},"top",-1),xl=e("a",{href:"https://rdoc.taxonworks.org/Repository.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),kl=e("object",{data:"/images/model/repositories_model_er.svg",type:"image/svg+xml"},null,-1),yl=e("h2",{id:"role",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#role"},[e("span",null,"Role")])],-1),Dl=e("a",{href:"#models"},"top",-1),wl=e("a",{href:"https://rdoc.taxonworks.org/Role.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),jl=e("object",{data:"/images/model/roles_model_er.svg",type:"image/svg+xml"},null,-1),Cl=e("h2",{id:"sequence-relationship",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#sequence-relationship"},[e("span",null,"Sequence relationship")])],-1),Ol=e("a",{href:"#models"},"top",-1),Tl=e("a",{href:"https://rdoc.taxonworks.org/SequenceRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Sl=e("object",{data:"/images/model/sequence_relationships_model_er.svg",type:"image/svg+xml"},null,-1),Bl=e("h2",{id:"sequence",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#sequence"},[e("span",null,"Sequence")])],-1),Pl=e("a",{href:"#models"},"top",-1),Gl=e("a",{href:"https://rdoc.taxonworks.org/Sequence.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Rl=e("object",{data:"/images/model/sequences_model_er.svg",type:"image/svg+xml"},null,-1),ql=e("h2",{id:"serial-chronology",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#serial-chronology"},[e("span",null,"Serial chronology")])],-1),Al=e("a",{href:"#models"},"top",-1),Ll=e("a",{href:"https://rdoc.taxonworks.org/SerialChronology.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Il=e("object",{data:"/images/model/serial_chronologies_model_er.svg",type:"image/svg+xml"},null,-1),Nl=e("h2",{id:"serial",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#serial"},[e("span",null,"Serial")])],-1),zl=e("a",{href:"#models"},"top",-1),Ml=e("a",{href:"https://rdoc.taxonworks.org/Serial.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),El=e("object",{data:"/images/model/serials_model_er.svg",type:"image/svg+xml"},null,-1),Vl=e("h2",{id:"sled-image",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#sled-image"},[e("span",null,"Sled image")])],-1),Fl=e("a",{href:"#models"},"top",-1),Jl=e("a",{href:"https://rdoc.taxonworks.org/SledImage.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Kl=e("object",{data:"/images/model/sled_images_model_er.svg",type:"image/svg+xml"},null,-1),Ul=e("h2",{id:"source",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#source"},[e("span",null,"Source")])],-1),Hl=e("a",{href:"#models"},"top",-1),Ql=e("a",{href:"https://rdoc.taxonworks.org/Source.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Wl=e("a",{href:"https://api.taxonworks.org/#/sources",target:"_blank",rel:"noopener noreferrer"},"api",-1),Xl=e("object",{data:"/images/model/sources_model_er.svg",type:"image/svg+xml"},null,-1),Yl=e("h2",{id:"tagged-section-keyword",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#tagged-section-keyword"},[e("span",null,"Tagged section keyword")])],-1),Zl=e("a",{href:"#models"},"top",-1),$l=e("a",{href:"https://rdoc.taxonworks.org/TaggedSectionKeyword.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),er=e("object",{data:"/images/model/tagged_section_keywords_model_er.svg",type:"image/svg+xml"},null,-1),tr=e("h2",{id:"tag",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#tag"},[e("span",null,"Tag")])],-1),or=e("a",{href:"#models"},"top",-1),ar=e("a",{href:"https://rdoc.taxonworks.org/Tag.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),lr=e("object",{data:"/images/model/tags_model_er.svg",type:"image/svg+xml"},null,-1),rr=e("h2",{id:"taxon-determination",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#taxon-determination"},[e("span",null,"Taxon determination")])],-1),sr=e("a",{href:"#models"},"top",-1),nr=e("a",{href:"https://rdoc.taxonworks.org/TaxonDetermination.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ir=e("object",{data:"/images/model/taxon_determinations_model_er.svg",type:"image/svg+xml"},null,-1),dr=e("h2",{id:"taxon-name-classification",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#taxon-name-classification"},[e("span",null,"Taxon name classification")])],-1),cr=e("a",{href:"#models"},"top",-1),hr=e("a",{href:"https://rdoc.taxonworks.org/TaxonNameClassification.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),_r=e("a",{href:"https://api.taxonworks.org/#/taxon_name_classifications",target:"_blank",rel:"noopener noreferrer"},"api",-1),mr=e("object",{data:"/images/model/taxon_name_classifications_model_er.svg",type:"image/svg+xml"},null,-1),pr=e("h2",{id:"taxon-name-relationship",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#taxon-name-relationship"},[e("span",null,"Taxon name relationship")])],-1),gr=e("a",{href:"#models"},"top",-1),ur=e("a",{href:"https://rdoc.taxonworks.org/TaxonNameRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),br=e("a",{href:"https://api.taxonworks.org/#/taxon_name_relationships",target:"_blank",rel:"noopener noreferrer"},"api",-1),fr=e("object",{data:"/images/model/taxon_name_relationships_model_er.svg",type:"image/svg+xml"},null,-1),vr=e("h2",{id:"taxon-name",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#taxon-name"},[e("span",null,"Taxon name")])],-1),xr=e("a",{href:"#models"},"top",-1),kr=e("a",{href:"https://rdoc.taxonworks.org/TaxonName.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),yr=e("a",{href:"https://api.taxonworks.org/#/taxon_names",target:"_blank",rel:"noopener noreferrer"},"api",-1),Dr=e("object",{data:"/images/model/taxon_names_model_er.svg",type:"image/svg+xml"},null,-1),wr=e("h2",{id:"type-material",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#type-material"},[e("span",null,"Type material")])],-1),jr=e("a",{href:"#models"},"top",-1),Cr=e("a",{href:"https://rdoc.taxonworks.org/TypeMaterial.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Or=e("object",{data:"/images/model/type_materials_model_er.svg",type:"image/svg+xml"},null,-1);function Tr(Sr,Br){const o=s("RouteLink");return i(),n("div",null,[c,h,e("p",null,[t("Algorithmically generated ER diagrams. Node shapes: green octagons- the target model the ER perspective is drawn from; orange rounded rectangles- core models; light purple rectangles- supporting models; blue ovals- annotating models; purple diamonds- polymorphic models (matches to many other models). Node edges (arrow points to many side): solid arrows- 'has many'; dotted arrows- "),_,t(" 'has many' "),m,t(" one side model; dashed arrows: "),p,t(" 'has one'; dotted squared arrows: "),g,t(" 'has one', but "),u,t(" a corresponding dotted relationship. See also description in "),a(o,{to:"/develop/Data/#concepts"},{default:l(()=>[t("Overview")]),_:1}),t(". Click a node to navigate (not all are linked).")]),e("p",null,[a(o,{to:"/develop/Data/models.html#alternate-value"},{default:l(()=>[t("Alternate value")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#asserted-distribution"},{default:l(()=>[t("Asserted distribution")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#attribution"},{default:l(()=>[t("Attribution")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#biocuration-classification"},{default:l(()=>[t("Biocuration classification")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#biological-association"},{default:l(()=>[t("Biological association")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#biological-associations-biological-associations-graph"},{default:l(()=>[t("Biological associations biological associations graph")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#biological-associations-graph"},{default:l(()=>[t("Biological associations graph")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#biological-relationship-type"},{default:l(()=>[t("Biological relationship type")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#biological-relationship"},{default:l(()=>[t("Biological relationship")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#character-state"},{default:l(()=>[t("Character state")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#citation-topic"},{default:l(()=>[t("Citation topic")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#citation"},{default:l(()=>[t("Citation")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#collecting-event"},{default:l(()=>[t("Collecting event")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#collection-object-observation"},{default:l(()=>[t("Collection object observation")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#collection-object"},{default:l(()=>[t("Collection object")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#collection-profile"},{default:l(()=>[t("Collection profile")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#common-name"},{default:l(()=>[t("Common name")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#confidence"},{default:l(()=>[t("Confidence")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#container-item"},{default:l(()=>[t("Container item")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#container"},{default:l(()=>[t("Container")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#content"},{default:l(()=>[t("Content")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#controlled-vocabulary-term"},{default:l(()=>[t("Controlled vocabulary term")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#data-attribute"},{default:l(()=>[t("Data attribute")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#dataset-record-field"},{default:l(()=>[t("Dataset record field")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#dataset-record"},{default:l(()=>[t("Dataset record")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#depiction"},{default:l(()=>[t("Depiction")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#derived-collection-object"},{default:l(()=>[t("Derived collection object")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#descriptor"},{default:l(()=>[t("Descriptor")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#documentation"},{default:l(()=>[t("Documentation")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#document"},{default:l(()=>[t("Document")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#extract"},{default:l(()=>[t("Extract")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#gene-attribute"},{default:l(()=>[t("Gene attribute")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#geographic-area-type"},{default:l(()=>[t("Geographic area type")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#geographic-area"},{default:l(()=>[t("Geographic area")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#geographic-areas-geographic-item"},{default:l(()=>[t("Geographic areas geographic item")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#geographic-item"},{default:l(()=>[t("Geographic item")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#georeference"},{default:l(()=>[t("Georeference")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#identifier"},{default:l(()=>[t("Identifier")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#image"},{default:l(()=>[t("Image")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#import-dataset"},{default:l(()=>[t("Import dataset")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#label"},{default:l(()=>[t("Label")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#language"},{default:l(()=>[t("Language")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#loan-item"},{default:l(()=>[t("Loan item")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#loan"},{default:l(()=>[t("Loan")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#namespace"},{default:l(()=>[t("Namespace")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#note"},{default:l(()=>[t("Note")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#observation-matrix"},{default:l(()=>[t("Observation matrix")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#observation-matrix-column-item"},{default:l(()=>[t("Observation matrix column item")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#observation-matrix-column"},{default:l(()=>[t("Observation matrix column")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#observation-matrix-row-item"},{default:l(()=>[t("Observation matrix row item")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#observation-matrix-row"},{default:l(()=>[t("Observation matrix row")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#observation"},{default:l(()=>[t("Observation")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#organization"},{default:l(()=>[t("Organization")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#origin-relationship"},{default:l(()=>[t("Origin relationship")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#otu-page-layout-section"},{default:l(()=>[t("Otu page layout section")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#otu-page-layout"},{default:l(()=>[t("Otu page layout")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#otu"},{default:l(()=>[t("Otu")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#person"},{default:l(()=>[t("Person")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#preparation-type"},{default:l(()=>[t("Preparation type")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#project-member"},{default:l(()=>[t("Project member")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#project-source"},{default:l(()=>[t("Project source")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#protocol-relationship"},{default:l(()=>[t("Protocol relationship")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#protocol"},{default:l(()=>[t("Protocol")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#ranged-lot-category"},{default:l(()=>[t("Ranged lot category")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#repository"},{default:l(()=>[t("Repository")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#role"},{default:l(()=>[t("Role")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#sequence-relationship"},{default:l(()=>[t("Sequence relationship")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#sequence"},{default:l(()=>[t("Sequence")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#serial-chronology"},{default:l(()=>[t("Serial chronology")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#serial"},{default:l(()=>[t("Serial")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#sled-image"},{default:l(()=>[t("Sled image")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#source"},{default:l(()=>[t("Source")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#tagged-section-keyword"},{default:l(()=>[t("Tagged section keyword")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#tag"},{default:l(()=>[t("Tag")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#taxon-determination"},{default:l(()=>[t("Taxon determination")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#taxon-name-classification"},{default:l(()=>[t("Taxon name classification")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#taxon-name-relationship"},{default:l(()=>[t("Taxon name relationship")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#taxon-name"},{default:l(()=>[t("Taxon name")]),_:1}),t(", "),a(o,{to:"/develop/Data/models.html#type-material"},{default:l(()=>[t("Type material")]),_:1})]),b,e("p",null,[f,t(","),a(o,{to:"/develop/Data/tables.html#alternate-values"},{default:l(()=>[t("table")]),_:1}),t(","),v,x]),k,e("p",null,[y,t(","),a(o,{to:"/develop/Data/tables.html#asserted-distributions"},{default:l(()=>[t("table")]),_:1}),t(","),D,t(","),w,j]),C,e("p",null,[O,t(","),a(o,{to:"/develop/Data/tables.html#attributions"},{default:l(()=>[t("table")]),_:1}),t(","),T,S]),B,e("p",null,[P,t(","),a(o,{to:"/develop/Data/tables.html#biocuration-classifications"},{default:l(()=>[t("table")]),_:1}),t(","),G,R]),q,e("p",null,[A,t(","),a(o,{to:"/develop/Data/tables.html#biological-associations"},{default:l(()=>[t("table")]),_:1}),t(","),L,t(","),I,N]),z,e("p",null,[M,t(","),a(o,{to:"/develop/Data/tables.html#biological-associations-biological-associations-graphs"},{default:l(()=>[t("table")]),_:1}),t(","),E,V]),F,e("p",null,[J,t(","),a(o,{to:"/develop/Data/tables.html#biological-associations-graphs"},{default:l(()=>[t("table")]),_:1}),t(","),K,U]),H,e("p",null,[Q,t(","),a(o,{to:"/develop/Data/tables.html#biological-relationship-types"},{default:l(()=>[t("table")]),_:1}),t(","),W,X]),Y,e("p",null,[Z,t(","),a(o,{to:"/develop/Data/tables.html#biological-relationships"},{default:l(()=>[t("table")]),_:1}),t(","),$,ee]),te,e("p",null,[oe,t(","),a(o,{to:"/develop/Data/tables.html#character-states"},{default:l(()=>[t("table")]),_:1}),t(","),ae,le]),re,e("p",null,[se,t(","),a(o,{to:"/develop/Data/tables.html#citation-topics"},{default:l(()=>[t("table")]),_:1}),t(","),ne,ie]),de,e("p",null,[ce,t(","),a(o,{to:"/develop/Data/tables.html#citations"},{default:l(()=>[t("table")]),_:1}),t(","),he,t(","),_e,me]),pe,e("p",null,[ge,t(","),a(o,{to:"/develop/Data/tables.html#collecting-events"},{default:l(()=>[t("table")]),_:1}),t(","),ue,t(","),be,fe]),ve,e("p",null,[xe,t(","),a(o,{to:"/develop/Data/tables.html#collection-object-observations"},{default:l(()=>[t("table")]),_:1}),t(","),ke,ye]),De,e("p",null,[we,t(","),a(o,{to:"/develop/Data/tables.html#collection-objects"},{default:l(()=>[t("table")]),_:1}),t(","),je,t(","),Ce,Oe]),Te,e("p",null,[Se,t(","),a(o,{to:"/develop/Data/tables.html#collection-profiles"},{default:l(()=>[t("table")]),_:1}),t(","),Be,Pe]),Ge,e("p",null,[Re,t(","),a(o,{to:"/develop/Data/tables.html#common-names"},{default:l(()=>[t("table")]),_:1}),t(","),qe,Ae]),Le,e("p",null,[Ie,t(","),a(o,{to:"/develop/Data/tables.html#confidences"},{default:l(()=>[t("table")]),_:1}),t(","),Ne,ze]),Me,e("p",null,[Ee,t(","),a(o,{to:"/develop/Data/tables.html#container-items"},{default:l(()=>[t("table")]),_:1}),t(","),Ve,Fe]),Je,e("p",null,[Ke,t(","),a(o,{to:"/develop/Data/tables.html#containers"},{default:l(()=>[t("table")]),_:1}),t(","),Ue,He]),Qe,e("p",null,[We,t(","),a(o,{to:"/develop/Data/tables.html#contents"},{default:l(()=>[t("table")]),_:1}),t(","),Xe,t(","),Ye,Ze]),$e,e("p",null,[et,t(","),a(o,{to:"/develop/Data/tables.html#controlled-vocabulary-terms"},{default:l(()=>[t("table")]),_:1}),t(","),tt,ot]),at,e("p",null,[lt,t(","),a(o,{to:"/develop/Data/tables.html#data-attributes"},{default:l(()=>[t("table")]),_:1}),t(","),rt,t(","),st,nt]),it,e("p",null,[dt,t(","),a(o,{to:"/develop/Data/tables.html#dataset-record-fields"},{default:l(()=>[t("table")]),_:1}),t(","),ct,ht]),_t,e("p",null,[mt,t(","),a(o,{to:"/develop/Data/tables.html#dataset-records"},{default:l(()=>[t("table")]),_:1}),t(","),pt,gt]),ut,e("p",null,[bt,t(","),a(o,{to:"/develop/Data/tables.html#depictions"},{default:l(()=>[t("table")]),_:1}),t(","),ft,vt]),xt,e("p",null,[kt,t(","),a(o,{to:"/develop/Data/tables.html#derived-collection-objects"},{default:l(()=>[t("table")]),_:1}),t(","),yt,Dt]),wt,e("p",null,[jt,t(","),a(o,{to:"/develop/Data/tables.html#descriptors"},{default:l(()=>[t("table")]),_:1}),t(","),Ct,Ot]),Tt,e("p",null,[St,t(","),a(o,{to:"/develop/Data/tables.html#documentation"},{default:l(()=>[t("table")]),_:1}),t(","),Bt,Pt]),Gt,e("p",null,[Rt,t(","),a(o,{to:"/develop/Data/tables.html#documents"},{default:l(()=>[t("table")]),_:1}),t(","),qt,At]),Lt,e("p",null,[It,t(","),a(o,{to:"/develop/Data/tables.html#extracts"},{default:l(()=>[t("table")]),_:1}),t(","),Nt,zt]),Mt,e("p",null,[Et,t(","),a(o,{to:"/develop/Data/tables.html#gene-attributes"},{default:l(()=>[t("table")]),_:1}),t(","),Vt,Ft]),Jt,e("p",null,[Kt,t(","),a(o,{to:"/develop/Data/tables.html#geographic-area-types"},{default:l(()=>[t("table")]),_:1}),t(","),Ut,Ht]),Qt,e("p",null,[Wt,t(","),a(o,{to:"/develop/Data/tables.html#geographic-areas"},{default:l(()=>[t("table")]),_:1}),t(","),Xt,Yt]),Zt,e("p",null,[$t,t(","),a(o,{to:"/develop/Data/tables.html#geographic-areas-geographic-items"},{default:l(()=>[t("table")]),_:1}),t(","),eo,to]),oo,e("p",null,[ao,t(","),a(o,{to:"/develop/Data/tables.html#geographic-items"},{default:l(()=>[t("table")]),_:1}),t(","),lo,ro]),so,e("p",null,[no,t(","),a(o,{to:"/develop/Data/tables.html#georeferences"},{default:l(()=>[t("table")]),_:1}),t(","),io,co]),ho,e("p",null,[_o,t(","),a(o,{to:"/develop/Data/tables.html#identifiers"},{default:l(()=>[t("table")]),_:1}),t(","),mo,t(","),po,go]),uo,e("p",null,[bo,t(","),a(o,{to:"/develop/Data/tables.html#images"},{default:l(()=>[t("table")]),_:1}),t(","),fo,t(","),vo,xo]),ko,e("p",null,[yo,t(","),a(o,{to:"/develop/Data/tables.html#import-datasets"},{default:l(()=>[t("table")]),_:1}),t(","),Do,wo]),jo,e("p",null,[Co,t(","),a(o,{to:"/develop/Data/tables.html#labels"},{default:l(()=>[t("table")]),_:1}),t(","),Oo,To]),So,e("p",null,[Bo,t(","),a(o,{to:"/develop/Data/tables.html#languages"},{default:l(()=>[t("table")]),_:1}),t(","),Po,Go]),Ro,e("p",null,[qo,t(","),a(o,{to:"/develop/Data/tables.html#loan-items"},{default:l(()=>[t("table")]),_:1}),t(","),Ao,Lo]),Io,e("p",null,[No,t(","),a(o,{to:"/develop/Data/tables.html#loans"},{default:l(()=>[t("table")]),_:1}),t(","),zo,Mo]),Eo,e("p",null,[Vo,t(","),a(o,{to:"/develop/Data/tables.html#namespaces"},{default:l(()=>[t("table")]),_:1}),t(","),Fo,Jo]),Ko,e("p",null,[Uo,t(","),a(o,{to:"/develop/Data/tables.html#notes"},{default:l(()=>[t("table")]),_:1}),t(","),Ho,t(","),Qo,Wo]),Xo,e("p",null,[Yo,t(","),a(o,{to:"/develop/Data/tables.html#observation-matrices"},{default:l(()=>[t("table")]),_:1}),t(","),Zo,t(","),$o,ea]),ta,e("p",null,[oa,t(","),a(o,{to:"/develop/Data/tables.html#observation-matrix-column-items"},{default:l(()=>[t("table")]),_:1}),t(","),aa,la]),ra,e("p",null,[sa,t(","),a(o,{to:"/develop/Data/tables.html#observation-matrix-columns"},{default:l(()=>[t("table")]),_:1}),t(","),na,ia]),da,e("p",null,[ca,t(","),a(o,{to:"/develop/Data/tables.html#observation-matrix-row-items"},{default:l(()=>[t("table")]),_:1}),t(","),ha,_a]),ma,e("p",null,[pa,t(","),a(o,{to:"/develop/Data/tables.html#observation-matrix-rows"},{default:l(()=>[t("table")]),_:1}),t(","),ga,ua]),ba,e("p",null,[fa,t(","),a(o,{to:"/develop/Data/tables.html#observations"},{default:l(()=>[t("table")]),_:1}),t(","),va,t(","),xa,ka]),ya,e("p",null,[Da,t(","),a(o,{to:"/develop/Data/tables.html#organizations"},{default:l(()=>[t("table")]),_:1}),t(","),wa,ja]),Ca,e("p",null,[Oa,t(","),a(o,{to:"/develop/Data/tables.html#origin-relationships"},{default:l(()=>[t("table")]),_:1}),t(","),Ta,Sa]),Ba,e("p",null,[Pa,t(","),a(o,{to:"/develop/Data/tables.html#otu-page-layout-sections"},{default:l(()=>[t("table")]),_:1}),t(","),Ga,Ra]),qa,e("p",null,[Aa,t(","),a(o,{to:"/develop/Data/tables.html#otu-page-layouts"},{default:l(()=>[t("table")]),_:1}),t(","),La,Ia]),Na,e("p",null,[za,t(","),a(o,{to:"/develop/Data/tables.html#otus"},{default:l(()=>[t("table")]),_:1}),t(","),Ma,t(","),Ea,Va]),Fa,e("p",null,[Ja,t(","),a(o,{to:"/develop/Data/tables.html#people"},{default:l(()=>[t("table")]),_:1}),t(","),Ka,t(","),Ua,Ha]),Qa,e("p",null,[Wa,t(","),a(o,{to:"/develop/Data/tables.html#preparation-types"},{default:l(()=>[t("table")]),_:1}),t(","),Xa,Ya]),Za,e("p",null,[$a,t(","),a(o,{to:"/develop/Data/tables.html#project-members"},{default:l(()=>[t("table")]),_:1}),t(","),el,tl]),ol,e("p",null,[al,t(","),a(o,{to:"/develop/Data/tables.html#project-sources"},{default:l(()=>[t("table")]),_:1}),t(","),ll,rl]),sl,e("p",null,[nl,t(","),a(o,{to:"/develop/Data/tables.html#protocol-relationships"},{default:l(()=>[t("table")]),_:1}),t(","),il,dl]),cl,e("p",null,[hl,t(","),a(o,{to:"/develop/Data/tables.html#protocols"},{default:l(()=>[t("table")]),_:1}),t(","),_l,ml]),pl,e("p",null,[gl,t(","),a(o,{to:"/develop/Data/tables.html#ranged-lot-categories"},{default:l(()=>[t("table")]),_:1}),t(","),ul,bl]),fl,e("p",null,[vl,t(","),a(o,{to:"/develop/Data/tables.html#repositories"},{default:l(()=>[t("table")]),_:1}),t(","),xl,kl]),yl,e("p",null,[Dl,t(","),a(o,{to:"/develop/Data/tables.html#roles"},{default:l(()=>[t("table")]),_:1}),t(","),wl,jl]),Cl,e("p",null,[Ol,t(","),a(o,{to:"/develop/Data/tables.html#sequence-relationships"},{default:l(()=>[t("table")]),_:1}),t(","),Tl,Sl]),Bl,e("p",null,[Pl,t(","),a(o,{to:"/develop/Data/tables.html#sequences"},{default:l(()=>[t("table")]),_:1}),t(","),Gl,Rl]),ql,e("p",null,[Al,t(","),a(o,{to:"/develop/Data/tables.html#serial-chronologies"},{default:l(()=>[t("table")]),_:1}),t(","),Ll,Il]),Nl,e("p",null,[zl,t(","),a(o,{to:"/develop/Data/tables.html#serials"},{default:l(()=>[t("table")]),_:1}),t(","),Ml,El]),Vl,e("p",null,[Fl,t(","),a(o,{to:"/develop/Data/tables.html#sled-images"},{default:l(()=>[t("table")]),_:1}),t(","),Jl,Kl]),Ul,e("p",null,[Hl,t(","),a(o,{to:"/develop/Data/tables.html#sources"},{default:l(()=>[t("table")]),_:1}),t(","),Ql,t(","),Wl,Xl]),Yl,e("p",null,[Zl,t(","),a(o,{to:"/develop/Data/tables.html#tagged-section-keywords"},{default:l(()=>[t("table")]),_:1}),t(","),$l,er]),tr,e("p",null,[or,t(","),a(o,{to:"/develop/Data/tables.html#tags"},{default:l(()=>[t("table")]),_:1}),t(","),ar,lr]),rr,e("p",null,[sr,t(","),a(o,{to:"/develop/Data/tables.html#taxon-determinations"},{default:l(()=>[t("table")]),_:1}),t(","),nr,ir]),dr,e("p",null,[cr,t(","),a(o,{to:"/develop/Data/tables.html#taxon-name-classifications"},{default:l(()=>[t("table")]),_:1}),t(","),hr,t(","),_r,mr]),pr,e("p",null,[gr,t(","),a(o,{to:"/develop/Data/tables.html#taxon-name-relationships"},{default:l(()=>[t("table")]),_:1}),t(","),ur,t(","),br,fr]),vr,e("p",null,[xr,t(","),a(o,{to:"/develop/Data/tables.html#taxon-names"},{default:l(()=>[t("table")]),_:1}),t(","),kr,t(","),yr,Dr]),wr,e("p",null,[jr,t(","),a(o,{to:"/develop/Data/tables.html#type-materials"},{default:l(()=>[t("table")]),_:1}),t(","),Cr,Or])])}const Gr=r(d,[["render",Tr],["__file","models.html.vue"]]),Rr=JSON.parse('{"path":"/develop/Data/models.html","title":"Models","lang":"en-US","frontmatter":{},"headers":[{"level":2,"title":"Alternate value","slug":"alternate-value","link":"#alternate-value","children":[]},{"level":2,"title":"Asserted distribution","slug":"asserted-distribution","link":"#asserted-distribution","children":[]},{"level":2,"title":"Attribution","slug":"attribution","link":"#attribution","children":[]},{"level":2,"title":"Biocuration classification","slug":"biocuration-classification","link":"#biocuration-classification","children":[]},{"level":2,"title":"Biological association","slug":"biological-association","link":"#biological-association","children":[]},{"level":2,"title":"Biological associations biological associations graph","slug":"biological-associations-biological-associations-graph","link":"#biological-associations-biological-associations-graph","children":[]},{"level":2,"title":"Biological associations graph","slug":"biological-associations-graph","link":"#biological-associations-graph","children":[]},{"level":2,"title":"Biological relationship type","slug":"biological-relationship-type","link":"#biological-relationship-type","children":[]},{"level":2,"title":"Biological relationship","slug":"biological-relationship","link":"#biological-relationship","children":[]},{"level":2,"title":"Character state","slug":"character-state","link":"#character-state","children":[]},{"level":2,"title":"Citation topic","slug":"citation-topic","link":"#citation-topic","children":[]},{"level":2,"title":"Citation","slug":"citation","link":"#citation","children":[]},{"level":2,"title":"Collecting event","slug":"collecting-event","link":"#collecting-event","children":[]},{"level":2,"title":"Collection object observation","slug":"collection-object-observation","link":"#collection-object-observation","children":[]},{"level":2,"title":"Collection object","slug":"collection-object","link":"#collection-object","children":[]},{"level":2,"title":"Collection profile","slug":"collection-profile","link":"#collection-profile","children":[]},{"level":2,"title":"Common name","slug":"common-name","link":"#common-name","children":[]},{"level":2,"title":"Confidence","slug":"confidence","link":"#confidence","children":[]},{"level":2,"title":"Container item","slug":"container-item","link":"#container-item","children":[]},{"level":2,"title":"Container","slug":"container","link":"#container","children":[]},{"level":2,"title":"Content","slug":"content","link":"#content","children":[]},{"level":2,"title":"Controlled vocabulary term","slug":"controlled-vocabulary-term","link":"#controlled-vocabulary-term","children":[]},{"level":2,"title":"Data attribute","slug":"data-attribute","link":"#data-attribute","children":[]},{"level":2,"title":"Dataset record field","slug":"dataset-record-field","link":"#dataset-record-field","children":[]},{"level":2,"title":"Dataset record","slug":"dataset-record","link":"#dataset-record","children":[]},{"level":2,"title":"Depiction","slug":"depiction","link":"#depiction","children":[]},{"level":2,"title":"Derived collection object","slug":"derived-collection-object","link":"#derived-collection-object","children":[]},{"level":2,"title":"Descriptor","slug":"descriptor","link":"#descriptor","children":[]},{"level":2,"title":"Documentation","slug":"documentation","link":"#documentation","children":[]},{"level":2,"title":"Document","slug":"document","link":"#document","children":[]},{"level":2,"title":"Extract","slug":"extract","link":"#extract","children":[]},{"level":2,"title":"Gene attribute","slug":"gene-attribute","link":"#gene-attribute","children":[]},{"level":2,"title":"Geographic area type","slug":"geographic-area-type","link":"#geographic-area-type","children":[]},{"level":2,"title":"Geographic area","slug":"geographic-area","link":"#geographic-area","children":[]},{"level":2,"title":"Geographic areas geographic item","slug":"geographic-areas-geographic-item","link":"#geographic-areas-geographic-item","children":[]},{"level":2,"title":"Geographic item","slug":"geographic-item","link":"#geographic-item","children":[]},{"level":2,"title":"Georeference","slug":"georeference","link":"#georeference","children":[]},{"level":2,"title":"Identifier","slug":"identifier","link":"#identifier","children":[]},{"level":2,"title":"Image","slug":"image","link":"#image","children":[]},{"level":2,"title":"Import dataset","slug":"import-dataset","link":"#import-dataset","children":[]},{"level":2,"title":"Label","slug":"label","link":"#label","children":[]},{"level":2,"title":"Language","slug":"language","link":"#language","children":[]},{"level":2,"title":"Loan item","slug":"loan-item","link":"#loan-item","children":[]},{"level":2,"title":"Loan","slug":"loan","link":"#loan","children":[]},{"level":2,"title":"Namespace","slug":"namespace","link":"#namespace","children":[]},{"level":2,"title":"Note","slug":"note","link":"#note","children":[]},{"level":2,"title":"Observation matrix","slug":"observation-matrix","link":"#observation-matrix","children":[]},{"level":2,"title":"Observation matrix column item","slug":"observation-matrix-column-item","link":"#observation-matrix-column-item","children":[]},{"level":2,"title":"Observation matrix column","slug":"observation-matrix-column","link":"#observation-matrix-column","children":[]},{"level":2,"title":"Observation matrix row item","slug":"observation-matrix-row-item","link":"#observation-matrix-row-item","children":[]},{"level":2,"title":"Observation matrix row","slug":"observation-matrix-row","link":"#observation-matrix-row","children":[]},{"level":2,"title":"Observation","slug":"observation","link":"#observation","children":[]},{"level":2,"title":"Organization","slug":"organization","link":"#organization","children":[]},{"level":2,"title":"Origin relationship","slug":"origin-relationship","link":"#origin-relationship","children":[]},{"level":2,"title":"Otu page layout section","slug":"otu-page-layout-section","link":"#otu-page-layout-section","children":[]},{"level":2,"title":"Otu page layout","slug":"otu-page-layout","link":"#otu-page-layout","children":[]},{"level":2,"title":"Otu","slug":"otu","link":"#otu","children":[]},{"level":2,"title":"Person","slug":"person","link":"#person","children":[]},{"level":2,"title":"Preparation type","slug":"preparation-type","link":"#preparation-type","children":[]},{"level":2,"title":"Project member","slug":"project-member","link":"#project-member","children":[]},{"level":2,"title":"Project source","slug":"project-source","link":"#project-source","children":[]},{"level":2,"title":"Protocol relationship","slug":"protocol-relationship","link":"#protocol-relationship","children":[]},{"level":2,"title":"Protocol","slug":"protocol","link":"#protocol","children":[]},{"level":2,"title":"Ranged lot category","slug":"ranged-lot-category","link":"#ranged-lot-category","children":[]},{"level":2,"title":"Repository","slug":"repository","link":"#repository","children":[]},{"level":2,"title":"Role","slug":"role","link":"#role","children":[]},{"level":2,"title":"Sequence relationship","slug":"sequence-relationship","link":"#sequence-relationship","children":[]},{"level":2,"title":"Sequence","slug":"sequence","link":"#sequence","children":[]},{"level":2,"title":"Serial chronology","slug":"serial-chronology","link":"#serial-chronology","children":[]},{"level":2,"title":"Serial","slug":"serial","link":"#serial","children":[]},{"level":2,"title":"Sled image","slug":"sled-image","link":"#sled-image","children":[]},{"level":2,"title":"Source","slug":"source","link":"#source","children":[]},{"level":2,"title":"Tagged section keyword","slug":"tagged-section-keyword","link":"#tagged-section-keyword","children":[]},{"level":2,"title":"Tag","slug":"tag","link":"#tag","children":[]},{"level":2,"title":"Taxon determination","slug":"taxon-determination","link":"#taxon-determination","children":[]},{"level":2,"title":"Taxon name classification","slug":"taxon-name-classification","link":"#taxon-name-classification","children":[]},{"level":2,"title":"Taxon name relationship","slug":"taxon-name-relationship","link":"#taxon-name-relationship","children":[]},{"level":2,"title":"Taxon name","slug":"taxon-name","link":"#taxon-name","children":[]},{"level":2,"title":"Type material","slug":"type-material","link":"#type-material","children":[]}],"git":{"updatedTime":1644347967000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":5}]},"filePathRelative":"develop/Data/models.md"}');export{Gr as comp,Rr as data}; diff --git a/assets/nomenclature.html-B4dF5ngD.js b/assets/nomenclature.html-B4dF5ngD.js new file mode 100644 index 00000000..1e87a97f --- /dev/null +++ b/assets/nomenclature.html-B4dF5ngD.js @@ -0,0 +1 @@ +import{_ as a,r as i,c as n,a as e,d as o,e as s,w as r,b as l,o as c}from"./app-Bwgh_xIT.js";const d={},h=e("h1",{id:"nomenclature",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#nomenclature"},[e("span",null,"Nomenclature")])],-1),u=e("p",null,[e("em",null,"Collectively gather all your relevant nomenclature information in one place in TW. Nomenclatural data are separated from but connected to the biological taxonomically-related information about such topics as host information, genetic/genomic or other biological associations data about a given biological taxon.")],-1),m=e("h2",{id:"nomenclature-quick-start",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#nomenclature-quick-start"},[e("span",null,"Nomenclature Quick Start")])],-1),p=l('

    Nomenclature, not biology!

    • A reminder, if you want to record information about biology (hosts, parasites, distribution, etc.) that doesn't belong in the nomenclature section, you will use the OTU radial icon or OTU nav icon to access and record those data from a nomenclatural context.
    Legend: Navigate from Browse Nomenclature to the OTU for a given taxon. Biologically related information about a taxon goes into the Operational Taxonomic Unit (OTU) task
    Legend: In the Browse OTU task, enter biologically-related information.

    Finding Nomenclature Tasks

    • Navigate to the Tasks list
    • Use the left side bar filter to Select Nomenclature
      • The result is a list of task cards, each one related in some way to capturing, using, filtering, editing, and publishing nomenclatural data.
    Legend: Color-coded Nomenclature tasks. Yellow tasks are more or less stable and useful, some changes anticipated but basic functionality will remain the same. If green, they likely won't change. Red indicates experimental status -- they work, but might not last or may radically change.

    Browse nomenclature, New taxon name, and New combination are useful tasks to add, view, and modify existing classification. Browse nomenclature provides a convenient way of navigating from one Taxon Name to another. It also gives you an option to quickly jump to the Edit Task.

    Hotkeys

    Legend: Finding keyboard shortcuts associated with the Browse Nomenclature user interface
    • Mac computers use ctrl as triggering key, PCs use alt.

    Example: From the New/Edit taxon name task there are different extensive keyboard shortcut options:

    • ctrl+s Save taxon name changes
    • ctrl+n Create a new taxon name
    • ctrl+p Create a new taxon name with the same parent
    • ctrl+d Create a child of this taxon name
    • ctrl+l Clone this taxon name
    • ctrl+e Go to comprehensive specimen digitization
    • ctrl+p Create a new taxon name with the same parent
    • ctrl+m Go to new type material
    • ctrl+c Go to comprehensive specimen digitization
    • ctrl+b Go to browse nomenclature
    • ctrl+o Go to browse otus

    Additionally, on any Browse/Show page you can:

    • ctrl+p - automatically pin and default that name to the pinboard
    • ctrl+g - pop-up a quick navigation modal that lets you navigate to the defaulted records

    Understanding the data model

    Extensive information exists about the TaxonWorks data model. Information is presented in text and searchable graphic formats.

    • Legend: Visualizing TaxonName relationships in TW

    Curating data

    Basic information

    All Taxon Names are stored as uninomials (called Protonyms) in TaxonWorks. A hierarchical nomenclature is entered by you and is customizable to provide the maximum level of flexibility for classifications. Three fields are required to create a Taxon Name record in the database: Name, Parent, and Taxonomic rank using the New taxon name task.

    • Select the New taxon name task.
    • Enter the desired Name
    • Start typing to select the Parent from a drop-down that will appear
    • Select the Rank
      • Note that TW software smart logic guesses at the Rank so please check.
    • Click Create to save.
      • The Parent is any valid taxon of a rank higher than a new one. This section is the only section of the form which requires the use of the Save button (after Create step). All other sections of the New Taxon name form use autosave mode.
      • After you click Create the task name changes to Edit taxon name.
    Three fields required to create a New taxon name

    Once you have entered the required fields for New taxon name and clicked Create more fields become available for you to populate with data for adding Author, Status, Relationship, Synonymy, Type, Original Combination, Subsequent Combination, Classification, Gender, and Etymlogy. Please review the next screenshot for what this looks like in the UI. Below this screenshot after the Conceptual Approach section, you will find a brief description of each of these sections followed by detailed explanations and examples.

    All fields in the New taxon name task

    About Root

    The highest rank taxon in a given hierarchy is Root. This is a default Taxon and can not be modified, it is created when the project is first initiated. The first taxon attached to the Root requires selection of the Code of Nomenclature (ICZN, ICN, ICNP, ICTV). This selection is required to enforce validation rules specific to this particular Code of Nomenclature. All taxa below this taxon do not require selection of the Code, it will be inherited from the parent. The same database may contain taxa covered by different Codes of Nomenclature.

    Illustrating the concept of Root in TaxonWorks

    See this next screenshot to show how you can have other taxa at the Root as needed, that reference a different Code of Nomenclature.

    Showing several taxa that cross kingdoms and Codes of Nomenclature at the level of root

    Conceptual approach

    To understand nomenclature in TaxonWorks it's important to understand that the basic idea is to accumulate/add new facts rather than update, change, or delete existing records. This is incredibly liberating in many ways, as the system will resolve the current status by inferring across the facts that you have added. As an example, rather than think "how do I change this name to invalid", think "how do I add the fact that so-and-so stated this name is invalid". The name was valid in the past, now we add a fact to indicate somebody more recently thinks it's invalid. The system will look at the years the facts were applied and then summarize the facts as we presently see them. This also lets the complete nomenclatural history, in all its gory detail, be recorded.

    Authorship

    In the Author section of Edit taxon name you have three optional ways to pick from to record authorship. This information sets the original authorship of the name (as opposed to a subsequent citation).

    Three ways to add original authorship via Source, Verbatim, or Person

    The Source option works if you have added the relevant Source (e. g. publication) for this particular Taxon name to TaxonWorks.

    Add original authorship via Source
    • Click Source
    • Type just a few characters in the search box to find the correct source. A drop-down appears with your search results. Select the relevant publication.
      • Source author and Source year of that publication will be used for the taxon name Author.
      • Note you can pin this source if you know you'll immediately be adding more names with the same Author.
    • Results for this example above would be Suricata Desmarest, 1804.
    Add original authorship via Verbatim
    • Click Verbatim
    • Enter the Verbatim author and Verbatim year directly.
    Add original authorship via Person
    • Click Person
    • Search (enter only a few letters)
    • Click to select the desired Person
      • This example shows Desmarest was found by Search and then selected.
      • If you pick an incorrect Person then Click on the trash can to remove and search to pick a different person.
      • If you have more than one Author, then pick the others here as well.

    If authorship is provided by you in more than one way it is prioritized and works as follows:

    • From the Verbatim Author and Verbatim Year fields
    • From the Person (TaxonNameAuthor) assigned as an author of the taxon name
    • From the Source author and source year fields
    • From the Person assigned as an author of the Source (SourceAuthor) assigned as the original citation

    The preferred priority for your workflow is:

    • Assign an original citation (Source in Author section) that has People assigned as authors to that Source entry.
    • Override the authorship in the Source if needed by assigning one or more People from that source as authors in the Person section (for example when doing Smith in Jones & Smith).
    • Use Verbatim Author and year, if original source and People roles are not provided.

    Keep in mind.

    TaxonWorks is about creating the links between concepts (e.g. things like People, Collection Objects, Names, OTUs). How those concepts are visualized is a big can of worms. You can assign alternate values to People's names (e.g. abbreviations, alternate spellings) if you want to reflect how an author's name is spelled in different contexts.

    ICZN

    Parentheses around author/year
    • The preferred mechanism to rendering parentheses around an author/year (indicating current placement is different than original) is to assign the original Genus in the Original Combination (see below). This will automatically render the name correctly.
    Use Original Combination in Edit taxon name to render parentheses
    • If you do not know the original combination, or you wish to "force" the use of parentheses you must use the Verbatim Author option.
      • Place the parentheses around the author there: (Smith). The code will automatically include the year in rendering out the name as needed.
    Year of publication (availability) versus stated year

    The year a name becomes available defines its priority for nomenclatural purposes. It may differ from the year printed on the matter which is made available. The year of publication can be inferred from the Source you linked to the name as an original combination, or explicitly noted in the Edit taxon name task in the Author > Verbatim > Verbatim year section.

    From the Source hub task

    • Type a few characters to find your Source and select it.
    • Click the Edit (pencil) icon to edit the year (month, day) as follows
      • If you only have reference to a single value, it goes in year (month, day)
      • If you have reference to two year values, the actual year of publication goes in year, and the stated year of publication goes in stated_year.
      • If you have month or day publication, they go in month or day.
      • The value provided in Edit taxon name > Author > Verbatim > verbatim_year is always assumed to be the actual year of publication.

    We assume that if two dates are known then the user will create and reference a Source to record those values, i.e. there is no mechanism to provide and differentiate the two types of year directly with the name itself.

    Nomenclatural Status

    This section of Edit taxon name relates to nomenclatural statuses, which are applicable to the taxon itself and does not require any knowledge of related taxa (e.g., Nomen nudum, Non binomial). Note that valid is the default Status so that you do not usually have to select Valid (except in certain circumstances, see below).

    In Edit taxon name: Three ways to assign Status to a taxon name
    • Multiple Statuses could/can be assigned to the same taxon
    • Most common status are listed directly in the Common section for you to pick from.
    • The Advanced option allows you to search for a specific status.
    • All available statuses are listed in Show all section in a pop-up for you to scroll down and click to select. The statuses which are not applicable to a current taxon are greyed out.
    Using Show all to select a Status for a taxon

    Keep in mind.

    1. All names by default are valid names, i.e. a valid status should not be assigned to all the names in the database. Use of the Valid status is reserved for special cases, for example when the taxon has a nomenclatural history of being treated as a synonym, and later was treated as a valid name again, in order to preserve a historical record of synonymy, and override it, a status valid could be added to the taxon, the citation on the status will indicate the source where the validity of taxon was confirmed.
    2. Status Homonym could be added to the taxon to indicate invalid status in cases where the senior homonym is not known, but this should be avoided -- the better way to record homonymy is to create a relationship (see below).

    Example 1: Nomen nudum

    After you select a Common status, e. g. Nomen nudum
    • Select Status = Nomen nudum option under Common.
    • Note your choice is automatically saved after you selected it.

    Relationship

    In this sense, a Relationship references a nomenclatural status (or more than one status) based on the connection to other taxon names.

    These nomenclatural relationships are the statuses which require record of two Taxon Names. For example, Aus is a synonym of Bus. In this relationship we can specify a status for each of those two names:

    • Aus is a Junior synonym
    • Bus is a Senior synonym

    Keep in mind.

    For a given invalid name, navigate to Edit taxon name > Relationship for that invalid name. In the Relationship section, you will do two things: search for and select the related name, then you declare the relationship status picking from the options provided (as described above).

    Here's a quick example of what it looks like when you have completed the above process. In this example, we started by using the Browse Nomenclature task to search for and find the Nomenclatural record for the invalid name Thysanidae Peck, 1951. Then, we clicked the to get to Edit taxon name and go to the Relationship section. We searched for the (valid) name Signiphoridae Howard, 1894 and picked it. We then selected one of the default statuses: Subjective synonym of. Our choice was saved automatically.

    What we see after we declared the Subjective synonym status relationship
    1. Always start with the invalid name and add relationships that reference the valid (or senior) name
    2. Use Browse nomenclature to find the invalid name, then Edit the Relationship for that name.
    3. Check the soft validation messages, they will let you know what may be improved or added.
    4. When adding a relationship, select one that is as specific as possible, subjective synonym is better than just synonym, primary homonym is better than just homonym.
    Note the Soft validation help in the right margin

    Example 1: Synonymy

    • Although each relationship could be read in either direction (Aus is junior synonym of Bus, Bus is senior synonym of Aus) only one way recording of the information is supported in TaxonWorks at the moment. The relationship should always start from invalid name. In our example, it is Aus, so the editing should start on the Edit taxon name Page for Aus. Then, to build a new relationship, search for the second (related) name, in our example it is Bus, and then select the status for this relationship, which is objective synonym in this case.
    • Once the relationship is created a citation could be added to this relationship to indicate the Source, where this synonymy was first proposed.
    • In cases of competing synonymy, where in one source Aus is recorded as synonym of Bus, and in the next publication it is a synonym of Cus, both synonym relationships should be created in the database, if the citations are provided, the latest citation will be used to position the taxon in the classification.
    • In cases where the name was reported as a synonym by mistake and was revalidated in a later publication, the relationship should not be deleted, a valid status could be added to the taxon to overwrite the synonymy (see above)

    Example 2: Homonomy

    If we know that Aus aus is a homonym of Bus aus, and that Aus bus is a replacement name, then we have to express two "facts", i.e. relationship between taxa, in this case 1) A. aus is a synonym of B. aus, 2) A. aus is replaced by A. bus. Both of those statemens are invalidating statements, so both of them start with the taxonomic page for A. aus

    The basic steps:

    1. Ensure all 3 protonyms exist in the database (aus, aus, bus)
    2. Navigate to the invalid name Aus aus
    3. Create the first relationship: Select the senior homonym name Bus aus and a homonym relationship (be specific: primary homonym or secondary homonym)
    4. Create the second relationship: Select the valid name (replacement name) Aus bus and add a synonym relationship (replaced by or subjective synonym of, the second option is true when the substitute name was selected from one of the junior synonyms)

    Example 3: Misapplication

    If we know that Aus aus Author2 is a misidentification of Aus aus Author1, and that Aus bus is a correct name, then we have to express two "facts", i.e. relationship between taxa, in this case 1) A. aus Author 2 is a misidentification of A. aus Author 1, 2) A. aus is invalid name for A. bus. Both of those statements are invalidating statements, so both of them start with the taxonomic page for A. aus

    The basic steps:

    1. Ensure all 3 protonyms exist in the database (aus, aus, bus). An additional protonym should be created in the database for 'Aus aus Author2' different from the correctly applied name 'Aus aus Author1'
    2. Navigate to the invalid name Aus aus Author2
    3. Create the first relationship: Select the correctly applied name name Aus aus Author1 and a misapplication relationship
    4. Create the second relationship: Select the valid name Aus bus and add non specific invalid, linked to relationship (do not use synonym relationships, since misapplication is not an avaliable name)

    Misspelling

    Create the misspelling relationship the same way as misapplication.

    Original combinations

    The original combination is required to keep track of the taxon history, properly handle parentheses in the author string, and also to validate homonymy between taxa. There are two ways to enter the original combination in TaxonWorks.

    Citing the original combination

    To cite usage of the original combination cite the taxon name (Protonym) itself. This is because you are citing the fact that a) there is some name that b) came into existence in some first use, i.e. the definition of a Protonym.

    Method 1 (original combination different from the current combination)

    1. To properly handle taxonomy, always enter taxon name (basic information) in the original form (e.g. species was described as Aus albus Author, now it is Ba alba (Author), the name of the taxon should stay as albus, the form transition will be handled by the genus gender and the species part of speech.
    2. To build an original combination, first move the name of the taxon to the nomenclatural rank level, at which it was originally described.
      • This is important, because a species could be originally described at the subspecies level.
    3. Select the original genus and if needed the original subgenus, assuming those taxa are already in the database.
      • If they are not, open a separate browser tab and enter missing names in the classification.
    4. The rank of each name can be adjusted, the name can be dragged up or down.
    Entering misspelled names

    Hint: if the original name has an incorrect spelling which had to be corrected (e.g. mülleri or albi-lineata), or the original genus was misspelled, two protonyms have to be stored in the database. The first one with the correct spelling and the second one with the original spelling. The second protonym should be linked to the first one with the Incorrect original spelling relationship. This relationship also overrrides the restriction on the Taxon Name spelling.

    You will sometimes discover you cannot create a taxon with a misspelling. The soft validation software steps in. To enter a misspelled name in TaxonWorks:

    • Enter the correct spelling for the TaxonName
    • Click Save to save this Taxon
    • Add misspelling or incorrect original spelling in Relationship
    • Then change the Taxon name spelling to the misspelled form and
    • Click Save again.

    Method 2 (when the original combination is the same as the current combination)

    • Click the button Set as current

    Type metadata

    Genus and Family group names

    Data can be added directly in the Type section of these tasks

    • New type specimen or via
    • New taxon name

    Find the New type specimen task via the New taxon name task Type section or directly from the tasks tab (filter by Nomenclature on the left to quickly find the New type specimen task).

    Species group names

    See also the basic article parsing exercise for a walk through that addresses many of these issues in a more contextual framework.

    Manage Biocuration Groups and the Classes associated with each of the groups

    Adding Groups and Classes can be done independently. You can then assign classes to a given group (e. g. class Female or Male get added to group Sex). Classes do not have to be part of a group. Adding Groups and Classes work the same way. Classes, once added, can be associated with any given group created. Note the "plus" sign in the above screenshot which gives you a list of your classes you can add to that group.

    Manage Biocuration Groups using the Manage Controlled Vocabulary task
    • To add a biocuration group
      • Select Biocuration Group from the menu bar.
      • Give your biocuration group a Name
      • Next, write a definition for this group so that others may apply it correctly for your project. Note that definitions must be at least 20 characters.
      • Then, select a color to apply to this group label for ease of use / finding in the user interface.
      • If one exists, enter a URL here to a known standard term / ontology entry for this group concept.
        • Example, for group = Sex there is a term in the Darwin Core Standard (DwC) (from Biodiversity Information Standards TDWG) for Sex. You would get this URL http://rs.tdwg.org/dwc/terms/sex from the DwC Terms List from tdwg.org and enter it in the URL field for this term. This ensures the data get mapped / associated with the intended concept on export.
      • Lastly, click Create.
    Manage Biocuration Classes using the Manage Controlled Vocabulary task
    • To add a biocuration class
      • Select Biocuration Class from the menu bar.
      • Give your biocuration class a Name.
      • Next, write a definition for this class so that others may apply it correctly for your project. Note that definitions must be at least 20 characters.
      • Then, select a color to apply to this class label for ease of use / finding in the user interface.
      • If one exists, enter a URL here to a known standard term / ontology entry for this group concept.
        • Example, for class = Female there is a standard term and definition in the Phenotype and Trait Ontology (PATO). You can search PATO for female and you will get this URL http://purl.obolibrary.org/obo/PATO_0000383 to enter in the URL field for this term. This ensures the data get mapped / associated with the intended concept on export.
      • Lastly, click Create.

    Now you can navigate to the New type specimen task

    • Select the type (e.g. holotype, paratype, etc.), this unlocks the Collection object section of the form (see screen shot next).
    New Type Specimen Task options
    • If the type designator is not the same as either the 1) the original citation on the species Protonym or 2) the original citation on the type material record then select the type designator if known. The designator will be inferred from the aforementioned citations otherwise.
    • At present, if you have created a Collecting event, find it by id (the current search is a stub, and very crude), otherwise add verbatim data to the Buffered sections.
      • Buffered data persist with the Collection object, to be transcribed into Collecting events, determinations records, etc. some time downstream in the digitization process.
    • Select the Biocuration classes you want by clicking on a green button (remember green in TaxonWorks means create a record).
      • This creates a record indicating that the collection object is that class. The button will turn red (remember red in TaxonWorks means destroy a record). Clicking a red button will remove that classification from the object.
    • Select a repository
    • Click create. Your record will be added to the right side of the form, you will see it highlighted by type in a light green. That means the form on the left can be used to edit that record.
    • Click New type to add another record (e.g. paratype).
    New Type Specimen task showing Buffered, Repository, and Biocurations sections

    Family group names

    Several categories for the family group name exist:

    • original family group name form;
    • incorrect original family group name form;
    • subsequent family group name form;
    • misspelling. All of them could be added to the database as individual Protonym linked to the correct family group name form (valid or synonym) with a single Taxon Name Relationship, for example Aini is family group name original form of Ainae.

    To simplify the work with family family group names, two sections were added at the botom of Edit task. For each name (valid or synonym), an Original form could be added as well as multiple Subsequen name forms (with citations to the works where those forms were introduced). The two section should simplify working with history of a family-group name, and keeping track of spelling changes and/or historical changes of the taxon rank. It is recommended to track changes of a family-group name at the lovest coordinate rank taxon. For example, if you have a family, subfamily, and tribe based on the same genus name, all history should be added to the protonym at the tribe level (regardless at what level the name was treated in the literature historically).

    Citations

    Incertae sedis

    Incertae sedis implies a relationship between two protonyms. Any time something you want to express references two protonyms you must use a Taxon Name Relationship to express this data.

    • For the name in question select the parent under which it should be placed,
    • then select the relationship.

    Misidentifications

    Misidentifications are a tricky gray area. Remember that we only care about the nomenclatural consequences of the use of the names in question. Taxon Identifications are linkages of OTUs to Collection objects, this is the preferred mechanism for linking one or more identifications to a collection object.

    A question from a user reflects the trickiness:

    1. Imagine there is a genus Aus, with type species Aus bus. Then someone describes a new species Aus cus, which subsequent authors don't even consider to be in the same superfamily. So I cannot enter Aus twice because the second one is a misidentification but no one knows for sure what it is.

    This is just an original genus. This is the same genus in both species. The genus cannot be misidentified. This is just a position of the species in classification, regardless where it was originally described or subsequently placed.

    The proper way to handle this is to use a single Aus, which is placed in the correct family. In both species Aus is the Original genus, in Aus bus, this is also a Parent taxon. In case of Aus cus, if the current genus is not assigned, the superfamily is the parent taxon. An incertae sedis relationship should connect Aus cus and the superfamily.

    1. Species misidentification/misapplication.

    Misapplication itself does not make an available name. But this a common practice to include misapplication in the list of historical usages of the taxon names, especially in the cases where a new name is proposed as a "replacement" for a previously misidentified species. Remember, that nomen novum cannot be proposed for misapplication, since it requires a previously available name, but invalid because of homonymy.

    To record this in TaxonWorks, a new Protonym for a misapplied name should be created in the database. This Protonym should be linked to two other Taxon Names with two Taxon Name Relationships. The first relationship is to an available name with the same spelling (it could be a valid name or a synonym). The relationship type is Misapplication. The second relationship Invalidating relationship should link this TaxonName to the correct name for this taxon. Remember, the Synonym relationship is not applicable here, since it assumes that both names are available name, and in this example Misapplication is not an available name. Follow the soft validation messages for other essential information for the Protonym in the database.

    An example: The name Aus aus Author 1, is a misapplication for Aus bus, and Aus aus Author 2 is a completely different species.

    After the Protonym for the first name is created two relationships will be added in the database:

    • Aus aus Author 1 Misapplication, linked to Aus aus Author 2
    • Aus aus Author 1 Invalid, linked to Aus bus

    Once the misapplication is created, an OTU could be linked to the TaxonName, which could be used, for example, for taxon determination.

    Nomenclature Senarios (aka How-To)

    Add new taxon name

    For this task, be sure you have put the source in the Pinboard and selected it as the default, as this will save a lot of time during the process. Note also, that TW is smart, and as soon as you enter the name, it checks to see if it already has it (see example below).

    UCD Specific Note: UCD@TW has been previously populated with the data from John Noyes’ UCD, so inside the UCD@TW database you will not have to create a root for the taxonomic name tree (that is, there should always be a parent taxon). First, fill out the name of the highest-level taxon that you are creating, and indicate its parent taxon. For example, if you are creating a new genus with 2 new species, first create the genus, and then create the two new species. If one of the two new species is type-species for the genus, you can come back to the genus name and add the type-species later.

    To manually create a new taxon name (e.g. species / genus / family):

    • Select the New Taxon Name card from the Hub.
    Finding the New Taxon Name task card
    • In the New Taxon Name form add the new name and select the parent.
      • Entering a string in the Parent field gives you a list of possible matching names to pick from.
      • The new Name field works similarly to help you avoid adding the same name twice (think about collaborations).
    Partial view of the New Taxon Name task
    Adding new name and selecting the parent in New Taxon Name task
    • Based on the rank of the parent, TW will then ask you to select the precise taxonomic rank of the new name (see below). If everything is correct, hit Create. Once you do this, the rest of the fields related to a new name will appear (see below).
    Check rank of name to be added is correct and click create
    The entire New Taxon Name form options now appear
    • Now you provide the Source (publication) and authors. If you have pinned the source, the pinboard icon will be blue and you can click it to automatically fill in the source details.
    • Then choose Person, and enter enough letters to bring up each author (they should be in the database if they were entered with the source).
      • If the authors of the Source are the same as the authors of the new name, you can click the button to the right Clone from source.
      • If multiple persons pop up that appear to be the same (for example A. Dal Molin and Ana Dal Molin), you can use the Uniquify People task to resolve and merge them (see Scenario: Resolving redundant person name strings, and matching author names with and without diacritical marks).
      • If an author name is not found, you can enter it and add it by clicking the green Add New button. This will add the author to the names table.

    In most cases, for new taxa, you can skip over the Status and Relationship fields.

    • However, if the taxon is a fossil, you should check Fossil in the Status field. The name will now appear with a little cross symbol to the left. There are special rules in ICZN and TW for fossil taxa.

    Notes for Status and Relationship fields.

    • To pick a Status for a name, you note Common ones are listed by default for you to pick from.

      • Pick from the Common list OR
      • Click Advanced to search for a Status not in the Common list and pick it OR
      • Click Show all to get a scrollable list of all Status options possible for the given code (e.g. ICN vs ICZN options will differ) to pick from.
    • To declare a Relationship

      • First go to the Edit Taxon Name record with the lesser status (e.g. the Synonym name)
      • From there, in the Relationship field, search for the name with the higher status (e.g. accepted or valid name).
      • Select the desired name
      • You then get to select the Status of the Relationship for the two names.
      • The result always in TaxonWorks is that you read the result as the lesser status name has Relationship (what ever you selected) to the higher status name. (Not in the other direction).
    The Status and Relationship fields in Add/Edit new taxon name task
    The scrollable Status list resulting when you click Show All

    The Type form is next, which opens up a new form to capture details on the type. We prefer to complete the rest of the New Taxon Name form first, and then do the Type.

    • For new species, the Original Combination will be the same as used in the paper, so Set as Current.

    • Finally you can specify the gender and form of the new name. For species-level names there are four possibilities:

      1. Adjective. Most species epithets are probably treated as adjectives, for example, Signiphora flavella meaning a yellow species. These will change their ending if moved to a genus with a different gender. Names with the suffix “-ensis” (usually referring to a place), change the ending only if put in combination with a genus name that is neuter, in which case it becomes “-ense”.
      2. Noun in Apposition. These don’t change gender when transferred to other genera with a different gender. An example might be a name like Aphelinus mali, named after the common host, the woolly apple aphid. An arbitrary combination of letters is treated as a noun.
      3. Noun in genitive case. These are commonly patronyms, ending in “-i” for males and “-ae” for females.
      4. Participle. A participle is an adjectival form of a verb. These are treated as adjectives, and they must agree in gender with the genus name.
    • There is a text field to capture the Etymology, in most cases you can simply paste this text from the publication.

    • Be sure to Save all the information (green Save button at upper right) before moving to the Type screen. (UCD prefers to enter Type information last, after everything else on this page has been saved).

    In most cases, the Quick type screen will provide all the details you need to enter information on the type, and this is what we show below. However, if you have other information to add for the type, such as Lat/Long data, you will need to use the Comprehensive form.

    In Edit Taxon Name task add type information using Quick or Comprehensive options
    The Quick New Type Specimen form
    The Comprehensive form to add many type specimen details
    • First, pick the nature of the type (for most new species this will be a holotype), provide the source (click blue pin button if source is the default), and the page number(s) on which the type is designated. The rest of the information on the type is filled in with the screen below.

      1. In most cases, the type will be a new specimen, not already in TW as an existing Collection Object. If so, click New.
      2. Paste the label data for the type into Buffered Collecting event. This is a verbatim text field.
      3. In most cases, you can ignore Buffered determinations, and Buffered other labels.
      4. Total is number of specimens (one for a holotype).
      5. Designate the preparation type (pin, slide-mount, there are several choices).
      6. The Repository is the institution where the type is deposited. Hopefully the repository will be in the TW table, otherwise you may need to create it using the Repositories card in the Data portfolio.
      7. Collection Event refers to a specimen already in the TW database, which in most cases will not be the case if you are curating a new species description.
      8. In Biocurations, indicate whether the type is an adult or immature, and a male or female.
    Adding more Type information
    1. Finally, you enter the Identifier for the type, which consists of two parts. Note that this may be different from the repository (a single institution may have several collections, each with a different “namespace”). Think of the namespace as the part of a specimen ID number that does not change for each specimen, for example, TAMU in TAMU x01234567. If the namespace is not in the database, you may need to create it, but since these are shared across projects, there is a good chance it will be there. (See the Glossary for more details)
    • Click to open the Radial Annotator.
    • Select the Identifiers option.
    • For Identifier group, select Local.
    • Next Search for the Namespace of the collection in which the type is deposited.
    • Once you have selected the namespace, paste in the type or specimen number (only) in the Identifier field.
    • Click the green Create button.
    Open the Radial Annotator to add a specimen Identifier in TaxonWorks
    Adding the specimen Identifierinformation

    If you wish to add paratypes (optional), you essentially follow the same process for each one.

    For many contemporary taxa, there may also be a ZooBank number associated with the species. The correct way to enter this is to:

    • Scroll to the top of the Edit Type Specimen page (or Edit taxon name page) and click the Radial Annotator to the right of the blue species name.
      • In this case, the Identifier will be Global.
      • Pick Lsid, and enter the ZooBank accession number in the Identifier box. Note that some publications will provide the link to ZooBank which is not accepted by TW, but not the actual Lsid. In this case, navigate to ZooBank to get the valid Lsid, which will have the following format:

    urn:lsid:zoobank.org:act:5EB72879-1E9C-4A89-BCD8-FF37534B7172

    If the paper does not list an Lsid for the new species, it might be worth a try to find it on the Zoobank.org web site.

    • Be sure to click the green Create button at the bottom of the screen before leaving!

    You show now add any additional information about the new species (or genus) in the publication following the process described next.

    If you are creating a new genus-level or family-level name, the process is similar, but in many ways more simple because the type will be a species name or a genus name, respectively. If the type-species or type-genus name is also new, probably the easiest path would be to create the family-level or genus-level name first, then create the name of the type-species or type-genus, and then return to the new genus-level or family-level name and indicate the type. If you enter an existing name in the New Taxon Name task and select it (assuming it is found), TW will take you to the Edit Taxon Name screen where you can enter the type information.

    After you click Create and Save you should be returned to the Browse Nomenclature page:

    [INSERT SCREENSHOT HERE]

    If you have entered all the information correctly, it should be shown here. Note that the Validation form can serve as a checklist. In this case, we have neglected to enter several items, indicated here. To fix these, the easiest way is hit the Navigate Radial button (3 at upper right) and from here choose Edit. We think the easiest way to proceed from here is to hit the Browse OTUs button (1 at top of screen). This takes you to the summary form for the OTU that you have just created. Note that there is a similar icon on the Browse OTUs page, which will take you back to Browse Nomenclature page. This is an easy way to move back and forth between these two important screens.

    Add / amend type information for a new taxon

    For many older species group names, there will be no information on the type in TW. If you wish to add this information, you will want to have the original description handy, and pin it to the Pinboard. The easiest way to proceed is to use the New type specimen task. You can then follow the steps above for designating a type for a new species.

    HINT: The New type specimen task is also used to add or modify information on types already in the system.

    New synonymy or removal from synonymy (stat. rev.)

    • Find the junior synonym name using the Browse Nomenclature task.
    • Click the Edit icon to navigate to the Edit taxon name page.
    • Enter the senior synonym in the Relationship box. A list of candidate names will come up.
    • Select the correct one and Set to Parent.
      • A list of choices for the synonym relationship will include Subjective synonym, Objective synonym, subsequent Misspelling, and Homonym of.
    • Note that you must also tag this nomenclatural act (new synonymy) to a citation and page number.
      • Click the Radial Annotator icon to the right in the Relationship box, and choose Citations.
      • Enter the Source (use the blue pin key!) and page number(s).
      • If this is the first time the synonymy has been proposed, check the Is Original box.

    Example of Synonymization of subgenera

    Problem: Eremidium had five subgenera that became synonyms. Current state of modified data: Eremidium (Eremidium) has almost all citations, 4 synonyms and 22 species whereas Eremidium has 28 species (the species of the synonyms were moved under the genus). What would be the easiest way to end up with Eremidium without subgenus and all the 50 species?

    The method is to delete the genus and elevate subgenus to the genus level using the following steps. In this way you will preserve most of the data.

    • Rename the genus to something recognizable, e.g. "Eremidiumdelete"
    • Go to the subgenus and change parent and rank to "Eremidium"
    • Synonymize all subgenera to "Eremidium" (previous subgenus)
    • Apply all soft validation fixes
    • Follow the procedure to delete the duplicate e.g. "Eremidiumdelelete".
    • If species remain under Eremidiumdelete, make Eremidiumdelete genus a syn of Eremidium and transfer all the species as suggested. Then delete synonym relationship.
    • Now the children of Eremidiumdelete need to run the soft validation fix to change the parent.

    Transfer species to new parent or not

    If the junior synonym is a genus name, you must then decide if you want to transfer some or all of the species to the new parent.

    • Once you have made the synonymy, TW will present a table called Manage Synonyms. This shows the current parent, and by default, the new parent. You can change the latter to cover cases in which a genus is being split up and the species are being moved to different genera.
      • You can select species individually, or select All of them.
      • At the bottom of the screen click the green Move button. TW will ask you if you are sure you want to do this!

    HINT a la UCD@TW: It is the consenus of UCD@TW curators that if a genus is synonymized under another genus, and the author(s) of the paper do not explicitly treat generic placement of the species formerly contained in it, that all species are considered to belong to the senior synonym, by default.

    Remove name from synonomy

    1. To do this, find the junior synonym and move to the Edit taxon name page as above.
    2. Scroll down to Status and click the Show All button to the right. This brings up a list of all possibilities.
    3. Choose Valid (nested under Available), and then be sure to
    4. enter the Source citation and pagination as above, but this time use the Radial annotator in the right lower corner of the Status box.

    HINT: Note well, after a name has been removed from synonymy using the Valid Status, if that name is moved into synonymy again, first complete the steps to create the new synonymy, then delete the Valid status. This last step is required to show the name in its new, synonymized state.

    New combination

    In an older version of TW, your strategy depended upon whether the combination is really new (that is, the species has previously been placed in that genus), or whether the combination had been used before. Scenarios 1 and 2 below cover those cases, respectively. Both procedures still work, but as of November 2021, there is new functionality on the Edit Taxon Name page that allows you to handle either case. This is shown as option 3 below. Option 3 is probably the easiest, most preferred way to handle all new combinations now.

    For New Combinations.

    • Open the New Combination task, and type in the new combination. TW will bring up a list of candidate genera and candidate species.
      • If you enter a trinomial (for assigning to a subgenus, TW will show 3 sets of names. Pick the correct genus name and species name
      • Click the pinboard icon to paste in the citation, add the page number, and hit Create.
    • Once you have created the new combination, be sure to click the green button to move the species to the new genus.
      • (The only time you would not want to move the species to this genus is if you were entering a historical combination, and the species is not currently classified in that genus). It’s as simple as that!

    Combinations used before.

    • Navigate to the Edit Taxon name page for the species.
    • Change the parent to the current genus (the revived combination).
    • Then move to the Radial annotator to the right of the species name shown in blue at the top right of the screen.
      • Choose citation and enter the source and page number for the paper in which the former combination was revived.

    Option 3 (either use case above)

    • Navigate to the Edit Taxon Name page for the species in its existing combination.
    • Change the parent to the genus in which it has now been placed.
    • Scroll down to the Subsequent combination box. Click Set as current, or drag down the old combination to the species line and enter the genus for the new combination on the genus line.
    • Enter the source and page number of the paper in which the transfer was published and click Create.

    The new combination will be added to the chronological list at the bottom of the box, and it should show in the historical list when you return to the name in Browse Nomenclature.

    If the gender of species is incorrect following the new combination, you may need to change the Gender and form of the species name, and/or the gender of the genus (on the Edit taxon name forms for the species name and genus respectively). This correction can also be made using Click to edit verbatim (use sparingly).

    Revised family placement for a genus or genus placement for a species

    If someone has published a new family-level placement for a genus, recording this is a two step process.

    • Navigate to the Edit taxon name form for the genus.
    • First, change the Parent at the top of the Edit taxon name form to the new family-level taxon.
      • If the family name has not been used at this hierarchical level before, you many need to create the protonym for it first.
    • Second, you must record the source of this change. Scroll to the bottom of the Edit taxon name screen and find the Classification box. Search for the new family-level taxon and Set to Parent.
    • In the Radial annotator that now appears, choose Citation and enter the source and page number where the revised placement was published.

    If you are moving a subfamily, tribe or subtribe to a new family, the process is the same, but you would work from the Edit taxon name screen for the appropriate family-level taxon.

    To move a species to a different genus or subgenus, use the New Combination task Scenario . If you are moving a subfamily, tribe or subtribe to a different family level taxon, but the categorical level of the taxon you are moving does not change, follow the same procedure.

    However, if you are changing the categorical level of a family-group name, the process is more complicated, and you will need to refer to Scenario: Changing rank of a family-level taxon.

    Designate nomen nudum or numen dubium

    • To designate a name as a _nomen nudum_, _nomen dubium_ or as unavailable, navigate to the Status field in the Edit Taxon Name form.
      • The default for this field is valid. Four common choices are shown: Unavailable, Nomen Nudum, Nomen Dubium, and Fossil.
      • Click the All button here brings up a comprehensive list of other possibilities. For unavailable names you should probably look at the entire list and designate the reason the name is not available.
      • Be sure to enter the source and page number for the paper that published this information.

    Homonyms and replacement names

    The most common scenario will be that someone has discovered a junior homonym and provided a replacement name. Here are the steps you would follow. First be sure the source is the default in your pinboard.

    • First create the replacement name using the New Taxon Name task, as described above, entering all information on the authors, citation, etc.
    • Then move to the junior homonym (Browse Nomenclature, click the green Edit button at top right corner).
      • In the Relationships field, enter the senior homonym.
      • You will be given a list of choices, choose Homonym of.
    • Now designate the replacement name. In the Relationships field, enter the replacement name.
      • HINT: Replaced By does not appear in the short list of choices, so either search for it (easiest) or find it in the table of All choices.
      • Enter the citation and page number where the replacement name was published.

    Resolving redundant person name strings, and matching author names with and without diacritical marks

    Often when you enter a person's name string in a search field, such as for authors of a source or taxon, multiple entries will pop up that appear to be the same person, such as A. Dal Molin and Ana Dal Molin. The Uniquify People task provides tools to resolve and merge these.

    • Find one instance of the person in the Select Person field, and
    • Load another instance (probably with different abbreviations of names) in the Match People field. The task will show you information about each person, such as representative publications.
    • If you are sure that they are the same people, you can merge them by clicking the Merge People button.

    Diacritical marks (e.g. umlauts, tildas) on author names pose special problems, as the search engines may not find them. For example, if the author name is Ferrière and you enter Ferriere (without the diacritical mark), the search engine will not find it. The best way to resolve this is to treat Ferriere as an alternate spelling of the name Fèrriere. To accomplish this:

    • Go to the People data card, and pull up the name.
    • In the Radial annotator at the top of the screen, choose Alternate Values
    • Then click the Alternate Spelling tab.
    • Select whether it is the first or last name, enter the alternate spelling, and click Create. Once this is done, the search engine will find the person using either spelling of the name.

    Recording subsequent misspelling of a name

    • First, you need to create the misspelled name using the New Taxon Name task. Do not give it an author.
    • Scroll down to the Relationship field
    • Search for the correctly spelled name
    • Set the correctly spelled name as the Parent, and
    • Choose the Misspelling Of button.
    • Enter the citation (source) for the misspelled name and the page number in the Radial Annotator on the right of the Relationship field.

    Changing rank of a family-level taxon

    This is a multi-step process. You may need to raise or lower the rank of a family-level taxon. The process is the same. Here's an example: let’s assume that we wish to raise the categorical level of the taxon Coccophaginae to family level, Coccophagidae. Here are the steps to follow.

    1. Check to see if Coccophagidae has been used at the family level before (use Browse Nomenclature). If it has, you can skip step 2 below, because the taxon name Coccophagidae already exists in the system.

    2. If the taxon at the family-level (Coccophagidae here) does not exist, navigate to the taxon name Coccophaginae (Browse Nomenclature) and move to the Edit Taxon Name screen to create the name Coccophagidae.

    • The best way to do this is to Clone the subfamily level name (green button in upper right), as this will retain the author and date, type genus, and other historical information.
    • Select all the boxes to retain all historical information and type CLONE in the box. This will active the green Clone button. Note that you are creating a taxon name here, not an OTU, which is a separate issue.
    1. You are now on the Edit taxon name page for the cloned name.
    • Change the family ending suffix to “idae”, or Coccophagidae.
    • Now change the parent. In this case, it will now be Chalcidoidea.
    • Then Show all ranks, and pick Family.
    1. To record who made the change in categorical level:
    • Scroll down to the Classification field
    • Click Set to Parent (which will pick up Chalcidoidea from above), if the current classification is correct. Otherwise, type in the correct parent.
      • Below the field will be two choices, Incertae Sedis and Classified As. Pick Source Classified As.
    • Enter the source and page number for the publication in which the change was made (in this case, elevation of Coccophaginae to Coccophagidae).
    1. Now you need to make the appropriate changes to the nominate subfamily taxon, the subfamily Coccophaginae in this example.
    • Navigate to the Edit Taxon Name form for Coccophaginae.
    • Change the parent here to the new family-level name, in this case, Coccophagidae.
    1. Next, scroll down to the Relationships field.
    • Enter the new family-level name (Coccophagidae), and
    • show all possible choices (blue box to right).
      • Choose Family Group Name, Original Form Of from the menu of choices (it is below Usage which is below Unavailable or Invalid, linked to).
    • Enter the source and page number, as always.
    1. At this point, a Manage Synonymy screen will appear. This provides a dashboard for assigning the classification of all taxa subordinate to the family name (children, in other words).

    2. Below the Manage Synonymy screen you will find the Classification screen.

    • Type in new Parent (Coccophagidae in this example), and
    • Choose Source Classified As.
    • Enter the citation and page number for the appropriate publication.

    Changing rank of a genus-level taxon or species-level taxon

    Example: to elevate a subgenus to genus level:

    • First Navigate to the name of the subgenus and click on the Edit taxon name tool.
    • Change the parent as appropriate (family, subfamily, tribe etc.) and
    • Change the rank to genus.

    Next, how to record the citation? Note well, classification relationships should be used only above the genus level.

    For making any changes in rank at the genus level and below use the New Combination task: (explained in the New Combination Scenario). There is still a 2-part process required at the moment.

    1. Create the combination (using the New Combination task), e.g. Camptoptera (Eofoersteria), and add the citation for same there.
    2. Update the classification by changing the parent for the "now" subgenus. You will be required to manually select the rank, (e.g. subgenus)

    One should be aware that UCD@NHM did not use subgeneric names, they were treated as synonyms of the parent genus. However, if species names were originally described in a subgenus, the original combination was recorded and will show in UCD@TW as a combination, as in the following example:

    INSERT Screenshot

    If you are working with a genus in which a subgeneric classification has been used, you have the following options:

    1. You can create all of the subgeneric names, or find them and treat them as valid children of the appropriate genus. Nominate subgeneric names can be created by cloning the genus name and changing rank (see examples for subfamilies above, section 4.14). Whether or not you want to take the time to do this is up to you and your colleagues, but the tools are there in UCD@TW and in TaxonWorks generally.

    2. You can continue to treat the subgenera as junior synonyms of the parent genus. However, if you curate a paper in which a species is originally described in a subgenus, you should be sure to enter both the Genus and Subgenus names in the Original Combination and Rank section of Edit Taxon Name.

    3. If you want to record historic subgeneric placement, use the New Combination task.

    Species groups

    These are used in many genera of chalcidoids as informal grouping of species without nomenclatural rank or status. UCD@TW provides the tools to treat these formally (as superspecies which is what the ICZN recommends) but it will not display them as such in Browse Nomenclature. However, the consensus in the UCD project seems to be that it is preferable to leave species groups as informal groupings without nomenclatural baggage. How then to indicate or record assignment to species groups? There are several options, each of which has strong and weak points. It is a "policy decision". You will have to decide which option works best for your group.

    One.

    • Add the species group designation to the OTU name field using the edit OTU function. The OTU can remain linked to the original taxonomic name. It will display as follows, every time the OTU name is displayed:

    INSERT screenshot

    Two.

    You will need to use a data attribute with the Predicate name species group and add the predicate as a default option to the OTU display.

    • First, create a new Predicate using the Manage Controlled Vocabulary task.
    • Provide a definition and choose a color.
    • Next, go to Project (upper right corner of any screen)
    • Choose Edit Preferences under Edit (upper left corner of screen)
    • Select OTU, scroll down toSpecies Group and select it.

    Now the Predicate is created and will be available for any OTU and can be designated where needed.

    • Second, Browse to a particular OTU and choose Data Attributes in the Radial annotator.
    • Type species group in the Select a Predicate box, the name of the species group in the Value box, and click the green Create button.
    • If you want to associate this placement with a literature citation, enter it using the citations button to the right of the species group name at bottom of the screen.

    Once you have completed Step One above, the Predicate will be available for any OTU, you can designate them using Step Two.

    Three.

    • Create a Tag for each species group in Manage Controlled Vocabulary,
    • Apply the tag to the OTU using the Radial annotator. This will allow you to pull up all OTUs assigned to a particular species group in the Radial annotator.
    • Note well, however, the downside is that the tags will appear in the list for everyone in the project.

    Four.

    • Create a matrix of OTUs for each species group.

    About tribes and subtribes

    Again, using the UCD@NHM Project as an example, they did not formally recognize taxonomic levels between genera and subfamilies. Names of tribes and subtribes were treated as junior synonyms of their respective families. However, tribal and subtribal classifications are currently used in many families of chalcidoids. If you wish to incorporate these into classifications in UCD@TW, steps to follow are describe below. First, you must determine if the tribal or subtribal form of the name is in UCD@TW, treated as a synonym of the subfamily. See the entire scenario next.

    One.

    • To determine if the tribal or subtribal form of the name is in UCD@TW and treated as a synonym of the subfamily, go to Browse Nomenclature, search for the name, for example, Coccophagini.
      • Be sure that you do not have the redirect to valid name box checked!
      • If you get a result showing the tribe (or subtribe) name in a black box to the right of the subfamily name (see below), the tribal form is in TW treated as a synonym of the subfamily.

    In most cases, if the tribe or subtribe name has been used in the literature, it will show up as a synonym of the nominate subfamily. If it does not, you will need to create it, so skip to section Five below.

    • Navigate to the name with the tribal name at right (not to the valid form of the subfamily name, which may come up without the tribe name in the black box). It will be shown as an invalid synonym of the subfamily.
    • Click the green Edit icon to move to the Edit Taxon Name form.
    • Show all ranks in the Basic Information form and pick tribe.
    • Then change the suffix from -inae to -ini and pick the appropriate parent.

    Two.

    • Scroll down to Status, Show All, and select Valid.
    • Provide the citation and page number using the Radial annotator to the right.

    Three.

    • If you wish to provide a citation for this usage of the name, scroll down to Classification, choose Set to Parent (in this case it would be Coccophagini)
    • Choose Source Classified As.

    Four.

    • One more (obsure) task remains. Using the Navigate Radial icon to the right of the tribal name at the top of the page, choose Show
    • Then choose Edit in the menu bar at the top of the next screen. This takes you to an older version of the Edit Taxon Name form.
    • If a name appears in the Verbatim Name field at the bottom of the screen (like Coccophaginae ), deleteit and click the greenUpdate Taxon Name` button. This removes an artifact created when tribal or subtribal names were imported as synonyms from TW@NHM.

    Continue from this point only if the tribal or subtribal form of the name did not show up as synonym when you searched for it in step One above. Most likely, in this case it has not been used at this hierachical level before. If it does not show up, create it using the following process.

    Five.

    • Navigate to the taxon name at the subfamily level, for example, Coccophaginae (via Browse Nomenclature) and move to the Edit Taxon Name screen.
    • Create the name at the tribal or subtribal level, for example, Coccophagini. The best way to do this is to Clone the subfamily level name (see green button in upper right), as this will retain the author and date, type genus, and other historical information. Select all the boxes to retain all historical information and type CLONE in the box. This will active the green Clone button. Note that you are creating a taxon name here, not an OTU, which is a separate issue.

    Six.

    • Navigate to the tribal (or subtribal) name in Browse Nomenclature and move to the Edit Taxon Name screen.
    • Pick the rank (tribe) and change the ending to -ini.
    • Change the parent. In this case, the parent of Coccophagini would be Coccophaginae.

    Seven.

    • Under Classification, set to parent (Coccophaginae) and choose Source Classified As.
    • Use the Radial annotator to the right to enter a citation for the publication and page number of the paper in which the tribe was recognized or moved.

    Eight.

    • The problem with this approach is that all of the children of Coccophaginae will have been transferred to Coccophagini. If some of these genera belong to another tribe, you will need to create any such tribe, using the steps above, and transfer the genera, one by one.

    Taxon classified as Incertae Sedis

    • First navigate to the appropriate taxon name
    • Click the green Edit Taxon Name button.
    • Change the parent to the higher level taxon in which the taxon has been classified as Incertae Sedis.
    • Navigate down to the Classification field
    • Click Set to Parent, and choose Incertae Sedis.
    • Then record the source and page number in which the classification was made using the Radial annotator to the right.

    Species name endings changing due to movement to another genus, or correction by publication

    For some name:

    A - start (origin)
    B - current -> current classification
    change the parent here -> everything looks more or less right
    C - second move
    preserve "b"

    A - Protonym
    B - Combination
    C - Parent (Combination)

    From a practical standpoint, when a name changes, use New Combination task. Why?

    1. It lets you create the new combination just by typing in the string
    2. Having that combination, even if its just a B, pre-adapts you for C's. This gives you the historical record.
    3. In the New Combination task, after the combination has been created, there is an option to easily move the name to the correct parent

    Considerations vs. line endings.

    1. In the New combination task you will find/pick the species in its original latin form
    • If that name has gendered data with it
      • and the new genus has gendered data with it
        • Then conjugation of the species name will automatically be rendered correctly in the new combination, and in reference to the new Parent (after you do 3) above)
      • To pre-adapt your steps above being easy, follow best practices and add the gendered information at the time of entry of a Protonym.

    Never just change parent, always go the Combination route. (i.e. 2) above).

    Example use case of name ending corrected by subsequent publication:

    • Species published with incorrect ending
      • Name is always the original form, latinized, never changed
    • Author "corrects" the ending in a subsequent publication
      • Key information: in this case there is no second Protonym, the gender ending correction happens automagically
      • Key trick: to add a citation with this "fixed" data you must create a new Combination, and cite it. You must compose the combination with the same protonym that was "misspelled"
    • Key bits of making new combinations
      • Think about making your new combination by finding
        • Protonyms in the original combination
      • Remember if you type in a gendered ending, and no suggestions are found, you can always click to search directly by the original combination, or to track down the protonym in the taxon name autocomplete.
      • For all of the above to work, the Gender and form section of the Edit Taxon Name form on the original protonym must be filled in.

    Species synonymized with two or more other species

    • A name is published.
    • A type series is used (i.e. there is no holotype)
    • The type series is found to represent two different species.
    • The author says "we're stating this is two different species, and synonymizing the original name under two other names, but not selecting a holotype. If a future worker selects a holotype, our actions here may need to be changed again" (alternatively, author may synonymize the species in partim).
      • Recommendation: Do nothing (do not post the two synonymies in TW) but add a citation and note, there are no governed consequences to manage.
      • If you did have specimen catalog numbers then you could create 2 OTUs, each with the same species name, pre-adapting the data to receive new names for the new names if they come out.
      • Recommendation 2: Use a Nomen Dubium status and attach a citation to this.

    Junior synonym conserved by ICZN decision (i.e. senior synonym suppressed)

    • Start at the Edit Taxon Name form for the suppressed name (senior homonym).
    • Under the Relationship section type in the suppressed name
    • And using the Show all button, select suppressed under.
    • Cite this.
    • Next, go to the Edit Taxon Name form for the junior homonym.
    • Under the Status section, use the Show all button to find official list of specific names in zoology and select valid.
    • NB: use the Advanced button if for some reason the Show all button is grayed out.
    • Cite this.

    Entering names with incorrect endings for their taxonomic level

    One method:

    • Create name using correct ending, Save.
    • Designate as Not Latin under status.
    • Change the name ending to the form wanted, Save.

    Second method:

    • Create name. Using navigation radial, go to Show.
    • Click on Edit
    • Scroll down to bottom of form to Verbatim field and type in name as it was originally published.
    • Click Update Taxon Name

    Third method:

    • Create the name. Click on Edit to get to Edit taxon name form.
    • Click onClone.
    • Select Add invalid relationship.
    • Type clone and then click the Clone button.
    • Edit the Relationship field and select Family Group Name Form.

    What about fossil taxa in TaxonWorks?

    • If the taxon is a fossil, you need to select Fossil in the Status field of the New (Edit) Taxon name task. The name will now appear with a little cross symbol to the left.

    There are special rules in ICZN and TW for fossil taxa. From Article 1 of the ICZN Code "1.2.1. The scientific names of extant or extinct animals include names based on domesticated animals, names based on fossils that are substitutions (replacements, impressions, moulds and casts) for the actual remains of animals, names based on the fossilized work of organisms (ichnotaxa), and names established for collective groups (see, in particular, Articles 10.3, 13.3.2, 23.7, 42.2.1, 66.1, 67.14), as well as names proposed before 1931 based on the work of extant animals."

    Note well that for simplicity in TW, the flag fossil = extinct is set to true by default. If the taxon name is based on a fossil remnant or cast or animal evidence trace, the organismal group may not be extinct. In this case, unselect the flag.

    Can you describe how the authorship label for a name is determined?

    Authorship of a name can asserted in 4(!) different ways. That seems confusing at first, but determining what gets shown is pretty straightforwrd.

    The authorship label is determined by the FIRST option in the following list that is true. All other values are referenced only in validation reports.

    • If the verbatim name field is filled out, then it is used.
    • If People are assigned as TaxonName authors, then their family names are used.
    • If People are assigned to a Source as authors, and that Source is the original source for the taxon name, then their family group names are used.
    • If the author field of a Source is filled out, then that field is used.

    There are a lot of options for assigning the authorship of a TaxonName, which is the preferred way?

    The preferred mechanism is to link the TaxonName to a Source, and assign authors (People) to that source (third option in the list above). This is the most granular way of creating the data, and therefor it will ultimately give you the most flexibility in reporting and validating the data.

    Do you have any instructions on how to change combinations or enter new synonymies in TW?

    Please follow the instruction in the Nomenclature Basics.

    How do I find out where types are deposited, do you not yet have this function in TW?

    Specimen deposition could be assigned to Specimen. If you create the type specimen for the Taxon Name, there is a field for the type repository. To create the type specimen follow one of the links provided in the Edit Taxon Name task, either Quick or Comprehensive in the Type section. Quick type specimen task allow to copy the entire verbatim-label information. The Comprehensive collection object allow to provide more detailed information about the specimen.

    How do I get to the place in TW where I can add a new basionym? I need to try it out and see what happens.

    For ICN names, the basionym have to be creaed as a separate protonym and linked to current name with basionym TaxonNameRelationship For ICZN names, the original combination of protonym is an equivalent of basionym in botany.

    How would I remove a name from synonymy?

    You can symply delete the Synonym Taxon Name Relationship. But when the name has been historically treated as a synonym, and subsequently was restored, the best practice would be to preserve both treatments in the database. Keep the synonym Taxon Name Relationship with its original citation in the database. Add the nomenclatural Status Valid to the name. This status will overwrite the Taxon Name relationship. Please remember to add the citation to the status, to know where and when the name was reinstated.

    What is the word form for "arbitrary combination of letters"?

    The word form is "noun in apposition"; etymology "arbitrary combination of letters"

    How to record in the database a situation when a taxon, species or genus, is moved from one family to another?

    Edit TaxonName task has a special section for this, Classification. Select the family-group name, and the relationship Classified as. This could be used for original placement of the taxon, or for the subsequent classification. Once the Taxon Name Relationship is created, assigne the citation using the radial annotator.

    How to record a nomen nudum that was "subsequently validated"?

    ICZN does not provide a procedure to "validate" a nomen nudum. Once unavailable, the taxon name keeps this status. The taxon could be described in a subsequent publication by the same or a different author(s), with the same or a different spelling. Both names in TaxonWorks should be regarded as separate protonyms. Nomen nudum should be marked with one or several of the appropriate nomenclatural statuses: nomen nudum or, preferrably, a more specific one, for example nomen nudum: no description. Once the valid name is described and the second protonym is entered to the TaxonWorks database, the nomen nudum could be linked to the available name (valid or invalid) with a TaxonName Relationship "unavailable or invalid".

    How to enter the author for misspelled name?

    The name which is not spelled correctly, the original source, where the misspelling was introduced, is still required. The role is not require, because the author string is always generated from the correctly spelled protonym. Protonym of misspelled name is linked to the correctly spelled name with the Misspelling TaxonNameRelationship.

    How can I record the history of the taxon which had several historical Incertae sedis placements?

    The incertae sedis relationship always correspond to the current placement of the taxon. For example, a species assigned to the family, instead of proper genus as a parent. Normally, this will be marked as an invalid placement, the incertae sedis relationship helps to override the error. For historical placements, a different relationship should be used: source classified as.

    Another protonym with the original spelling should be created in the database. Clone button could be used to replicate all information from the current family-group name. This new taxon name should be linked to the original name using special Taxon Name Relationship Incorrect original spelling or Family group name original form. TW could be restrictive in the ending of the original name before you assigne the relationship, so it is recommended to save the Taxon Name with the proper ending, add the ralationship and return back to modify the Name to the original form. And save Taxon Name again. Assigning the relationship removes the restriction on the family-group name form and ending.

    What protonyms do I need to create for each form of the family-group name?

    Individual protonyms should be created for original and each subsequent form of the family group name. Each protonym should be linked to the current form with the "Family-group name form" or "Family-group name original form" relationships

    To which ranked Protonym do I attach the type genus?

    The type genus shoild be attached to any available family-group protonym.

    Do I have to re-attach the type genus to each family group protonym?

    If there are several coordinate names with the same type genus (for example, a family with nomynopypical subfamily), the same type could be automatically assigned from one to another through the Soft Validation fixes.

    Do I have to create nominotypical subgenus or subspecies manually?

    When a new subgenus or subspecies created and the parent taxon does not contain any other sub- taxa, you can see the soft validation message like this: "The parent species of this subspecies does not contain nominotypical subspecies". TaxonWorks can detect and created the nominotypical subgenus and subspecies automatically when running Soft validation fixes, but now it could only be done programmatically. Before the fix is implemented to the interface, it is advisable to created the missing subgenus or subspecies manually.

    To which rank should I attach the type species in cases where nominotypical genera exist, genus, or subgenus? What if I have done the opposite?

    The type species should be attached to each available protonym. If the type species is attached to either genus or subgenus, it could be automatically re-assigned to the other through Soft Validation Fixes.

    Does the attachment of the type species differ if the nominotypical subgenus came with, or after the original description of the genus?

    According to the ICZN Art. 43, a name established for a taxon at either rank in the genu-group is deemed to have been simultaneously established by the same author for a nominal taxon at the other rank in the group; both nominal taxa have the same type species, whether it was fixed originally or subsequently. Changes in the rank also do not affect the type genus designation.

    I have a species which was originally described in genus which obviously lies outside the scope of my group. How can I use this genus in the original combination?

    The genus name have to be entered into the classification before the use. It may have to Root assigned as the parent, or, preferrably, the basic classification (class, order, family) could be provided as well.

    Do I have to create a nominotypical subspecies?

    See the description above for the nominotypical subgenus.

    Which ranked name should I attach the type material to, species, or subspecies?

    The type material could be attached to the coordinate taxon of any rank (species, subspecies, superspecies). The Soft Validation Fix will help to re-attache the same specimen to different ranks. Multiple specimens should not be created.

    When creating protonym, what names should I put in Original combination fields?

    When selecting Original genus for a species, sometimes two options are available: a valid genus name and coordinate subgenus with the same name("Aus" and "Aus (Aus)"). In cases like this the preference should always be given to the lower coordinate taxon name ("Aus (Aus)"). If the genus name is selected instead, you will get a soft validation waring "Original Combination: Relationship should move from genus to subgenus". This is not a critical error. TaxonWorks can detect and automatically move the relationship from a genus to coordinate subgenus. But at the present implementation, it could only be done programmatically.

    How do delete a duplicate Taxon Name?

    • In the future, we expect an interface to to merge two records. But it is not available at the moment
    • A taxon name could only be deleted if it does not have any associated record. All of those have to be deleted or reassigned before a TaxonName could be deleted. Suggestion, select one of two duplicate which has lower number of associated data (citations, relationships, otus, etc.)
      • First, rename a TaxonName so you can isolate it from the name, which stays in the database. for example, if you have species name 'aus', change the name to 'ausdelete', so you can use the filter functionality to quickly navigate to the name.
      • Delete associated OTU. In the Browse Nomenclature, check if the name has an OTU, if present you can see it in the summany at the top right. If you follow the link, you will get to the OTU page. before deleting OTU. You can check if it has any data using OTU Radial, for example distribution, if it does, you can reassing the OTU to another TaxonName in the Edit mode, just select the other of two duplicates. If the OTU does not have related date, it could be safly deleted.
      • On the duplicate TaxonName page go to Edit mode. In this interface, look at any Statuses, Relationships, Original or Subsequent combinations, Gender or Part of Speech, Type species, etc. If anything is present, it should be deleted, all of those will prevent TaxonName from being deleted. Once everething is cleared, try to use Delete button. The duplicate name may get deleted.
      • If the TaxonName is still not deletable, it means that still there are some related records, which need some resolution. One of the common problem could be that a genus name, for example, is used as a Original genus or a genus name in a subsequent combination. To see if this is the case, use the Radial Navigator button and Related sector. It can redirect you to the interface which shows all TaxonName relationships (original and subsequent combinations, where this name is used). You can change all of them one by one, selecting the appropriate taxon, but there is also a helper task: Merge Taxon Names which could help to move all relationships from one TaxonName to another. Select from Taxon Name and To Taxon Name. and Proceed.
      • You can use the Radial Navigator button and Related sector to verify that everything is moved. You can try to delete TaxonName again.
      • If TaxonName could not be deleted, check what else is present in Related, see if there are still some relationship left in the list, which need to be resolved manually. Potential problem may also come from the Collection Object where the name is used for the type specimen, holotype, for example, if present, reassigne to another name, once the Relatead is cleare, the TaxonName could be safely delete.
      • The things which could be deleted together with a TaxonName (they do not block deletion): authors, citations, data attributes, notes, tags, depictions, and other attributes, those if present will be deleted automatically together with TaxonName.
    ',369);function f(g,y){const t=i("RouteLink");return c(),n("div",null,[h,u,m,e("p",null,[o("TW provides a suite of common tasks help you to manage your nomenclatural and related data. This section assumes you have some familiarity with the "),s(t,{to:"/guide/Manual/conventions.html"},{default:r(()=>[o("TW user interface conventions")]),_:1}),o(" and introduces new user interface features where needed. Next, please familiarize yourself with the kinds of tasks TW offers related to Nomenclature.")]),p])}const w=a(d,[["render",f],["__file","nomenclature.html.vue"]]),v=JSON.parse('{"path":"/guide/Manual/nomenclature.html","title":"Nomenclature","lang":"en-US","frontmatter":{"sidebarPosition":400},"headers":[{"level":2,"title":"Nomenclature Quick Start","slug":"nomenclature-quick-start","link":"#nomenclature-quick-start","children":[{"level":3,"title":"Nomenclature, not biology!","slug":"nomenclature-not-biology","link":"#nomenclature-not-biology","children":[]},{"level":3,"title":"Finding Nomenclature Tasks","slug":"finding-nomenclature-tasks","link":"#finding-nomenclature-tasks","children":[]},{"level":3,"title":"Navigation helpers","slug":"navigation-helpers","link":"#navigation-helpers","children":[{"level":4,"title":"Hotkeys","slug":"hotkeys","link":"#hotkeys","children":[]}]}]},{"level":2,"title":"Understanding the data model","slug":"understanding-the-data-model","link":"#understanding-the-data-model","children":[]},{"level":2,"title":"Curating data","slug":"curating-data","link":"#curating-data","children":[{"level":3,"title":"Basic information","slug":"basic-information","link":"#basic-information","children":[]},{"level":3,"title":"About Root","slug":"about-root","link":"#about-root","children":[]},{"level":3,"title":"Conceptual approach","slug":"conceptual-approach","link":"#conceptual-approach","children":[]},{"level":3,"title":"Authorship","slug":"authorship","link":"#authorship","children":[{"level":4,"title":"ICZN","slug":"iczn","link":"#iczn","children":[{"level":5,"title":"Parentheses around author/year","slug":"parentheses-around-author-year","link":"#parentheses-around-author-year","children":[]},{"level":5,"title":"Year of publication (availability) versus stated year","slug":"year-of-publication-availability-versus-stated-year","link":"#year-of-publication-availability-versus-stated-year","children":[]}]}]},{"level":3,"title":"Nomenclatural Status","slug":"nomenclatural-status","link":"#nomenclatural-status","children":[{"level":4,"title":"Example 1: Nomen nudum","slug":"example-1-nomen-nudum","link":"#example-1-nomen-nudum","children":[]}]},{"level":3,"title":"Relationship","slug":"relationship","link":"#relationship","children":[{"level":4,"title":"Example 1: Synonymy","slug":"example-1-synonymy","link":"#example-1-synonymy","children":[]},{"level":4,"title":"Example 2: Homonomy","slug":"example-2-homonomy","link":"#example-2-homonomy","children":[]},{"level":4,"title":"Example 3: Misapplication","slug":"example-3-misapplication","link":"#example-3-misapplication","children":[]},{"level":4,"title":"Misspelling","slug":"misspelling","link":"#misspelling","children":[]}]},{"level":3,"title":"Original combinations","slug":"original-combinations","link":"#original-combinations","children":[]},{"level":3,"title":"Citing the original combination","slug":"citing-the-original-combination","link":"#citing-the-original-combination","children":[{"level":4,"title":"Method 1 (original combination different from the current combination)","slug":"method-1-original-combination-different-from-the-current-combination","link":"#method-1-original-combination-different-from-the-current-combination","children":[{"level":5,"title":"Entering misspelled names","slug":"entering-misspelled-names","link":"#entering-misspelled-names","children":[]}]},{"level":4,"title":"Method 2 (when the original combination is the same as the current combination)","slug":"method-2-when-the-original-combination-is-the-same-as-the-current-combination","link":"#method-2-when-the-original-combination-is-the-same-as-the-current-combination","children":[]}]},{"level":3,"title":"Type metadata","slug":"type-metadata","link":"#type-metadata","children":[{"level":4,"title":"Genus and Family group names","slug":"genus-and-family-group-names","link":"#genus-and-family-group-names","children":[]},{"level":4,"title":"Species group names","slug":"species-group-names","link":"#species-group-names","children":[]}]},{"level":3,"title":"Family group names","slug":"family-group-names","link":"#family-group-names","children":[]},{"level":3,"title":"Citations","slug":"citations","link":"#citations","children":[{"level":4,"title":"Incertae sedis","slug":"incertae-sedis","link":"#incertae-sedis","children":[]},{"level":4,"title":"Misidentifications","slug":"misidentifications","link":"#misidentifications","children":[]}]}]},{"level":2,"title":"Nomenclature Senarios (aka How-To)","slug":"nomenclature-senarios-aka-how-to","link":"#nomenclature-senarios-aka-how-to","children":[{"level":3,"title":"Add new taxon name","slug":"add-new-taxon-name","link":"#add-new-taxon-name","children":[]},{"level":3,"title":"Add / amend type information for a new taxon","slug":"add-amend-type-information-for-a-new-taxon","link":"#add-amend-type-information-for-a-new-taxon","children":[]},{"level":3,"title":"New synonymy or removal from synonymy (stat. rev.)","slug":"new-synonymy-or-removal-from-synonymy-stat-rev","link":"#new-synonymy-or-removal-from-synonymy-stat-rev","children":[{"level":4,"title":"Example of Synonymization of subgenera","slug":"example-of-synonymization-of-subgenera","link":"#example-of-synonymization-of-subgenera","children":[]},{"level":4,"title":"Transfer species to new parent or not","slug":"transfer-species-to-new-parent-or-not","link":"#transfer-species-to-new-parent-or-not","children":[]},{"level":4,"title":"Remove name from synonomy","slug":"remove-name-from-synonomy","link":"#remove-name-from-synonomy","children":[]}]},{"level":3,"title":"New combination","slug":"new-combination","link":"#new-combination","children":[]},{"level":3,"title":"Revised family placement for a genus or genus placement for a species","slug":"revised-family-placement-for-a-genus-or-genus-placement-for-a-species","link":"#revised-family-placement-for-a-genus-or-genus-placement-for-a-species","children":[]},{"level":3,"title":"Designate nomen nudum or numen dubium","slug":"designate-nomen-nudum-or-numen-dubium","link":"#designate-nomen-nudum-or-numen-dubium","children":[]},{"level":3,"title":"Homonyms and replacement names","slug":"homonyms-and-replacement-names","link":"#homonyms-and-replacement-names","children":[]},{"level":3,"title":"Resolving redundant person name strings, and matching author names with and without diacritical marks","slug":"resolving-redundant-person-name-strings-and-matching-author-names-with-and-without-diacritical-marks","link":"#resolving-redundant-person-name-strings-and-matching-author-names-with-and-without-diacritical-marks","children":[]},{"level":3,"title":"Recording subsequent misspelling of a name","slug":"recording-subsequent-misspelling-of-a-name","link":"#recording-subsequent-misspelling-of-a-name","children":[]},{"level":3,"title":"Changing rank of a family-level taxon","slug":"changing-rank-of-a-family-level-taxon","link":"#changing-rank-of-a-family-level-taxon","children":[]},{"level":3,"title":"Changing rank of a genus-level taxon or species-level taxon","slug":"changing-rank-of-a-genus-level-taxon-or-species-level-taxon","link":"#changing-rank-of-a-genus-level-taxon-or-species-level-taxon","children":[]},{"level":3,"title":"Species groups","slug":"species-groups","link":"#species-groups","children":[]},{"level":3,"title":"About tribes and subtribes","slug":"about-tribes-and-subtribes","link":"#about-tribes-and-subtribes","children":[]},{"level":3,"title":"Taxon classified as Incertae Sedis","slug":"taxon-classified-as-incertae-sedis","link":"#taxon-classified-as-incertae-sedis","children":[]},{"level":3,"title":"Species name endings changing due to movement to another genus, or correction by publication","slug":"species-name-endings-changing-due-to-movement-to-another-genus-or-correction-by-publication","link":"#species-name-endings-changing-due-to-movement-to-another-genus-or-correction-by-publication","children":[]},{"level":3,"title":"Species synonymized with two or more other species","slug":"species-synonymized-with-two-or-more-other-species","link":"#species-synonymized-with-two-or-more-other-species","children":[]},{"level":3,"title":"Junior synonym conserved by ICZN decision (i.e. senior synonym suppressed)","slug":"junior-synonym-conserved-by-iczn-decision-i-e-senior-synonym-suppressed","link":"#junior-synonym-conserved-by-iczn-decision-i-e-senior-synonym-suppressed","children":[]},{"level":3,"title":"Entering names with incorrect endings for their taxonomic level","slug":"entering-names-with-incorrect-endings-for-their-taxonomic-level","link":"#entering-names-with-incorrect-endings-for-their-taxonomic-level","children":[]},{"level":3,"title":"What about fossil taxa in TaxonWorks?","slug":"what-about-fossil-taxa-in-taxonworks","link":"#what-about-fossil-taxa-in-taxonworks","children":[]},{"level":3,"title":"Can you describe how the authorship label for a name is determined?","slug":"can-you-describe-how-the-authorship-label-for-a-name-is-determined","link":"#can-you-describe-how-the-authorship-label-for-a-name-is-determined","children":[]},{"level":3,"title":"There are a lot of options for assigning the authorship of a TaxonName, which is the preferred way?","slug":"there-are-a-lot-of-options-for-assigning-the-authorship-of-a-taxonname-which-is-the-preferred-way","link":"#there-are-a-lot-of-options-for-assigning-the-authorship-of-a-taxonname-which-is-the-preferred-way","children":[]},{"level":3,"title":"Do you have any instructions on how to change combinations or enter new synonymies in TW?","slug":"do-you-have-any-instructions-on-how-to-change-combinations-or-enter-new-synonymies-in-tw","link":"#do-you-have-any-instructions-on-how-to-change-combinations-or-enter-new-synonymies-in-tw","children":[]},{"level":3,"title":"How do I find out where types are deposited, do you not yet have this function in TW?","slug":"how-do-i-find-out-where-types-are-deposited-do-you-not-yet-have-this-function-in-tw","link":"#how-do-i-find-out-where-types-are-deposited-do-you-not-yet-have-this-function-in-tw","children":[]},{"level":3,"title":"How do I get to the place in TW where I can add a new basionym? I need to try it out and see what happens.","slug":"how-do-i-get-to-the-place-in-tw-where-i-can-add-a-new-basionym-i-need-to-try-it-out-and-see-what-happens","link":"#how-do-i-get-to-the-place-in-tw-where-i-can-add-a-new-basionym-i-need-to-try-it-out-and-see-what-happens","children":[]},{"level":3,"title":"How would I remove a name from synonymy?","slug":"how-would-i-remove-a-name-from-synonymy","link":"#how-would-i-remove-a-name-from-synonymy","children":[]},{"level":3,"title":"What is the word form for \\"arbitrary combination of letters\\"?","slug":"what-is-the-word-form-for-arbitrary-combination-of-letters","link":"#what-is-the-word-form-for-arbitrary-combination-of-letters","children":[]},{"level":3,"title":"How to record in the database a situation when a taxon, species or genus, is moved from one family to another?","slug":"how-to-record-in-the-database-a-situation-when-a-taxon-species-or-genus-is-moved-from-one-family-to-another","link":"#how-to-record-in-the-database-a-situation-when-a-taxon-species-or-genus-is-moved-from-one-family-to-another","children":[]},{"level":3,"title":"How to record a nomen nudum that was \\"subsequently validated\\"?","slug":"how-to-record-a-nomen-nudum-that-was-subsequently-validated","link":"#how-to-record-a-nomen-nudum-that-was-subsequently-validated","children":[]},{"level":3,"title":"How to enter the author for misspelled name?","slug":"how-to-enter-the-author-for-misspelled-name","link":"#how-to-enter-the-author-for-misspelled-name","children":[]},{"level":3,"title":"How can I record the history of the taxon which had several historical Incertae sedis placements?","slug":"how-can-i-record-the-history-of-the-taxon-which-had-several-historical-incertae-sedis-placements","link":"#how-can-i-record-the-history-of-the-taxon-which-had-several-historical-incertae-sedis-placements","children":[]}]},{"level":2,"title":"FAQ related to family-group names","slug":"faq-related-to-family-group-names","link":"#faq-related-to-family-group-names","children":[{"level":3,"title":"Is it possible to link a note to a family group name to specify what the original spelling is, at what level it was proposed and when?","slug":"is-it-possible-to-link-a-note-to-a-family-group-name-to-specify-what-the-original-spelling-is-at-what-level-it-was-proposed-and-when","link":"#is-it-possible-to-link-a-note-to-a-family-group-name-to-specify-what-the-original-spelling-is-at-what-level-it-was-proposed-and-when","children":[]},{"level":3,"title":"What protonyms do I need to create for each form of the family-group name?","slug":"what-protonyms-do-i-need-to-create-for-each-form-of-the-family-group-name","link":"#what-protonyms-do-i-need-to-create-for-each-form-of-the-family-group-name","children":[]},{"level":3,"title":"To which ranked Protonym do I attach the type genus?","slug":"to-which-ranked-protonym-do-i-attach-the-type-genus","link":"#to-which-ranked-protonym-do-i-attach-the-type-genus","children":[]},{"level":3,"title":"Do I have to re-attach the type genus to each family group protonym?","slug":"do-i-have-to-re-attach-the-type-genus-to-each-family-group-protonym","link":"#do-i-have-to-re-attach-the-type-genus-to-each-family-group-protonym","children":[]}]},{"level":2,"title":"FAQ related to genus-group names","slug":"faq-related-to-genus-group-names","link":"#faq-related-to-genus-group-names","children":[{"level":3,"title":"Do I have to create nominotypical subgenus or subspecies manually?","slug":"do-i-have-to-create-nominotypical-subgenus-or-subspecies-manually","link":"#do-i-have-to-create-nominotypical-subgenus-or-subspecies-manually","children":[]},{"level":3,"title":"To which rank should I attach the type species in cases where nominotypical genera exist, genus, or subgenus? What if I have done the opposite?","slug":"to-which-rank-should-i-attach-the-type-species-in-cases-where-nominotypical-genera-exist-genus-or-subgenus-what-if-i-have-done-the-opposite","link":"#to-which-rank-should-i-attach-the-type-species-in-cases-where-nominotypical-genera-exist-genus-or-subgenus-what-if-i-have-done-the-opposite","children":[]},{"level":3,"title":"Does the attachment of the type species differ if the nominotypical subgenus came with, or after the original description of the genus?","slug":"does-the-attachment-of-the-type-species-differ-if-the-nominotypical-subgenus-came-with-or-after-the-original-description-of-the-genus","link":"#does-the-attachment-of-the-type-species-differ-if-the-nominotypical-subgenus-came-with-or-after-the-original-description-of-the-genus","children":[]}]},{"level":2,"title":"FAQ related to species-group names","slug":"faq-related-to-species-group-names","link":"#faq-related-to-species-group-names","children":[{"level":3,"title":"I have a species which was originally described in genus which obviously lies outside the scope of my group. How can I use this genus in the original combination?","slug":"i-have-a-species-which-was-originally-described-in-genus-which-obviously-lies-outside-the-scope-of-my-group-how-can-i-use-this-genus-in-the-original-combination","link":"#i-have-a-species-which-was-originally-described-in-genus-which-obviously-lies-outside-the-scope-of-my-group-how-can-i-use-this-genus-in-the-original-combination","children":[]},{"level":3,"title":"Do I have to create a nominotypical subspecies?","slug":"do-i-have-to-create-a-nominotypical-subspecies","link":"#do-i-have-to-create-a-nominotypical-subspecies","children":[]},{"level":3,"title":"Which ranked name should I attach the type material to, species, or subspecies?","slug":"which-ranked-name-should-i-attach-the-type-material-to-species-or-subspecies","link":"#which-ranked-name-should-i-attach-the-type-material-to-species-or-subspecies","children":[]},{"level":3,"title":"When creating protonym, what names should I put in Original combination fields?","slug":"when-creating-protonym-what-names-should-i-put-in-original-combination-fields","link":"#when-creating-protonym-what-names-should-i-put-in-original-combination-fields","children":[]},{"level":3,"title":"How do delete a duplicate Taxon Name?","slug":"how-do-delete-a-duplicate-taxon-name","link":"#how-do-delete-a-duplicate-taxon-name","children":[]}]}],"git":{"updatedTime":1713891281000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":15},{"name":"Dmitry Dmitriev","email":"proceps@users.noreply.github.com","commits":2},{"name":"José Luis Pereira","email":"pepelui@outlook.com","commits":2},{"name":"hhopkins77","email":"cockroachdoc@gmail.com","commits":2},{"name":"Deborah Paul","email":"dlpaul@illinois.edu","commits":1},{"name":"Dmitry Dmitriev","email":"arboridia@gmail.com","commits":1}]},"filePathRelative":"guide/Manual/nomenclature.md"}');export{w as comp,v as data}; diff --git a/assets/other-documents.html-D2b_hTIS.js b/assets/other-documents.html-D2b_hTIS.js new file mode 100644 index 00000000..f09b2c2d --- /dev/null +++ b/assets/other-documents.html-D2b_hTIS.js @@ -0,0 +1 @@ +import{_ as e,c as r,o,b as a}from"./app-Bwgh_xIT.js";const t={},i=a('

    Other documents

    Archived files from the original repository

    The intent is to move this content here, and remove the files from this list at that time.

    ',4),l=[i];function n(s,c){return o(),r("div",null,l)}const m=e(t,[["render",n],["__file","other-documents.html.vue"]]),p=JSON.parse('{"path":"/guide/other-documents.html","title":"Other documents","lang":"en-US","frontmatter":{"sidebarPosition":500},"headers":[{"level":2,"title":"Archived files from the original repository","slug":"archived-files-from-the-original-repository","link":"#archived-files-from-the-original-repository","children":[]}],"git":{"updatedTime":1680036376000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":2}]},"filePathRelative":"guide/other-documents.md"}');export{m as comp,p as data}; diff --git a/assets/start-a-project.html-nrFH6MA2.js b/assets/start-a-project.html-nrFH6MA2.js new file mode 100644 index 00000000..1877acc2 --- /dev/null +++ b/assets/start-a-project.html-nrFH6MA2.js @@ -0,0 +1 @@ +import{_ as e,c as o,o as a,b as t}from"./app-Bwgh_xIT.js";const r={},n=t('

    Start a project

    Before you start a project it is important to understand:

    • TaxonWorks is open-source software that can be installed by anyone who wishes to.
    • There is no one central TaxonWorks installation.
    • One installation (sometimes referred to as "an instance") of TaxonWorks supports the creation of many projects.
    • Organizations or individuals who collaborate with you by sharing their installation of TaxonWorks are doing this on their own terms. These terms may vary.

    Offline/local use

    Is possible to use TaxonWorks locally, for example developers have active instances they work with.

    Considerations:

    • Offline use beyond development and experimenting is not officially supported at the moment, however the core developers are open to discussing making this happen.
    • Offline TaxonWorks runs slower than online, however if you are serious about making it work the developers can work with you to tune your setup.
    • Besides the various means of import and export there are no direct synchronization methods from offline to online projects.

    Sandboxes

    Some providers (see below) offer accounts in sandboxes. A sandbox is a temporary installation of TaxonWorks that can be used without fear of damaging "real" data. They are used to test functionality, practice making changes, preview large data imports, and assess whether necessary requirements are met. Each sandbox provider may have their own conditions as to how a sandbox should be used, be sure to understand the terms of use before using a sandbox account.

    The Species File Group manages multiple sandboxes. Their terms of use are outlined here.

    Collaborate

    The following is a list of organizations or individuals with TaxonWorks installations. Starting a project here is a form of collaboration.

    If you wish to be added to this list contact us or make a pull request.

    ProviderContactShares sandbox?Accepting collaborators?
    Species File GroupDeborah PaulYesYes

    The Species File group has a document outlining how they collobarate, its purpose is to get everyone on the same page as to what a TaxonWorks project in the instances they support means.

    Join

    As more and more projects are created in TaxonWorks the scope of the taxa covered grows. If your projects overlap then we encourage you to find an existing project and join up, rather than work in parallel.

    Serve

    We encourage organizations or individuals with the resources to run their own instance of TaxonWorks. The core development team is mandated to facilitate this happening, and is committed to working with you to navigate the technical challenges to this. When individuals or organizations manage their own instance then this demonstrates to the broader community the growing role and importance of TaxonWorks. New instances help distribute valuable technical resources and underlying responsibility across our community.

    From a technical perspective you can get started with install_taxonworks repository.

    From a social perspective we encourage you to reach out and discuss with us how to best setup a new production-ready instance.

    ',21),s=[n];function i(l,h){return a(),o("div",null,s)}const d=e(r,[["render",i],["__file","start-a-project.html.vue"]]),p=JSON.parse('{"path":"/guide/start-a-project.html","title":"Start a project","lang":"en-US","frontmatter":{"sidebarPosition":30},"headers":[{"level":2,"title":"Offline/local use","slug":"offline-local-use","link":"#offline-local-use","children":[]},{"level":2,"title":"Sandboxes","slug":"sandboxes","link":"#sandboxes","children":[]},{"level":2,"title":"Collaborate","slug":"collaborate","link":"#collaborate","children":[]},{"level":2,"title":"Join","slug":"join","link":"#join","children":[]},{"level":2,"title":"Serve","slug":"serve","link":"#serve","children":[]}],"git":{"updatedTime":1678491307000,"contributors":[{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":4},{"name":"mjy","email":"diapriid@gmail.com","commits":4}]},"filePathRelative":"guide/start-a-project.md"}');export{d as comp,p as data}; diff --git a/assets/style-BDrIVK5F.css b/assets/style-BDrIVK5F.css new file mode 100644 index 00000000..209bae8f --- /dev/null +++ b/assets/style-BDrIVK5F.css @@ -0,0 +1 @@ +.vp-back-to-top-button{position:fixed!important;bottom:4rem;inset-inline-end:1rem;z-index:100;width:48px;height:48px;padding:12px;border-width:0;border-radius:50%;background:var(--back-to-top-bg-color);color:var(--back-to-top-color);box-shadow:2px 2px 10px 4px var(--back-to-top-shadow);cursor:pointer}@media (max-width: 959px){.vp-back-to-top-button{transform:scale(.8);transform-origin:100% 100%}}@media print{.vp-back-to-top-button{display:none}}.vp-back-to-top-button:hover{color:var(--back-to-top-color-hover)}.vp-back-to-top-button .back-to-top-icon{overflow:hidden;width:24px;height:24px;margin:0 auto;background:var(--back-to-top-icon-color);-webkit-mask-image:var(--back-to-top-icon);mask-image:var(--back-to-top-icon);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover}.vp-scroll-progress{position:absolute;right:-2px;bottom:-2px;width:52px;height:52px}.vp-scroll-progress svg{width:100%;height:100%}.vp-scroll-progress circle{opacity:.9;transform:rotate(-90deg);transform-origin:50% 50%}.back-to-top-enter-active,.back-to-top-leave-active{transition:opacity .3s}.back-to-top-enter-from,.back-to-top-leave-to{opacity:0}:root{--back-to-top-z-index: 5;--back-to-top-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2048%2048'%3e%3cpath%20fill='none'%20stroke='currentColor'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='4'%20d='M24.008%2014.1V42M12%2026l12-12l12%2012M12%206h24'%20/%3e%3c/svg%3e");--back-to-top-bg-color: #fff;--back-to-top-color: #3eaf7c;--back-to-top-icon-color: currentColor;--back-to-top-color-hover: #71cda3;--back-to-top-shadow: rgb(0 0 0 / 20%)}div[class*=language-]:hover:before{display:none}div[class*=language-]:hover .vp-copy-code-button{opacity:1}.vp-copy-code-button{position:absolute;top:.5em;right:.5em;z-index:5;width:2.5rem;height:2.5rem;padding:0;border-width:0;border-radius:.5rem;background:transparent;outline:none;opacity:0;cursor:pointer;transition:opacity .4s}@media print{.vp-copy-code-button{display:none}}.vp-copy-code-button:focus,.vp-copy-code-button.copied{opacity:1}.vp-copy-code-button:hover,.vp-copy-code-button.copied{background:var(--copy-code-hover)}.vp-copy-code-button.copied .vp-copy-icon{-webkit-mask-image:var(--code-copied-icon);mask-image:var(--code-copied-icon)}.vp-copy-code-button.copied:after{content:attr(data-copied);position:absolute;top:0;right:calc(100% + .25rem);display:block;height:1.25rem;padding:.625rem;border-radius:.5rem;background:var(--copy-code-hover);color:var(--copy-code-color);font-weight:500;line-height:1.25rem;white-space:nowrap}.vp-copy-icon{width:1.25rem;height:1.25rem;padding:.625rem;background:currentcolor;color:var(--copy-code-color);font-size:1.25rem;-webkit-mask-image:var(--code-copy-icon);mask-image:var(--code-copy-icon);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:1em;mask-size:1em}:root{--code-copy-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20height='20'%20width='20'%20stroke='rgba(128,128,128,1)'%20stroke-width='2'%3e%3cpath%20stroke-linecap='round'%20stroke-linejoin='round'%20d='M9%205H7a2%202%200%200%200-2%202v12a2%202%200%200%200%202%202h10a2%202%200%200%200%202-2V7a2%202%200%200%200-2-2h-2M9%205a2%202%200%200%200%202%202h2a2%202%200%200%200%202-2M9%205a2%202%200%200%201%202-2h2a2%202%200%200%201%202%202'%20/%3e%3c/svg%3e");--code-copied-icon: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20height='20'%20width='20'%20stroke='rgba(128,128,128,1)'%20stroke-width='2'%3e%3cpath%20stroke-linecap='round'%20stroke-linejoin='round'%20d='M9%205H7a2%202%200%200%200-2%202v12a2%202%200%200%200%202%202h10a2%202%200%200%200%202-2V7a2%202%200%200%200-2-2h-2M9%205a2%202%200%200%200%202%202h2a2%202%200%200%200%202-2M9%205a2%202%200%200%201%202-2h2a2%202%200%200%201%202%202m-6%209%202%202%204-4'%20/%3e%3c/svg%3e");--copy-code-color: #9e9e9e;--copy-code-hover: rgb(0 0 0 / 50%)}:root{--medium-zoom-z-index: 100;--medium-zoom-bg-color: #ffffff;--medium-zoom-opacity: 1}.medium-zoom-overlay{background-color:var(--medium-zoom-bg-color)!important;z-index:var(--medium-zoom-z-index)}.medium-zoom-overlay~img{z-index:calc(var(--medium-zoom-z-index) + 1)}.medium-zoom--opened .medium-zoom-overlay{opacity:var(--medium-zoom-opacity)}:root{--nprogress-color: #29d;--nprogress-z-index: 1031}#nprogress{pointer-events:none}#nprogress .bar{background:var(--nprogress-color);position:fixed;z-index:var(--nprogress-z-index);top:0;left:0;width:100%;height:2px}.vp-page-meta{max-width:var(--content-width);margin:0 auto;padding:.75rem 2.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;overflow:auto}@media (max-width: 959px){.vp-page-meta{padding:2rem}}@media (max-width: 419px){.vp-page-meta{padding:1.5rem}}@media print{.vp-page-meta{margin:0!important;padding-inline:0!important}}@media (max-width: 719px){.vp-page-meta{display:block}}.vp-page-meta .vp-meta-item{flex-grow:1}.vp-page-meta .vp-meta-item .vp-meta-label{font-weight:500}.vp-page-meta .vp-meta-item .vp-meta-label:not(a){color:var(--c-text-lighter)}.vp-page-meta .vp-meta-item .vp-meta-info{color:var(--c-text-quote);font-weight:400}.vp-page-meta .git-info{text-align:end}.vp-page-meta .edit-link{margin-top:.25rem;margin-bottom:.25rem;margin-inline-end:.5rem;font-size:14px}@media print{.vp-page-meta .edit-link{display:none}}.vp-page-meta .edit-link .icon{position:relative;bottom:-.125em;width:1em;height:1em;margin-inline-end:.25em}.vp-page-meta .last-updated,.vp-page-meta .contributors{margin-top:.25rem;margin-bottom:.25rem;font-size:14px}@media (max-width: 719px){.vp-page-meta .last-updated,.vp-page-meta .contributors{font-size:13px;text-align:start}}.vp-page-nav{display:flex;flex-wrap:wrap;max-width:var(--content-width, 740px);min-height:2rem;margin-inline:auto;margin-top:0;padding-block:.5rem;padding-inline:2rem;border-top:1px solid var(--c-border);transition:border-top var(--t-color);padding-top:1rem;padding-bottom:0}@media (max-width: 959px){.vp-page-nav{padding-inline:1rem}}@media print{.vp-page-nav{display:none}}.vp-page-nav .route-link{display:inline-block;flex-grow:1;margin:.25rem;padding:.25rem .5rem;border:1px solid var(--c-border);border-radius:.25rem}.vp-page-nav .route-link:hover{background:var(--c-bg-light)}.vp-page-nav .route-link .hint{color:var(--c-text-quote);font-size:.875rem;line-height:2}.vp-page-nav .prev{text-align:start}.vp-page-nav .next{text-align:end}:root{--c-brand: #3eaf7c;--c-brand-light: #4abf8a;--c-bg: #ffffff;--c-bg-light: #f3f4f5;--c-bg-lighter: #eeeeee;--c-bg-dark: #ebebec;--c-bg-darker: #e6e6e6;--c-bg-navbar: var(--c-bg);--c-bg-sidebar: var(--c-bg);--c-bg-arrow: #cccccc;--c-text: #2c3e50;--c-text-accent: var(--c-brand);--c-text-light: #3a5169;--c-text-lighter: #4e6e8e;--c-text-lightest: #6a8bad;--c-text-quote: #999999;--c-border: #eaecef;--c-border-dark: #dfe2e5;--c-tip: #42b983;--c-tip-bg: var(--c-bg-light);--c-tip-title: var(--c-text);--c-tip-text: var(--c-text);--c-tip-text-accent: var(--c-text-accent);--c-warning: #ffc310;--c-warning-bg: #fffae3;--c-warning-bg-light: #fff3ba;--c-warning-bg-lighter: #fff0b0;--c-warning-border-dark: #f7dc91;--c-warning-details-bg: #fff5ca;--c-warning-title: #f1b300;--c-warning-text: #746000;--c-warning-text-accent: #edb100;--c-warning-text-light: #c1971c;--c-warning-text-quote: #ccab49;--c-danger: #f11e37;--c-danger-bg: #ffe0e0;--c-danger-bg-light: #ffcfde;--c-danger-bg-lighter: #ffc9c9;--c-danger-border-dark: #f1abab;--c-danger-details-bg: #ffd4d4;--c-danger-title: #ed1e2c;--c-danger-text: #660000;--c-danger-text-accent: #bd1a1a;--c-danger-text-light: #b5474d;--c-danger-text-quote: #c15b5b;--c-details-bg: #eeeeee;--c-badge-tip: var(--c-tip);--c-badge-warning: #ecc808;--c-badge-warning-text: var(--c-bg);--c-badge-danger: #dc2626;--c-badge-danger-text: var(--c-bg);--c-code-group-tab-title: rgba(255, 255, 255, .9);--c-code-group-tab-bg: var(--code-bg-color);--c-code-group-tab-outline: var(var(--c-code-group-tab-title));--c-code-group-tab-active-border: var(--c-brand);--t-color: .3s ease;--t-transform: .3s ease;--code-bg-color: #282c34;--code-hl-bg-color: rgba(0, 0, 0, .66);--code-ln-color: #9e9e9e;--code-ln-wrapper-width: 3.5rem;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-code: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;--navbar-height: 3.6rem;--navbar-padding-v: .7rem;--navbar-padding-h: 1.5rem;--sidebar-width: 20rem;--sidebar-width-mobile: calc(var(--sidebar-width) * .82);--content-width: 740px;--homepage-width: 960px;--external-link-icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");--external-link-icon-color: var(--c-text-quote)}.vp-back-to-top-button{--back-to-top-color: var(--c-brand);--back-to-top-color-hover: var(--c-brand-light);--back-to-top-bg-color: var(--c-bg)}.vp-catalog-wrapper{--catalog-bg-color: var(--c-bg);--catalog-bg-secondary-color: var(--c-bg-dark);--catalog-border-color: var(--c-border);--catalog-active-color: var(--c-brand);--catalog-hover-color: var(--c-brand-light)}.waline-wrapper{--waline-bg-color: var(--c-bg);--waline-bg-color-light: var(--c-bg-light);--waline-text-color: var(--c-color);--waline-border: 1px solid var(--c-border);--waline-border-color: var(--c-border);--waline-theme-color: var(--c-brand);--waline-active-color: var(--c-brand-light)}.DocSearch{--docsearch-primary-color: var(--c-brand);--docsearch-text-color: var(--c-text);--docsearch-highlight-color: var(--c-brand);--docsearch-muted-color: var(--c-text-quote);--docsearch-container-background: rgba(9, 10, 17, .8);--docsearch-modal-background: var(--c-bg-light);--docsearch-searchbox-background: var(--c-bg-lighter);--docsearch-searchbox-focus-background: var(--c-bg);--docsearch-searchbox-shadow: inset 0 0 0 2px var(--c-brand);--docsearch-hit-color: var(--c-text-light);--docsearch-hit-active-color: var(--c-bg);--docsearch-hit-background: var(--c-bg);--docsearch-hit-shadow: 0 1px 3px 0 var(--c-border-dark);--docsearch-footer-background: var(--c-bg)}.medium-zoom-overlay{--medium-zoom-bg-color: var(--c-bg)}.vp-notice-wrapper{--notice-color: var(--c-text);--notice-bg-color: var(--c-bg);--notice-primary-color: var(--c-brand);--notice-primary-text-color: var(--c-bg);--notice-primary-hover-color: var(--c-brand-light);--notice-button-color: var(--c-bg-light);--notice-button-hover-color: var(--c-bg-lighter)}#nprogress{--nprogress-color: var(--c-brand)}body{--photo-swipe-bullet: var(--c-bg);--photo-swipe-bullet-active: var(--c-brand)}body{--pwa-text-color: var(--c-text);--pwa-bg-color: var(--c-bg);--pwa-border-color: var(--c-brand);--pwa-btn-text-color: var(--c-bg);--pwa-btn-bg-color: var(--c-brand);--pwa-btn-hover-bg-color: var(--c-brand-light)}.redirect-modal-mask{--redirect-bg-color: var(--c-bg);--redirect-bg-color-light: var(--c-bg-light);--redirect-bg-color-lighter: var(--c-bg-lighter);--redirect-text-color: var(--c-text);--redirect-primary-color: var(--c-brand);--redirect-primary-hover-color: var(--c-brand-light);--redirect-primary-text-color: var(--c-bg)}.search-box{--search-bg-color: var(--c-bg);--search-accent-color: var(--c-brand);--search-text-color: var(--c-text);--search-border-color: var(--c-border);--search-item-text-color: var(--c-text-lighter);--search-item-focus-bg-color: var(--c-bg-light)}html.dark{--c-brand: #3aa675;--c-brand-light: #349469;--c-bg: #22272e;--c-bg-light: #2b313a;--c-bg-lighter: #262c34;--c-bg-dark: #343b44;--c-bg-darker: #37404c;--c-text: #adbac7;--c-text-light: #96a7b7;--c-text-lighter: #8b9eb0;--c-text-lightest: #8094a8;--c-border: #3e4c5a;--c-border-dark: #34404c;--c-tip: #318a62;--c-warning: #e0ad15;--c-warning-bg: #2d2f2d;--c-warning-bg-light: #423e2a;--c-warning-bg-lighter: #44442f;--c-warning-border-dark: #957c35;--c-warning-details-bg: #39392d;--c-warning-title: #fdca31;--c-warning-text: #d8d96d;--c-warning-text-accent: #ffbf00;--c-warning-text-light: #ddb84b;--c-warning-text-quote: #ccab49;--c-danger: #fc1e38;--c-danger-bg: #39232c;--c-danger-bg-light: #4b2b35;--c-danger-bg-lighter: #553040;--c-danger-border-dark: #a25151;--c-danger-details-bg: #482936;--c-danger-title: #fc2d3b;--c-danger-text: #ea9ca0;--c-danger-text-accent: #fd3636;--c-danger-text-light: #d9777c;--c-danger-text-quote: #d56b6b;--c-details-bg: #323843;--c-badge-warning: var(--c-warning);--c-badge-warning-text: #3c2e05;--c-badge-danger: var(--c-danger);--c-badge-danger-text: #401416;--code-hl-bg-color: #363b46}html.dark .DocSearch{--docsearch-logo-color: var(--c-text);--docsearch-modal-shadow: inset 1px 1px 0 0 #2c2e40, 0 3px 8px 0 #000309;--docsearch-key-shadow: inset 0 -2px 0 0 #282d55, inset 0 0 1px 1px #51577d, 0 2px 2px 0 rgba(3, 4, 9, .3);--docsearch-key-gradient: linear-gradient(-225deg, #444950, #1c1e21);--docsearch-footer-shadow: inset 0 1px 0 0 rgba(73, 76, 106, .5), 0 -4px 8px 0 rgba(0, 0, 0, .2)}html.dark body{--pwa-shadow-color: rgb(0 0 0 / 30%);--pwa-content-color: #ccc;--pwa-content-light-color: #999}html,body{padding:0;margin:0;background-color:var(--c-bg);transition:background-color var(--t-color)}html.dark{color-scheme:dark}html{font-size:16px}body{font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:1rem;color:var(--c-text)}a{font-weight:500;color:var(--c-text-accent);text-decoration:none;overflow-wrap:break-word}p a code{font-weight:400;color:var(--c-text-accent)}kbd{font-family:var(--font-family-code);color:var(--c-text);background:var(--c-bg-lighter);border:solid .15rem var(--c-border-dark);border-bottom:solid .25rem var(--c-border-dark);border-radius:.15rem;padding:0 .15em}code{font-family:var(--font-family-code);color:var(--c-text-lighter);padding:.25rem .5rem;margin:0;font-size:.85em;background-color:var(--c-bg-light);border-radius:3px;overflow-wrap:break-word;transition:background-color var(--t-color)}blockquote{font-size:1rem;color:var(--c-text-quote);border-left:.2rem solid var(--c-border-dark);margin:1rem 0;padding:.25rem 0 .25rem 1rem;overflow-wrap:break-word}blockquote>p{margin:0}ul,ol{padding-left:1.2em}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;overflow-wrap:break-word}h1:focus-visible,h2:focus-visible,h3:focus-visible,h4:focus-visible,h5:focus-visible,h6:focus-visible{outline:none}h1 .header-anchor,h2 .header-anchor,h3 .header-anchor,h4 .header-anchor,h5 .header-anchor,h6 .header-anchor{color:inherit;text-decoration:none;position:relative}h1 .header-anchor:hover:before,h2 .header-anchor:hover:before,h3 .header-anchor:hover:before,h4 .header-anchor:hover:before,h5 .header-anchor:hover:before,h6 .header-anchor:hover:before{font-size:.8em;content:"¶";position:absolute;left:-.75em;color:var(--c-brand)}h1 .header-anchor:focus-visible,h2 .header-anchor:focus-visible,h3 .header-anchor:focus-visible,h4 .header-anchor:focus-visible,h5 .header-anchor:focus-visible,h6 .header-anchor:focus-visible{outline:none}h1 .header-anchor:focus-visible:before,h2 .header-anchor:focus-visible:before,h3 .header-anchor:focus-visible:before,h4 .header-anchor:focus-visible:before,h5 .header-anchor:focus-visible:before,h6 .header-anchor:focus-visible:before{content:"¶";position:absolute;left:-.75em;color:var(--c-brand);outline:auto}h1{font-size:2.2rem}h2{font-size:1.65rem;padding-bottom:.3rem;border-bottom:1px solid var(--c-border);transition:border-color var(--t-color)}h3{font-size:1.35rem}h4{font-size:1.15rem}h5{font-size:1.05rem}h6{font-size:1rem}@media print{a[href^="http://"]:after,a[href^="https://"]:after{content:" (" attr(href) ") "}}p,ul,ol{line-height:1.7;overflow-wrap:break-word}hr{border:0;border-top:1px solid var(--c-border)}table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto;transition:border-color var(--t-color)}tr{border-top:1px solid var(--c-border-dark);transition:border-color var(--t-color)}tr:nth-child(2n){background-color:var(--c-bg-light);transition:background-color var(--t-color)}tr:nth-child(2n) code{background-color:var(--c-bg-dark)}th,td{padding:.6em 1em;border:1px solid var(--c-border-dark);transition:border-color var(--t-color)}.arrow{display:inline-block;vertical-align:middle;width:1em;height:1em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(0,0,0,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;line-height:normal;transition:all .3s}html.dark .arrow{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='rgba(255,255,255,0.5)' d='M7.41 15.41L12 10.83l4.59 4.58L18 14l-6-6-6 6z'/%3E%3C/svg%3E")}.arrow.down{transform:rotate(180deg)}.arrow.right{transform:rotate(90deg)}.arrow.left{transform:rotate(-90deg)}.badge{display:inline-block;font-size:14px;font-weight:600;height:18px;line-height:18px;border-radius:3px;padding:0 6px;color:var(--c-bg);vertical-align:top;transition:color var(--t-color),background-color var(--t-color)}.badge.tip{background-color:var(--c-badge-tip)}.badge.warning{background-color:var(--c-badge-warning);color:var(--c-badge-warning-text)}.badge.danger{background-color:var(--c-badge-danger);color:var(--c-badge-danger-text)}.badge+.badge{margin-left:5px}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:var(--font-family-code);font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#ec5975}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:#3eaf7c}.theme-default-content pre,.theme-default-content pre[class*=language-]{line-height:1.375;padding:1.3rem 1.5rem;margin:.85rem 0;border-radius:6px;overflow:auto}.theme-default-content pre code,.theme-default-content pre[class*=language-] code{color:#fff;padding:0;background-color:transparent!important;border-radius:0;overflow-wrap:unset;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.theme-default-content .line-number{font-family:var(--font-family-code)}div[class*=language-]{position:relative;background-color:var(--code-bg-color);border-radius:6px}div[class*=language-]:before{content:attr(data-title);position:absolute;z-index:3;top:.8em;right:1em;font-size:.75rem;color:var(--code-ln-color)}div[class*=language-] pre,div[class*=language-] pre[class*=language-]{background:transparent!important;position:relative;z-index:1}div[class*=language-] .highlight-lines{-webkit-user-select:none;-moz-user-select:none;user-select:none;padding-top:1.3rem;position:absolute;top:0;left:0;width:100%;line-height:1.375}div[class*=language-] .highlight-lines .highlight-line{background-color:var(--code-hl-bg-color)}div[class*=language-]:not(.line-numbers-mode) .line-numbers{display:none}div[class*=language-].line-numbers-mode .highlight-lines .highlight-line{position:relative}div[class*=language-].line-numbers-mode .highlight-lines .highlight-line:before{content:" ";position:absolute;z-index:2;left:0;top:0;display:block;width:var(--code-ln-wrapper-width);height:100%}div[class*=language-].line-numbers-mode pre{margin-left:var(--code-ln-wrapper-width);padding-left:1rem;vertical-align:middle}div[class*=language-].line-numbers-mode .line-numbers{position:absolute;top:0;width:var(--code-ln-wrapper-width);text-align:center;color:var(--code-ln-color);padding-top:1.25rem;line-height:1.375;counter-reset:line-number}div[class*=language-].line-numbers-mode .line-numbers .line-number{position:relative;z-index:3;-webkit-user-select:none;-moz-user-select:none;user-select:none;height:1.375em}div[class*=language-].line-numbers-mode .line-numbers .line-number:before{counter-increment:line-number;content:counter(line-number);font-size:.85em}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;top:0;left:0;width:var(--code-ln-wrapper-width);height:100%;border-radius:6px 0 0 6px;border-right:1px solid var(--code-hl-bg-color)}@media (max-width: 419px){.theme-default-content div[class*=language-]{margin:.85rem -1.5rem;border-radius:0}}.code-group__nav{margin-top:.85rem;margin-bottom:calc(-1.7rem - 6px);padding-bottom:calc(1.7rem - 6px);padding-left:10px;padding-top:10px;border-top-left-radius:6px;border-top-right-radius:6px;background-color:var(--c-code-group-tab-bg)}.code-group__nav-tab{border:0;padding:5px;cursor:pointer;background-color:transparent;font-size:.85em;line-height:1.4;color:var(--c-code-group-tab-title);font-weight:600}.code-group__nav-tab:focus{outline:none}.code-group__nav-tab:focus-visible{outline:1px solid var(--c-code-group-tab-outline)}.code-group__nav-tab-active{border-bottom:var(--c-code-group-tab-active-border) 1px solid}@media (max-width: 419px){.code-group__nav{margin-left:-1.5rem;margin-right:-1.5rem;border-radius:0}}.code-group-item{display:none}.code-group-item__active{display:block}.code-group-item>pre{background-color:orange}.custom-container{transition:color var(--t-color),border-color var(--t-color),background-color var(--t-color)}.custom-container .custom-container-title{font-weight:600}.custom-container .custom-container-title:not(:only-child){margin-bottom:-.4rem}.custom-container.tip,.custom-container.warning,.custom-container.danger{padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid;margin:1rem 0}.custom-container.tip{border-color:var(--c-tip);background-color:var(--c-tip-bg);color:var(--c-tip-text)}.custom-container.tip .custom-container-title{color:var(--c-tip-title)}.custom-container.tip a{color:var(--c-tip-text-accent)}.custom-container.tip code{background-color:var(--c-bg-dark)}.custom-container.warning{--external-link-icon-color: var(--c-warning-text-quote);border-color:var(--c-warning);background-color:var(--c-warning-bg);color:var(--c-warning-text)}.custom-container.warning .custom-container-title{color:var(--c-warning-title)}.custom-container.warning a{color:var(--c-warning-text-accent)}.custom-container.warning blockquote{border-left-color:var(--c-warning-border-dark);color:var(--c-warning-text-quote)}.custom-container.warning code{color:var(--c-warning-text-light);background-color:var(--c-warning-bg-light)}.custom-container.warning details{background-color:var(--c-warning-details-bg)}.custom-container.warning details code{background-color:var(--c-warning-bg-lighter)}.custom-container.danger{--external-link-icon-color: var(--c-danger-text-quote);border-color:var(--c-danger);background-color:var(--c-danger-bg);color:var(--c-danger-text)}.custom-container.danger .custom-container-title{color:var(--c-danger-title)}.custom-container.danger a{color:var(--c-danger-text-accent)}.custom-container.danger blockquote{border-left-color:var(--c-danger-border-dark);color:var(--c-danger-text-quote)}.custom-container.danger code{color:var(--c-danger-text-light);background-color:var(--c-danger-bg-light)}.custom-container.danger details{background-color:var(--c-danger-details-bg)}.custom-container.danger details code{background-color:var(--c-danger-bg-lighter)}.custom-container.details{display:block;position:relative;border-radius:2px;margin:1.6em 0;padding:1.6em;background-color:var(--c-details-bg)}.custom-container.details code{background-color:var(--c-bg-darker)}.custom-container.details h4{margin-top:0}.custom-container.details figure:last-child,.custom-container.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-container.details summary{outline:none;cursor:pointer}.vp-external-link-icon:after{content:"";display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:var(--external-link-icon-color);flex-shrink:0;-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.external-link-icon .external-link:after{content:"";display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:var(--external-link-icon-color);flex-shrink:0;-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.external-link-icon .theme-default-content a[href*="://"]:not(.no-external-link-icon):after,.external-link-icon .theme-default-content a[target=_blank]:not(.no-external-link-icon):after{content:"";display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:var(--external-link-icon-color);flex-shrink:0;-webkit-mask-image:var(--external-link-icon);mask-image:var(--external-link-icon)}.home{padding:var(--navbar-height) 2rem 0;max-width:var(--homepage-width);margin:0 auto;display:block}.home .hero{text-align:center}.home .hero img{max-width:100%;max-height:280px;display:block;margin:3rem auto 1.5rem}.home .hero h1{font-size:3rem}.home .hero h1,.home .hero .description,.home .hero .actions{margin:1.8rem auto}.home .hero .actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.home .hero .description{max-width:35rem;font-size:1.6rem;line-height:1.3;color:var(--c-text-lightest)}.home .hero .action-button{display:inline-block;font-size:1.2rem;padding:.8rem 1.6rem;border-width:2px;border-style:solid;border-radius:4px;transition:background-color var(--t-color);box-sizing:border-box}.home .hero .action-button.primary{color:var(--c-bg);background-color:var(--c-brand);border-color:var(--c-brand)}.home .hero .action-button.primary:hover{background-color:var(--c-brand-light)}.home .hero .action-button.secondary{color:var(--c-brand);background-color:var(--c-bg);border-color:var(--c-brand)}.home .hero .action-button.secondary:hover{color:var(--c-bg);background-color:var(--c-brand-light)}.home .features{border-top:1px solid var(--c-border);transition:border-color var(--t-color);padding:1.2rem 0;margin-top:2.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;align-content:stretch;justify-content:space-between}.home .feature{flex-grow:1;flex-basis:30%;max-width:30%}.home .feature h2{font-size:1.4rem;font-weight:500;border-bottom:none;padding-bottom:0;color:var(--c-text-light)}.home .feature p{color:var(--c-text-lighter)}.home .theme-default-content{padding:0;margin:0}.home .footer{padding:2.5rem;border-top:1px solid var(--c-border);text-align:center;color:var(--c-text-lighter);transition:border-color var(--t-color)}@media (max-width: 719px){.home .features{flex-direction:column}.home .feature{max-width:100%;padding:0 2.5rem}}@media (max-width: 419px){.home{padding-left:1.5rem;padding-right:1.5rem}.home .hero img{max-height:210px;margin:2rem auto 1.2rem}.home .hero h1{font-size:2rem}.home .hero h1,.home .hero .description,.home .hero .actions{margin:1.2rem auto}.home .hero .description{font-size:1.2rem}.home .hero .action-button{font-size:1rem;padding:.6rem 1.2rem}.home .feature h2{font-size:1.25rem}}.page{padding-top:var(--navbar-height);padding-left:var(--sidebar-width)}.navbar{position:fixed;z-index:20;top:0;left:0;right:0;height:var(--navbar-height);box-sizing:border-box;border-bottom:1px solid var(--c-border);background-color:var(--c-bg-navbar);transition:background-color var(--t-color),border-color var(--t-color)}.sidebar{font-size:16px;width:var(--sidebar-width);position:fixed;z-index:10;margin:0;top:var(--navbar-height);left:0;bottom:0;box-sizing:border-box;border-right:1px solid var(--c-border);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--c-brand) var(--c-border);background-color:var(--c-bg-sidebar);transition:transform var(--t-transform),background-color var(--t-color),border-color var(--t-color)}.sidebar::-webkit-scrollbar{width:7px}.sidebar::-webkit-scrollbar-track{background-color:var(--c-border)}.sidebar::-webkit-scrollbar-thumb{background-color:var(--c-brand)}.sidebar-mask{position:fixed;z-index:9;top:0;left:0;width:100vw;height:100vh;display:none}.theme-container.sidebar-open .sidebar-mask{display:block}.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(1){transform:rotate(45deg) translate3d(5.5px,5.5px,0)}.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(2){transform:scale3d(0,1,1)}.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(3){transform:rotate(-45deg) translate3d(6px,-6px,0)}.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(1),.theme-container.sidebar-open .navbar>.toggle-sidebar-button .icon span:nth-child(3){transform-origin:center}.theme-container.no-navbar .theme-default-content h1,.theme-container.no-navbar .theme-default-content h2,.theme-container.no-navbar .theme-default-content h3,.theme-container.no-navbar .theme-default-content h4,.theme-container.no-navbar .theme-default-content h5,.theme-container.no-navbar .theme-default-content h6{margin-top:1.5rem;padding-top:0}.theme-container.no-navbar .page{padding-top:0}.theme-container.no-navbar .sidebar{top:0}.theme-container.no-sidebar .sidebar{display:none}@media (max-width: 719px){.theme-container.no-sidebar .sidebar{display:block}}.theme-container.no-sidebar .page{padding-left:0}.theme-default-content a:not(.header-anchor):hover{text-decoration:underline}.theme-default-content img{max-width:100%}.theme-default-content h1,.theme-default-content h2,.theme-default-content h3,.theme-default-content h4,.theme-default-content h5,.theme-default-content h6{margin-top:calc(.5rem - var(--navbar-height));padding-top:calc(1rem + var(--navbar-height));margin-bottom:0}.theme-default-content h1:first-child,.theme-default-content h2:first-child,.theme-default-content h3:first-child,.theme-default-content h4:first-child,.theme-default-content h5:first-child,.theme-default-content h6:first-child{margin-bottom:1rem}.theme-default-content h1:first-child+p,.theme-default-content h1:first-child+pre,.theme-default-content h1:first-child+.custom-container,.theme-default-content h2:first-child+p,.theme-default-content h2:first-child+pre,.theme-default-content h2:first-child+.custom-container,.theme-default-content h3:first-child+p,.theme-default-content h3:first-child+pre,.theme-default-content h3:first-child+.custom-container,.theme-default-content h4:first-child+p,.theme-default-content h4:first-child+pre,.theme-default-content h4:first-child+.custom-container,.theme-default-content h5:first-child+p,.theme-default-content h5:first-child+pre,.theme-default-content h5:first-child+.custom-container,.theme-default-content h6:first-child+p,.theme-default-content h6:first-child+pre,.theme-default-content h6:first-child+.custom-container{margin-top:2rem}@media (max-width: 959px){.sidebar{font-size:15px;width:var(--sidebar-width-mobile)}.page{padding-left:var(--sidebar-width-mobile)}}@media (max-width: 719px){.sidebar{top:0;padding-top:var(--navbar-height);transform:translate(-100%)}.page{padding-left:0}.theme-container.sidebar-open .sidebar{transform:translate(0)}.theme-container.no-navbar .sidebar{padding-top:0}}@media (max-width: 419px){h1{font-size:1.9rem}}#vp-comment{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem}@media (max-width: 959px){#vp-comment{padding:2rem}}@media (max-width: 419px){#vp-comment{padding:1.5rem}}.navbar{--navbar-line-height: calc( var(--navbar-height) - 2 * var(--navbar-padding-v) );padding:var(--navbar-padding-v) var(--navbar-padding-h);line-height:var(--navbar-line-height)}.navbar .logo{height:var(--navbar-line-height);margin-right:var(--navbar-padding-v);vertical-align:top}.navbar .site-name{font-size:1.3rem;font-weight:600;color:var(--c-text);position:relative}.navbar .navbar-items-wrapper{display:flex;position:absolute;box-sizing:border-box;top:var(--navbar-padding-v);right:var(--navbar-padding-h);height:var(--navbar-line-height);padding-left:var(--navbar-padding-h);white-space:nowrap;font-size:.9rem}.navbar .navbar-items-wrapper .search-box{flex:0 0 auto;vertical-align:top}@media screen and (max-width: 719px){.navbar{padding-left:4rem}.navbar .site-name{display:block;width:calc(100vw - 11rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.navbar .can-hide{display:none}}.navbar-items{display:inline-block}@media print{.navbar-items{display:none}}.navbar-items a{display:inline-block;line-height:1.4rem;color:inherit}.navbar-items a:hover,.navbar-items a.route-link-active{color:var(--c-text)}.navbar-items .navbar-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:var(--navbar-line-height)}.navbar-items .navbar-item:first-child{margin-left:0}.navbar-items .navbar-item>a:hover,.navbar-items .navbar-item>a.route-link-active{margin-bottom:-2px;border-bottom:2px solid var(--c-text-accent)}@media (max-width: 719px){.navbar-items .navbar-item{margin-left:0}.navbar-items .navbar-item>a:hover,.navbar-items .navbar-item>a.route-link-active{margin-bottom:0;border-bottom:none}.navbar-items a:hover,.navbar-items a.route-link-active{color:var(--c-text-accent)}}.toggle-sidebar-button{position:absolute;top:.6rem;left:1rem;display:none;padding:.6rem;cursor:pointer}.toggle-sidebar-button .icon{display:flex;flex-direction:column;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;cursor:inherit}.toggle-sidebar-button .icon span{display:inline-block;width:100%;height:2px;border-radius:2px;background-color:var(--c-text);transition:transform var(--t-transform)}.toggle-sidebar-button .icon span:nth-child(2){margin:6px 0}@media screen and (max-width: 719px){.toggle-sidebar-button{display:block}}.toggle-color-mode-button{display:flex;margin:auto;margin-left:1rem;border:0;background:none;color:var(--c-text);opacity:.8;cursor:pointer}@media print{.toggle-color-mode-button{display:none}}.toggle-color-mode-button:hover{opacity:1}.toggle-color-mode-button .icon{width:1.25rem;height:1.25rem}.DocSearch{transition:background-color var(--t-color)}.navbar-dropdown-wrapper{cursor:pointer}.navbar-dropdown-wrapper .navbar-dropdown-title,.navbar-dropdown-wrapper .navbar-dropdown-title-mobile{display:block;font-size:.9rem;font-family:inherit;cursor:inherit;padding:inherit;line-height:1.4rem;background:transparent;border:none;font-weight:500;color:var(--c-text)}.navbar-dropdown-wrapper .navbar-dropdown-title:hover,.navbar-dropdown-wrapper .navbar-dropdown-title-mobile:hover{border-color:transparent}.navbar-dropdown-wrapper .navbar-dropdown-title .arrow,.navbar-dropdown-wrapper .navbar-dropdown-title-mobile .arrow{vertical-align:middle;margin-top:-1px;margin-left:.4rem}.navbar-dropdown-wrapper .navbar-dropdown-title-mobile{display:none;font-weight:600;font-size:inherit}.navbar-dropdown-wrapper .navbar-dropdown-title-mobile:hover{color:var(--c-text-accent)}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item{color:inherit;line-height:1.7rem}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle{margin:.45rem 0 0;border-top:1px solid var(--c-border);padding:1rem 0 .45rem;font-size:.9rem}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle>span{padding:0 1.5rem 0 1.25rem}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle>a{font-weight:inherit}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle>a.route-link-active:after{display:none}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subitem-wrapper{padding:0;list-style:none}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subitem-wrapper .navbar-dropdown-subitem{font-size:.9em}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a{display:block;line-height:1.7rem;position:relative;border-bottom:none;font-weight:400;margin-bottom:0;padding:0 1.5rem 0 1.25rem}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a:hover,.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a.route-link-active{color:var(--c-text-accent)}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a.route-link-active:after{content:"";width:0;height:0;border-left:5px solid var(--c-text-accent);border-top:3px solid transparent;border-bottom:3px solid transparent;position:absolute;top:calc(50% - 2px);left:9px}.navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item:first-child .navbar-dropdown-subtitle{margin-top:0;padding-top:0;border-top:0}.navbar-dropdown-wrapper.mobile.open .navbar-dropdown-title,.navbar-dropdown-wrapper.mobile.open .navbar-dropdown-title-mobile{margin-bottom:.5rem}.navbar-dropdown-wrapper.mobile .navbar-dropdown-title,.navbar-dropdown-wrapper.mobile .navbar-dropdown-title-mobile{display:none}.navbar-dropdown-wrapper.mobile .navbar-dropdown-title-mobile{display:block}.navbar-dropdown-wrapper.mobile .navbar-dropdown{transition:height .1s ease-out;overflow:hidden}.navbar-dropdown-wrapper.mobile .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle{border-top:0;margin-top:0;padding-top:0;padding-bottom:0}.navbar-dropdown-wrapper.mobile .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subtitle,.navbar-dropdown-wrapper.mobile .navbar-dropdown .navbar-dropdown-item>a{font-size:15px;line-height:2rem}.navbar-dropdown-wrapper.mobile .navbar-dropdown .navbar-dropdown-item .navbar-dropdown-subitem{font-size:14px;padding-left:1rem}.navbar-dropdown-wrapper:not(.mobile){height:1.8rem}.navbar-dropdown-wrapper:not(.mobile):hover .navbar-dropdown,.navbar-dropdown-wrapper:not(.mobile).open .navbar-dropdown{display:block!important}.navbar-dropdown-wrapper:not(.mobile).open:blur{display:none}.navbar-dropdown-wrapper:not(.mobile) .navbar-dropdown{display:none;height:auto!important;box-sizing:border-box;max-height:calc(100vh - 2.7rem);overflow-y:auto;position:absolute;top:100%;right:0;background-color:var(--c-bg-navbar);padding:.6rem 0;border:1px solid var(--c-border);border-bottom-color:var(--c-border-dark);text-align:left;border-radius:.25rem;white-space:nowrap;margin:0}.page{padding-bottom:2rem;display:block}.page .theme-default-content{max-width:var(--content-width);margin:0 auto;padding:2rem 2.5rem;padding-top:0}@media (max-width: 959px){.page .theme-default-content{padding:2rem}}@media (max-width: 419px){.page .theme-default-content{padding:1.5rem}}.sidebar ul{padding:0;margin:0;list-style-type:none}.sidebar a{display:inline-block}.sidebar .navbar-items{display:none;border-bottom:1px solid var(--c-border);transition:border-color var(--t-color);padding:.5rem 0 .75rem}.sidebar .navbar-items a{font-weight:600}.sidebar .navbar-items .navbar-item{display:block;line-height:1.25rem;font-size:1.1em;padding:.5rem 0 .5rem 1.5rem}.sidebar .sidebar-items{padding:1.5rem 0}@media (max-width: 719px){.sidebar .navbar-items{display:block}.sidebar .navbar-items .navbar-dropdown-wrapper .navbar-dropdown .navbar-dropdown-item a.route-link-active:after{top:calc(1rem - 2px)}.sidebar .sidebar-items{padding:1rem 0}}.sidebar-item{cursor:default;border-left:.25rem solid transparent;color:var(--c-text)}.sidebar-item:focus-visible{outline-width:1px;outline-offset:-1px}.sidebar-item.active:not(p.sidebar-heading){font-weight:600;color:var(--c-text-accent);border-left-color:var(--c-text-accent)}.sidebar-item.sidebar-heading{transition:color .15s ease;font-size:1.1em;font-weight:700;padding:.35rem 1.5rem .35rem 1.25rem;width:100%;box-sizing:border-box;margin:0}.sidebar-item.sidebar-heading+.sidebar-item-children{transition:height .1s ease-out;overflow:hidden;margin-bottom:.75rem}.sidebar-item.collapsible{cursor:pointer}.sidebar-item.collapsible .arrow{position:relative;top:-.12em;left:.5em}.sidebar-item:not(.sidebar-heading){font-size:1em;font-weight:400;display:inline-block;margin:0;padding:.35rem 1rem .35rem 2rem;line-height:1.4;width:100%;box-sizing:border-box}.sidebar-item:not(.sidebar-heading)+.sidebar-item-children{padding-left:1rem;font-size:.95em}.sidebar-item-children .sidebar-item-children .sidebar-item:not(.sidebar-heading){padding:.25rem 1rem .25rem 1.75rem}.sidebar-item-children .sidebar-item-children .sidebar-item:not(.sidebar-heading).active{font-weight:500;border-left-color:transparent}a.sidebar-heading+.sidebar-item-children .sidebar-item:not(.sidebar-heading).active{border-left-color:transparent}a.sidebar-item{cursor:pointer}a.sidebar-item:hover{color:var(--c-text-accent)}.table-of-contents .badge{vertical-align:middle}.dropdown-enter-from,.dropdown-leave-to{height:0!important}.fade-slide-y-enter-active{transition:all .2s ease}.fade-slide-y-leave-active{transition:all .2s cubic-bezier(1,.5,.8,1)}.fade-slide-y-enter-from,.fade-slide-y-leave-to{transform:translateY(10px);opacity:0}.figure-left{text-align:left}.figure-right{text-align:right}.figure-center{text-align:center}:root{--search-bg-color: #ffffff;--search-accent-color: #3eaf7c;--search-text-color: #2c3e50;--search-border-color: #eaecef;--search-item-text-color: #5d81a5;--search-item-focus-bg-color: #f3f4f5;--search-input-width: 8rem;--search-result-width: 20rem}.search-box{display:inline-block;position:relative;margin-left:1rem}@media print{.search-box{display:none}}.search-box input{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:text;width:var(--search-input-width);height:2rem;color:var(--search-text-color);display:inline-block;border:1px solid var(--search-border-color);border-radius:2rem;font-size:.9rem;line-height:2rem;padding:0 .5rem 0 2rem;outline:none;transition:all ease .3s;background:var(--search-bg-color) url("data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='12'%20height='13'%3e%3cg%20stroke-width='2'%20stroke='%23aaa'%20fill='none'%3e%3cpath%20d='M11.29%2011.71l-4-4'/%3e%3ccircle%20cx='5'%20cy='5'%20r='4'/%3e%3c/g%3e%3c/svg%3e") .6rem .5rem no-repeat;background-size:1rem}@media (max-width: 719px){.search-box input{cursor:pointer;width:0;border-color:transparent;position:relative}}.search-box input:focus{cursor:auto;border-color:var(--search-accent-color)}@media (max-width: 719px){.search-box input:focus{cursor:text;left:0;width:10rem}}@media (max-width: 419px){.search-box input:focus{width:8rem}}.search-box .suggestions{background:var(--search-bg-color);width:var(--search-result-width);position:absolute;top:2rem;right:0;border:1px solid var(--search-border-color);border-radius:6px;padding:.4rem;list-style-type:none}@media (max-width: 419px){.search-box .suggestions{width:calc(100vw - 4rem);right:-.5rem}}.search-box .suggestion{line-height:1.4;padding:.4rem .6rem;border-radius:4px;cursor:pointer}.search-box .suggestion a{white-space:normal;color:var(--search-item-text-color)}.search-box .suggestion.focus{background-color:var(--search-item-focus-bg-color)}.search-box .suggestion.focus a{color:var(--search-accent-color)}.search-box .suggestion .page-title{font-weight:600}.search-box .suggestion .page-header{font-size:.9em;margin-left:.25em}.sidebar{display:flex;flex-direction:column;justify-content:space-between}.vue-press-information{text-align:center;width:100%;font-size:12px;padding:1.5em;box-sizing:border-box}@media screen and (max-width: 720px){.vue-press-information{position:relative}} diff --git a/assets/tables.html-BkPAyJ3-.js b/assets/tables.html-BkPAyJ3-.js new file mode 100644 index 00000000..2770520d --- /dev/null +++ b/assets/tables.html-BkPAyJ3-.js @@ -0,0 +1 @@ +import{_ as i,r as n,c as s,a as e,d as t,e as a,w as o,b as d,o as l}from"./app-Bwgh_xIT.js";const c={},h=d('

    Tables

    This file auto-generated 2022-02-08 10:47:05 -0600 via 'rake tw:docs:table_markdown'. Do not hand-edit.

    alternate_values, asserted_distributions, attributions, biocuration_classifications, biological_associations, biological_associations_biological_associations_graphs, biological_associations_graphs, biological_relationship_types, biological_relationships, character_states, citation_topics, citations, collecting_events, collection_object_observations, collection_objects, collection_profiles, common_names, confidences, container_items, containers, contents, controlled_vocabulary_terms, data_attributes, dataset_record_fields, dataset_records, depictions, derived_collection_objects, descriptors, documentation, documents, extracts, gene_attributes, geographic_area_types, geographic_areas, geographic_areas_geographic_items, geographic_items, georeferences, identifiers, images, import_datasets, labels, languages, loan_items, loans, namespaces, notes, observation_matrices, observation_matrix_column_items, observation_matrix_columns, observation_matrix_row_items, observation_matrix_rows, observations, organizations, origin_relationships, otu_page_layout_sections, otu_page_layouts, otus, people, preparation_types, project_members, project_sources, protocol_relationships, protocols, ranged_lot_categories, repositories, roles, sequence_relationships, sequences, serial_chronologies, serials, sled_images, sources, tagged_section_keywords, tags, taxon_determinations, taxon_name_classifications, taxon_name_relationships, taxon_names, type_materials

    alternate_values

    ',4),_=e("a",{href:"#tables"},"top",-1),p=e("a",{href:"https://rdoc.taxonworks.org/AlternateValue.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),g=d('
    NameType
    idinteger
    alternate_value_object_attributecharacter varying
    alternate_value_object_idinteger
    alternate_value_object_typecharacter varying
    language_idinteger
    typecharacter varying
    valuetext
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    asserted_distributions

    ',2),m=e("a",{href:"#tables"},"top",-1),b=e("a",{href:"https://rdoc.taxonworks.org/AssertedDistribution.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),u=e("a",{href:"https://api.taxonworks.org/#/asserted_distributions",target:"_blank",rel:"noopener noreferrer"},"api",-1),y=d('
    NameType
    idinteger
    geographic_area_idinteger
    is_absentboolean
    otu_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    attributions

    ',2),f=e("a",{href:"#tables"},"top",-1),v=e("a",{href:"https://rdoc.taxonworks.org/Attribution.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),x=d('
    NameType
    idbigint
    attribution_object_idbigint
    attribution_object_typecharacter varying
    copyright_yearinteger
    licensecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idbigint

    biocuration_classifications

    ',2),w=e("a",{href:"#tables"},"top",-1),k=e("a",{href:"https://rdoc.taxonworks.org/BiocurationClassification.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),j=d('
    NameType
    idinteger
    biocuration_class_idinteger
    biological_collection_object_idinteger
    positioninteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    biological_associations

    ',2),z=e("a",{href:"#tables"},"top",-1),T=e("a",{href:"https://rdoc.taxonworks.org/BiologicalAssociation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),D=e("a",{href:"https://api.taxonworks.org/#/biological_associations",target:"_blank",rel:"noopener noreferrer"},"api",-1),N=d('
    NameType
    idinteger
    biological_association_object_idinteger
    biological_association_object_typecharacter varying
    biological_association_subject_idinteger
    biological_association_subject_typecharacter varying
    biological_relationship_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    biological_associations_biological_associations_graphs

    ',2),q=e("a",{href:"#tables"},"top",-1),C=e("a",{href:"https://rdoc.taxonworks.org/BiologicalAssociationsBiologicalAssociationsGraph.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),O=d('
    NameType
    idinteger
    biological_association_idinteger
    biological_associations_graph_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    biological_associations_graphs

    ',2),R=e("a",{href:"#tables"},"top",-1),S=e("a",{href:"https://rdoc.taxonworks.org/BiologicalAssociationsGraph.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),P=d('
    NameType
    idinteger
    namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    biological_relationship_types

    ',2),A=e("a",{href:"#tables"},"top",-1),I=e("a",{href:"https://rdoc.taxonworks.org/BiologicalRelationshipType.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),L=d('
    NameType
    idinteger
    biological_property_idinteger
    biological_relationship_idinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    biological_relationships

    ',2),B=e("a",{href:"#tables"},"top",-1),G=e("a",{href:"https://rdoc.taxonworks.org/BiologicalRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),M=d('
    NameType
    idinteger
    definitiontext
    inverted_namecharacter varying
    is_reflexiveboolean
    is_transitiveboolean
    namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    character_states

    ',2),Z=e("a",{href:"#tables"},"top",-1),V=e("a",{href:"https://rdoc.taxonworks.org/CharacterState.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),E=d('
    NameType
    idinteger
    description_namecharacter varying
    descriptor_idinteger
    key_namecharacter varying
    labelcharacter varying
    namecharacter varying
    positioninteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    citation_topics

    ',2),F=e("a",{href:"#tables"},"top",-1),J=e("a",{href:"https://rdoc.taxonworks.org/CitationTopic.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),K=d('
    NameType
    idinteger
    citation_idinteger
    pagescharacter varying
    topic_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    citations

    ',2),U=e("a",{href:"#tables"},"top",-1),H=e("a",{href:"https://rdoc.taxonworks.org/Citation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Q=e("a",{href:"https://api.taxonworks.org/#/citations",target:"_blank",rel:"noopener noreferrer"},"api",-1),W=d('
    NameType
    idinteger
    citation_object_idinteger
    citation_object_typecharacter varying
    is_originalboolean
    pagescharacter varying
    source_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    collecting_events

    ',2),X=e("a",{href:"#tables"},"top",-1),Y=e("a",{href:"https://rdoc.taxonworks.org/CollectingEvent.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),$=e("a",{href:"https://api.taxonworks.org/#/collecting_events",target:"_blank",rel:"noopener noreferrer"},"api",-1),tt=d('
    NameType
    idinteger
    cachedtext
    cached_level0_geographic_namecharacter varying
    cached_level1_geographic_namecharacter varying
    cached_level2_geographic_namecharacter varying
    document_labeltext
    elevation_precisioncharacter varying
    end_date_dayinteger
    end_date_monthinteger
    end_date_yearinteger
    field_notestext
    formationcharacter varying
    geographic_area_idinteger
    groupcharacter varying
    lithologycharacter varying
    max_manumeric
    maximum_elevationnumeric
    md5_of_verbatim_labelcharacter varying
    membercharacter varying
    min_manumeric
    minimum_elevationnumeric
    print_labeltext
    start_date_dayinteger
    start_date_monthinteger
    start_date_yearinteger
    time_end_hoursmallint
    time_end_minutesmallint
    time_end_secondsmallint
    time_start_hoursmallint
    time_start_minutesmallint
    time_start_secondsmallint
    verbatim_collectorscharacter varying
    verbatim_datecharacter varying
    verbatim_datumcharacter varying
    verbatim_elevationcharacter varying
    verbatim_geolocation_uncertaintycharacter varying
    verbatim_habitattext
    verbatim_labeltext
    verbatim_latitudecharacter varying
    verbatim_localitycharacter varying
    verbatim_longitudecharacter varying
    verbatim_methodcharacter varying
    verbatim_trip_identifiercharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    collection_object_observations

    ',2),et=e("a",{href:"#tables"},"top",-1),dt=e("a",{href:"https://rdoc.taxonworks.org/CollectionObjectObservation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),rt=d('
    NameType
    idinteger
    datatext
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    collection_objects

    ',2),at=e("a",{href:"#tables"},"top",-1),ot=e("a",{href:"https://rdoc.taxonworks.org/CollectionObject.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),it=e("a",{href:"https://api.taxonworks.org/#/collection_objects",target:"_blank",rel:"noopener noreferrer"},"api",-1),nt=d('
    NameType
    idinteger
    accessioned_atdate
    buffered_collecting_eventtext
    buffered_determinationstext
    buffered_other_labelstext
    collecting_event_idinteger
    deaccession_reasoncharacter varying
    deaccessioned_atdate
    preparation_type_idinteger
    ranged_lot_category_idinteger
    repository_idinteger
    totalinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    collection_profiles

    ',2),st=e("a",{href:"#tables"},"top",-1),lt=e("a",{href:"https://rdoc.taxonworks.org/CollectionProfile.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ct=d('
    NameType
    idinteger
    arrangement_levelinteger
    collection_typecharacter varying
    computerization_levelinteger
    condition_of_labelsinteger
    conservation_statusinteger
    container_conditioninteger
    container_idinteger
    data_qualityinteger
    identification_levelinteger
    number_of_collection_objectsinteger
    number_of_containersinteger
    otu_idinteger
    processing_stateinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    common_names

    ',2),ht=e("a",{href:"#tables"},"top",-1),_t=e("a",{href:"https://rdoc.taxonworks.org/CommonName.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),pt=d('
    NameType
    idinteger
    end_yearinteger
    geographic_area_idinteger
    language_idinteger
    namecharacter varying
    otu_idinteger
    start_yearinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    confidences

    ',2),gt=e("a",{href:"#tables"},"top",-1),mt=e("a",{href:"https://rdoc.taxonworks.org/Confidence.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),bt=d('
    NameType
    idinteger
    confidence_level_idinteger
    confidence_object_idinteger
    confidence_object_typecharacter varying
    positioninteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    container_items

    ',2),ut=e("a",{href:"#tables"},"top",-1),yt=e("a",{href:"https://rdoc.taxonworks.org/ContainerItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ft=d('
    NameType
    idinteger
    contained_object_idinteger
    contained_object_typecharacter varying
    dispositioncharacter varying
    disposition_xinteger
    disposition_yinteger
    disposition_zinteger
    parent_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    containers

    ',2),vt=e("a",{href:"#tables"},"top",-1),xt=e("a",{href:"https://rdoc.taxonworks.org/Container.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),wt=d('
    NameType
    idinteger
    dispositioncharacter varying
    namecharacter varying
    print_labeltext
    size_xinteger
    size_yinteger
    size_zinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    contents

    ',2),kt=e("a",{href:"#tables"},"top",-1),jt=e("a",{href:"https://rdoc.taxonworks.org/Content.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),zt=e("a",{href:"https://api.taxonworks.org/#/contents",target:"_blank",rel:"noopener noreferrer"},"api",-1),Tt=d('
    NameType
    idinteger
    language_idbigint
    otu_idinteger
    revision_idinteger
    texttext
    topic_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    controlled_vocabulary_terms

    ',2),Dt=e("a",{href:"#tables"},"top",-1),Nt=e("a",{href:"https://rdoc.taxonworks.org/ControlledVocabularyTerm.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),qt=d('
    NameType
    idinteger
    css_colorcharacter varying
    definitiontext
    namecharacter varying
    positioninteger
    typecharacter varying
    uricharacter varying
    uri_relationcharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    data_attributes

    ',2),Ct=e("a",{href:"#tables"},"top",-1),Ot=e("a",{href:"https://rdoc.taxonworks.org/DataAttribute.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Rt=e("a",{href:"https://api.taxonworks.org/#/data_attributes",target:"_blank",rel:"noopener noreferrer"},"api",-1),St=d('
    NameType
    idinteger
    attribute_subject_idinteger
    attribute_subject_typecharacter varying
    controlled_vocabulary_term_idinteger
    import_predicatecharacter varying
    typecharacter varying
    valuetext
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    dataset_record_fields

    ',2),Pt=e("a",{href:"#tables"},"top",-1),At=e("a",{href:"https://rdoc.taxonworks.org/DatasetRecordField.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),It=d('
    NameType
    idbigint
    dataset_record_idbigint
    encoded_dataset_record_typeinteger
    import_dataset_idinteger
    positioninteger
    valuecharacter varying
    project_idinteger

    dataset_records

    ',2),Lt=e("a",{href:"#tables"},"top",-1),Bt=e("a",{href:"https://rdoc.taxonworks.org/DatasetRecord.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Gt=d('
    NameType
    idbigint
    import_dataset_idbigint
    metadatajsonb
    statuscharacter varying
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp(6) without time zone
    updated_attimestamp(6) without time zone
    project_idbigint

    depictions

    ',2),Mt=e("a",{href:"#tables"},"top",-1),Zt=e("a",{href:"https://rdoc.taxonworks.org/Depiction.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Vt=d('
    NameType
    idinteger
    captiontext
    depiction_object_idinteger
    depiction_object_typecharacter varying
    figure_labelcharacter varying
    image_idinteger
    is_metadata_depictionboolean
    positioninteger
    sled_image_idbigint
    sled_image_x_positioninteger
    sled_image_y_positioninteger
    svg_clipxml
    svg_view_boxcharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    derived_collection_objects

    ',2),Et=e("a",{href:"#tables"},"top",-1),Ft=e("a",{href:"https://rdoc.taxonworks.org/DerivedCollectionObject.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Jt=d('
    NameType
    idinteger
    collection_object_idinteger
    collection_object_observation_idinteger
    positioninteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    descriptors

    ',2),Kt=e("a",{href:"#tables"},"top",-1),Ut=e("a",{href:"https://rdoc.taxonworks.org/Descriptor.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ht=d('
    NameType
    idinteger
    cached_gene_attribute_sqlcharacter varying
    default_unitcharacter varying
    descriptiontext
    description_namecharacter varying
    gene_attribute_logiccharacter varying
    key_namecharacter varying
    namecharacter varying
    positioninteger
    short_namecharacter varying
    typecharacter varying
    weightinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    documentation

    ',2),Qt=e("a",{href:"#tables"},"top",-1),Wt=e("a",{href:"https://rdoc.taxonworks.org/Documentation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Xt=d('
    NameType
    idinteger
    document_idinteger
    documentation_object_idinteger
    documentation_object_typecharacter varying
    positioninteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    documents

    ',2),Yt=e("a",{href:"#tables"},"top",-1),$t=e("a",{href:"https://rdoc.taxonworks.org/Document.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),te=d('
    NameType
    idinteger
    document_file_content_typecharacter varying
    document_file_file_namecharacter varying
    document_file_file_sizeinteger
    document_file_fingerprintcharacter varying
    document_file_updated_attimestamp without time zone
    is_publicboolean
    page_mapjsonb
    page_totalinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    extracts

    ',2),ee=e("a",{href:"#tables"},"top",-1),de=e("a",{href:"https://rdoc.taxonworks.org/Extract.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),re=d('
    NameType
    idinteger
    day_madeinteger
    month_madeinteger
    repository_idbigint
    verbatim_anatomical_origincharacter varying
    year_madeinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    gene_attributes

    ',2),ae=e("a",{href:"#tables"},"top",-1),oe=e("a",{href:"https://rdoc.taxonworks.org/GeneAttribute.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ie=d('
    NameType
    idinteger
    controlled_vocabulary_term_idinteger
    descriptor_idinteger
    positioninteger
    sequence_idinteger
    sequence_relationship_typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    geographic_area_types

    ',2),ne=e("a",{href:"#tables"},"top",-1),se=e("a",{href:"https://rdoc.taxonworks.org/GeographicAreaType.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),le=d('
    NameType
    idinteger
    namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    geographic_areas

    ',2),ce=e("a",{href:"#tables"},"top",-1),he=e("a",{href:"https://rdoc.taxonworks.org/GeographicArea.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),_e=d('
    NameType
    idinteger
    data_origincharacter varying
    geographic_area_type_idinteger
    iso_3166_a2character varying
    iso_3166_a3character varying
    level0_idinteger
    level1_idinteger
    level2_idinteger
    namecharacter varying
    parent_idinteger
    tdwgIDcharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    geographic_areas_geographic_items

    ',2),pe=e("a",{href:"#tables"},"top",-1),ge=e("a",{href:"https://rdoc.taxonworks.org/GeographicAreasGeographicItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),me=d('
    NameType
    idinteger
    data_origincharacter varying
    date_valid_fromcharacter varying
    date_valid_tocharacter varying
    geographic_area_idinteger
    geographic_item_idinteger
    origin_gidinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    geographic_items

    ',2),be=e("a",{href:"#tables"},"top",-1),ue=e("a",{href:"https://rdoc.taxonworks.org/GeographicItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ye=d('
    NameType
    idinteger
    geometry_collectiongeography(GeometryCollectionZ,4326)
    line_stringgeography(LineStringZ,4326)
    multi_line_stringgeography(MultiLineStringZ,4326)
    multi_pointgeography(MultiPointZ,4326)
    multi_polygongeography(MultiPolygonZ,4326)
    pointgeography(PointZ,4326)
    polygongeography(PolygonZ,4326)
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    georeferences

    ',2),fe=e("a",{href:"#tables"},"top",-1),ve=e("a",{href:"https://rdoc.taxonworks.org/Georeference.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),xe=d('
    NameType
    idinteger
    api_requestcharacter varying
    collecting_event_idinteger
    day_georeferencedinteger
    error_depthnumeric
    error_geographic_item_idinteger
    error_radiusnumeric
    geographic_item_idinteger
    is_median_zboolean
    is_publicboolean
    is_undefined_zboolean
    month_georeferencedinteger
    positioninteger
    typecharacter varying
    year_georeferencedinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    identifiers

    ',2),we=e("a",{href:"#tables"},"top",-1),ke=e("a",{href:"https://rdoc.taxonworks.org/Identifier.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),je=e("a",{href:"https://api.taxonworks.org/#/identifiers",target:"_blank",rel:"noopener noreferrer"},"api",-1),ze=d('
    NameType
    idinteger
    cachedtext
    identifiercharacter varying
    identifier_object_idinteger
    identifier_object_typecharacter varying
    namespace_idinteger
    positioninteger
    relationcharacter varying
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    images

    ',2),Te=e("a",{href:"#tables"},"top",-1),De=e("a",{href:"https://rdoc.taxonworks.org/Image.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ne=e("a",{href:"https://api.taxonworks.org/#/images",target:"_blank",rel:"noopener noreferrer"},"api",-1),qe=d('
    NameType
    idinteger
    heightinteger
    image_file_content_typecharacter varying
    image_file_file_namecharacter varying
    image_file_file_sizeinteger
    image_file_fingerprintcharacter varying
    image_file_metatext
    image_file_updated_attimestamp without time zone
    pixels_to_centimeterdouble precision
    user_file_namecharacter varying
    widthinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    import_datasets

    ',2),Ce=e("a",{href:"#tables"},"top",-1),Oe=e("a",{href:"https://rdoc.taxonworks.org/ImportDataset.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Re=d('
    NameType
    idbigint
    descriptioncharacter varying
    metadatajsonb
    source_content_typecharacter varying
    source_file_namecharacter varying
    source_file_sizebigint
    source_updated_attimestamp without time zone
    statuscharacter varying
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp(6) without time zone
    updated_attimestamp(6) without time zone
    project_idbigint

    labels

    ',2),Se=e("a",{href:"#tables"},"top",-1),Pe=e("a",{href:"https://rdoc.taxonworks.org/Label.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ae=d('
    NameType
    idbigint
    is_copy_editedboolean
    is_printedboolean
    label_object_idbigint
    label_object_typecharacter varying
    stylecharacter varying
    textcharacter varying
    totalinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    languages

    ',2),Ie=e("a",{href:"#tables"},"top",-1),Le=e("a",{href:"https://rdoc.taxonworks.org/Language.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Be=d('
    NameType
    idinteger
    alpha_2character varying
    alpha_3_bibliographiccharacter varying
    alpha_3_terminologiccharacter varying
    english_namecharacter varying
    french_namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    loan_items

    ',2),Ge=e("a",{href:"#tables"},"top",-1),Me=e("a",{href:"https://rdoc.taxonworks.org/LoanItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ze=d('
    NameType
    idinteger
    date_returneddate
    dispositioncharacter varying
    loan_idinteger
    loan_item_object_idinteger
    loan_item_object_typecharacter varying
    positioninteger
    totalinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    loans

    ',2),Ve=e("a",{href:"#tables"},"top",-1),Ee=e("a",{href:"https://rdoc.taxonworks.org/Loan.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Fe=d('
    NameType
    idinteger
    date_closeddate
    date_receiveddate
    date_requesteddate
    date_return_expecteddate
    date_sentdate
    is_giftboolean
    lender_addresstext
    recipient_addresscharacter varying
    recipient_countrycharacter varying
    recipient_emailcharacter varying
    recipient_honorificcharacter varying
    recipient_phonecharacter varying
    request_methodcharacter varying
    supervisor_emailcharacter varying
    supervisor_phonecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    namespaces

    ',2),Je=e("a",{href:"#tables"},"top",-1),Ke=e("a",{href:"https://rdoc.taxonworks.org/Namespace.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ue=d('
    NameType
    idinteger
    delimitercharacter varying
    institutioncharacter varying
    is_virtualboolean
    namecharacter varying
    short_namecharacter varying
    verbatim_short_namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    notes

    ',2),He=e("a",{href:"#tables"},"top",-1),Qe=e("a",{href:"https://rdoc.taxonworks.org/Note.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),We=e("a",{href:"https://api.taxonworks.org/#/notes",target:"_blank",rel:"noopener noreferrer"},"api",-1),Xe=d('
    NameType
    idinteger
    note_object_attributecharacter varying
    note_object_idinteger
    note_object_typecharacter varying
    texttext
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    observation_matrices

    ',2),Ye=e("a",{href:"#tables"},"top",-1),$e=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrix.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),td=e("a",{href:"https://api.taxonworks.org/#/observation_matrices",target:"_blank",rel:"noopener noreferrer"},"api",-1),ed=d('
    NameType
    idinteger
    namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    observation_matrix_column_items

    ',2),dd=e("a",{href:"#tables"},"top",-1),rd=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrixColumnItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ad=d('
    NameType
    idinteger
    controlled_vocabulary_term_idinteger
    descriptor_idinteger
    observation_matrix_idinteger
    positioninteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    observation_matrix_columns

    ',2),od=e("a",{href:"#tables"},"top",-1),id=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrixColumn.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),nd=d('
    NameType
    idinteger
    cached_observation_matrix_column_item_idinteger
    descriptor_idinteger
    observation_matrix_idinteger
    positioninteger
    reference_countinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    observation_matrix_row_items

    ',2),sd=e("a",{href:"#tables"},"top",-1),ld=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrixRowItem.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),cd=d('
    NameType
    idinteger
    collection_object_idinteger
    controlled_vocabulary_term_idinteger
    observation_matrix_idinteger
    otu_idinteger
    positioninteger
    taxon_name_idbigint
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    observation_matrix_rows

    ',2),hd=e("a",{href:"#tables"},"top",-1),_d=e("a",{href:"https://rdoc.taxonworks.org/ObservationMatrixRow.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),pd=d('
    NameType
    idinteger
    cached_observation_matrix_row_item_idinteger
    collection_object_idinteger
    namecharacter varying
    observation_matrix_idinteger
    otu_idinteger
    positioninteger
    reference_countinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    observations

    ',2),gd=e("a",{href:"#tables"},"top",-1),md=e("a",{href:"https://rdoc.taxonworks.org/Observation.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),bd=e("a",{href:"https://api.taxonworks.org/#/observations",target:"_blank",rel:"noopener noreferrer"},"api",-1),ud=d('
    NameType
    idinteger
    cachedcharacter varying
    cached_column_labelcharacter varying
    cached_row_labelcharacter varying
    character_state_idinteger
    collection_object_idinteger
    continuous_unitcharacter varying
    continuous_valuenumeric
    descriptiontext
    descriptor_idinteger
    frequencycharacter varying
    otu_idinteger
    presenceboolean
    sample_maxnumeric
    sample_meannumeric
    sample_mediannumeric
    sample_minnumeric
    sample_ninteger
    sample_standard_deviationnumeric
    sample_standard_errornumeric
    sample_unitscharacter varying
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    organizations

    ',2),yd=e("a",{href:"#tables"},"top",-1),fd=e("a",{href:"https://rdoc.taxonworks.org/Organization.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),vd=d('
    NameType
    idbigint
    addresscharacter varying
    alternate_namecharacter varying
    area_served_idinteger
    department_idinteger
    descriptiontext
    disambiguating_descriptiontext
    dunscharacter varying
    emailcharacter varying
    global_location_numbercharacter varying
    legal_namecharacter varying
    namecharacter varying
    parent_organization_idinteger
    same_as_idinteger
    telephonecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    origin_relationships

    ',2),xd=e("a",{href:"#tables"},"top",-1),wd=e("a",{href:"https://rdoc.taxonworks.org/OriginRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),kd=d('
    NameType
    idinteger
    new_object_idinteger
    new_object_typecharacter varying
    old_object_idinteger
    old_object_typecharacter varying
    positioninteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    otu_page_layout_sections

    ',2),jd=e("a",{href:"#tables"},"top",-1),zd=e("a",{href:"https://rdoc.taxonworks.org/OtuPageLayoutSection.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Td=d('
    NameType
    idinteger
    dynamic_content_classcharacter varying
    otu_page_layout_idinteger
    positioninteger
    topic_idinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    otu_page_layouts

    ',2),Dd=e("a",{href:"#tables"},"top",-1),Nd=e("a",{href:"https://rdoc.taxonworks.org/OtuPageLayout.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),qd=d('
    NameType
    idinteger
    namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    otus

    ',2),Cd=e("a",{href:"#tables"},"top",-1),Od=e("a",{href:"https://rdoc.taxonworks.org/Otu.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Rd=e("a",{href:"https://api.taxonworks.org/#/otus",target:"_blank",rel:"noopener noreferrer"},"api",-1),Sd=d('
    NameType
    idinteger
    namecharacter varying
    taxon_name_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    people

    ',2),Pd=e("a",{href:"#tables"},"top",-1),Ad=e("a",{href:"https://rdoc.taxonworks.org/Person.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Id=e("a",{href:"https://api.taxonworks.org/#/people",target:"_blank",rel:"noopener noreferrer"},"api",-1),Ld=d('
    NameType
    idinteger
    cachedtext
    first_namecharacter varying
    last_namecharacter varying
    prefixcharacter varying
    suffixcharacter varying
    typecharacter varying
    year_active_endinteger
    year_active_startinteger
    year_borninteger
    year_diedinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    preparation_types

    ',2),Bd=e("a",{href:"#tables"},"top",-1),Gd=e("a",{href:"https://rdoc.taxonworks.org/PreparationType.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Md=d('
    NameType
    idinteger
    definitiontext
    namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    project_members

    ',2),Zd=e("a",{href:"#tables"},"top",-1),Vd=e("a",{href:"https://rdoc.taxonworks.org/ProjectMember.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ed=d('
    NameType
    idinteger
    clipboardjsonb
    is_project_administratorboolean
    user_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    project_sources

    ',2),Fd=e("a",{href:"#tables"},"top",-1),Jd=e("a",{href:"https://rdoc.taxonworks.org/ProjectSource.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Kd=d('
    NameType
    idinteger
    source_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    protocol_relationships

    ',2),Ud=e("a",{href:"#tables"},"top",-1),Hd=e("a",{href:"https://rdoc.taxonworks.org/ProtocolRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Qd=d('
    NameType
    idinteger
    positioninteger
    protocol_idinteger
    protocol_relationship_object_idinteger
    protocol_relationship_object_typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    protocols

    ',2),Wd=e("a",{href:"#tables"},"top",-1),Xd=e("a",{href:"https://rdoc.taxonworks.org/Protocol.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Yd=d('
    NameType
    idinteger
    descriptiontext
    namecharacter varying
    short_nametext
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    ranged_lot_categories

    ',2),$d=e("a",{href:"#tables"},"top",-1),tr=e("a",{href:"https://rdoc.taxonworks.org/RangedLotCategory.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),er=d('
    NameType
    idinteger
    maximum_valueinteger
    minimum_valueinteger
    namecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    repositories

    ',2),dr=e("a",{href:"#tables"},"top",-1),rr=e("a",{href:"https://rdoc.taxonworks.org/Repository.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),ar=d('
    NameType
    idinteger
    acronymcharacter varying
    institutional_LSIDcharacter varying
    is_index_herbariorumboolean
    namecharacter varying
    statuscharacter varying
    urlcharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    roles

    ',2),or=e("a",{href:"#tables"},"top",-1),ir=e("a",{href:"https://rdoc.taxonworks.org/Role.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),nr=d('
    NameType
    idinteger
    organization_idbigint
    person_idinteger
    positioninteger
    role_object_idinteger
    role_object_typecharacter varying
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    sequence_relationships

    ',2),sr=e("a",{href:"#tables"},"top",-1),lr=e("a",{href:"https://rdoc.taxonworks.org/SequenceRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),cr=d('
    NameType
    idinteger
    object_sequence_idinteger
    subject_sequence_idinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    sequences

    ',2),hr=e("a",{href:"#tables"},"top",-1),_r=e("a",{href:"https://rdoc.taxonworks.org/Sequence.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),pr=d('
    NameType
    idinteger
    namecharacter varying
    sequencetext
    sequence_typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    serial_chronologies

    ',2),gr=e("a",{href:"#tables"},"top",-1),mr=e("a",{href:"https://rdoc.taxonworks.org/SerialChronology.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),br=d('
    NameType
    idinteger
    preceding_serial_idinteger
    succeeding_serial_idinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    serials

    ',2),ur=e("a",{href:"#tables"},"top",-1),yr=e("a",{href:"https://rdoc.taxonworks.org/Serial.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),fr=d('
    NameType
    idinteger
    first_year_of_issuesmallint
    last_year_of_issuesmallint
    nametext
    place_publishedcharacter varying
    primary_language_idinteger
    publishertext
    translated_from_serial_idinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    sled_images

    ',2),vr=e("a",{href:"#tables"},"top",-1),xr=e("a",{href:"https://rdoc.taxonworks.org/SledImage.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),wr=d('
    NameType
    idbigint
    cached_total_collection_objectsinteger
    cached_total_columnsinteger
    cached_total_rowsinteger
    image_idbigint
    metadatajsonb
    object_layoutjsonb
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp(6) without time zone
    updated_attimestamp(6) without time zone
    project_idbigint

    sources

    ',2),kr=e("a",{href:"#tables"},"top",-1),jr=e("a",{href:"https://rdoc.taxonworks.org/Source.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),zr=e("a",{href:"https://api.taxonworks.org/#/sources",target:"_blank",rel:"noopener noreferrer"},"api",-1),Tr=d('
    NameType
    idinteger
    abstracttext
    addresscharacter varying
    annotecharacter varying
    authortext
    bibtex_typecharacter varying
    booktitlecharacter varying
    cachedtext
    cached_author_stringtext
    cached_nomenclature_datedate
    chaptercharacter varying
    copyrighttext
    crossrefcharacter varying
    daysmallint
    doicharacter varying
    editioncharacter varying
    editorcharacter varying
    howpublishedcharacter varying
    institutioncharacter varying
    isbncharacter varying
    issncharacter varying
    journalcharacter varying
    keycharacter varying
    languagecharacter varying
    language_idinteger
    monthcharacter varying
    notecharacter varying
    numbercharacter varying
    organizationcharacter varying
    pagescharacter varying
    publishercharacter varying
    schoolcharacter varying
    serial_idinteger
    seriescharacter varying
    stated_yearcharacter varying
    titletext
    translatorcharacter varying
    typecharacter varying
    urlcharacter varying
    verbatimcharacter varying
    verbatim_contentstext
    verbatim_keywordstext
    volumecharacter varying
    yearsmallint
    year_suffixcharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone

    tagged_section_keywords

    ',2),Dr=e("a",{href:"#tables"},"top",-1),Nr=e("a",{href:"https://rdoc.taxonworks.org/TaggedSectionKeyword.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),qr=d('
    NameType
    idinteger
    keyword_idinteger
    otu_page_layout_section_idinteger
    positioninteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    tags

    ',2),Cr=e("a",{href:"#tables"},"top",-1),Or=e("a",{href:"https://rdoc.taxonworks.org/Tag.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Rr=d('
    NameType
    idinteger
    keyword_idinteger
    positioninteger
    tag_object_attributecharacter varying
    tag_object_idinteger
    tag_object_typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    taxon_determinations

    ',2),Sr=e("a",{href:"#tables"},"top",-1),Pr=e("a",{href:"https://rdoc.taxonworks.org/TaxonDetermination.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Ar=d('
    NameType
    idinteger
    biological_collection_object_idinteger
    day_madeinteger
    month_madeinteger
    otu_idinteger
    positioninteger
    print_labeltext
    year_madeinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    taxon_name_classifications

    ',2),Ir=e("a",{href:"#tables"},"top",-1),Lr=e("a",{href:"https://rdoc.taxonworks.org/TaxonNameClassification.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Br=e("a",{href:"https://api.taxonworks.org/#/taxon_name_classifications",target:"_blank",rel:"noopener noreferrer"},"api",-1),Gr=d('
    NameType
    idinteger
    taxon_name_idinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    taxon_name_relationships

    ',2),Mr=e("a",{href:"#tables"},"top",-1),Zr=e("a",{href:"https://rdoc.taxonworks.org/TaxonNameRelationship.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Vr=e("a",{href:"https://api.taxonworks.org/#/taxon_name_relationships",target:"_blank",rel:"noopener noreferrer"},"api",-1),Er=d('
    NameType
    idinteger
    object_taxon_name_idinteger
    subject_taxon_name_idinteger
    typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    taxon_names

    ',2),Fr=e("a",{href:"#tables"},"top",-1),Jr=e("a",{href:"https://rdoc.taxonworks.org/TaxonName.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Kr=e("a",{href:"https://api.taxonworks.org/#/taxon_names",target:"_blank",rel:"noopener noreferrer"},"api",-1),Ur=d('
    NameType
    idinteger
    cachedcharacter varying
    cached_author_yearcharacter varying
    cached_classified_ascharacter varying
    cached_htmlcharacter varying
    cached_is_validboolean
    cached_misspellingboolean
    cached_nomenclature_datedate
    cached_original_combinationcharacter varying
    cached_original_combination_htmlcharacter varying
    cached_primary_homonymcharacter varying
    cached_primary_homonym_alternative_spellingcharacter varying
    cached_secondary_homonymcharacter varying
    cached_secondary_homonym_alternative_spellingcharacter varying
    cached_valid_taxon_name_idinteger
    etymologytext
    feminine_namecharacter varying
    masculine_namecharacter varying
    namecharacter varying
    neuter_namecharacter varying
    parent_idinteger
    rank_classcharacter varying
    typecharacter varying
    verbatim_authorcharacter varying
    verbatim_namecharacter varying
    year_of_publicationinteger
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger

    type_materials

    ',2),Hr=e("a",{href:"#tables"},"top",-1),Qr=e("a",{href:"https://rdoc.taxonworks.org/TypeMaterial.html",target:"_blank",rel:"noopener noreferrer"},"rdoc",-1),Wr=d('
    NameType
    idinteger
    collection_object_idinteger
    protonym_idinteger
    type_typecharacter varying
    created_by_idinteger
    updated_by_idinteger
    created_attimestamp without time zone
    updated_attimestamp without time zone
    project_idinteger
    ',1);function Xr(Yr,$r){const r=n("RouteLink");return l(),s("div",null,[h,e("p",null,[_,t(","),a(r,{to:"/develop/Data/models.html#alternate-value"},{default:o(()=>[t("er")]),_:1}),t(","),p]),g,e("p",null,[m,t(","),a(r,{to:"/develop/Data/models.html#asserted-distribution"},{default:o(()=>[t("er")]),_:1}),t(","),b,t(","),u]),y,e("p",null,[f,t(","),a(r,{to:"/develop/Data/models.html#attribution"},{default:o(()=>[t("er")]),_:1}),t(","),v]),x,e("p",null,[w,t(","),a(r,{to:"/develop/Data/models.html#biocuration-classification"},{default:o(()=>[t("er")]),_:1}),t(","),k]),j,e("p",null,[z,t(","),a(r,{to:"/develop/Data/models.html#biological-association"},{default:o(()=>[t("er")]),_:1}),t(","),T,t(","),D]),N,e("p",null,[q,t(","),a(r,{to:"/develop/Data/models.html#biological-associations-biological-associations-graph"},{default:o(()=>[t("er")]),_:1}),t(","),C]),O,e("p",null,[R,t(","),a(r,{to:"/develop/Data/models.html#biological-associations-graph"},{default:o(()=>[t("er")]),_:1}),t(","),S]),P,e("p",null,[A,t(","),a(r,{to:"/develop/Data/models.html#biological-relationship-type"},{default:o(()=>[t("er")]),_:1}),t(","),I]),L,e("p",null,[B,t(","),a(r,{to:"/develop/Data/models.html#biological-relationship"},{default:o(()=>[t("er")]),_:1}),t(","),G]),M,e("p",null,[Z,t(","),a(r,{to:"/develop/Data/models.html#character-state"},{default:o(()=>[t("er")]),_:1}),t(","),V]),E,e("p",null,[F,t(","),a(r,{to:"/develop/Data/models.html#citation-topic"},{default:o(()=>[t("er")]),_:1}),t(","),J]),K,e("p",null,[U,t(","),a(r,{to:"/develop/Data/models.html#citation"},{default:o(()=>[t("er")]),_:1}),t(","),H,t(","),Q]),W,e("p",null,[X,t(","),a(r,{to:"/develop/Data/models.html#collecting-event"},{default:o(()=>[t("er")]),_:1}),t(","),Y,t(","),$]),tt,e("p",null,[et,t(","),a(r,{to:"/develop/Data/models.html#collection-object-observation"},{default:o(()=>[t("er")]),_:1}),t(","),dt]),rt,e("p",null,[at,t(","),a(r,{to:"/develop/Data/models.html#collection-object"},{default:o(()=>[t("er")]),_:1}),t(","),ot,t(","),it]),nt,e("p",null,[st,t(","),a(r,{to:"/develop/Data/models.html#collection-profile"},{default:o(()=>[t("er")]),_:1}),t(","),lt]),ct,e("p",null,[ht,t(","),a(r,{to:"/develop/Data/models.html#common-name"},{default:o(()=>[t("er")]),_:1}),t(","),_t]),pt,e("p",null,[gt,t(","),a(r,{to:"/develop/Data/models.html#confidence"},{default:o(()=>[t("er")]),_:1}),t(","),mt]),bt,e("p",null,[ut,t(","),a(r,{to:"/develop/Data/models.html#container-item"},{default:o(()=>[t("er")]),_:1}),t(","),yt]),ft,e("p",null,[vt,t(","),a(r,{to:"/develop/Data/models.html#container"},{default:o(()=>[t("er")]),_:1}),t(","),xt]),wt,e("p",null,[kt,t(","),a(r,{to:"/develop/Data/models.html#content"},{default:o(()=>[t("er")]),_:1}),t(","),jt,t(","),zt]),Tt,e("p",null,[Dt,t(","),a(r,{to:"/develop/Data/models.html#controlled-vocabulary-term"},{default:o(()=>[t("er")]),_:1}),t(","),Nt]),qt,e("p",null,[Ct,t(","),a(r,{to:"/develop/Data/models.html#data-attribute"},{default:o(()=>[t("er")]),_:1}),t(","),Ot,t(","),Rt]),St,e("p",null,[Pt,t(","),a(r,{to:"/develop/Data/models.html#dataset-record-field"},{default:o(()=>[t("er")]),_:1}),t(","),At]),It,e("p",null,[Lt,t(","),a(r,{to:"/develop/Data/models.html#dataset-record"},{default:o(()=>[t("er")]),_:1}),t(","),Bt]),Gt,e("p",null,[Mt,t(","),a(r,{to:"/develop/Data/models.html#depiction"},{default:o(()=>[t("er")]),_:1}),t(","),Zt]),Vt,e("p",null,[Et,t(","),a(r,{to:"/develop/Data/models.html#derived-collection-object"},{default:o(()=>[t("er")]),_:1}),t(","),Ft]),Jt,e("p",null,[Kt,t(","),a(r,{to:"/develop/Data/models.html#descriptor"},{default:o(()=>[t("er")]),_:1}),t(","),Ut]),Ht,e("p",null,[Qt,t(","),a(r,{to:"/develop/Data/models.html#documentation"},{default:o(()=>[t("er")]),_:1}),t(","),Wt]),Xt,e("p",null,[Yt,t(","),a(r,{to:"/develop/Data/models.html#document"},{default:o(()=>[t("er")]),_:1}),t(","),$t]),te,e("p",null,[ee,t(","),a(r,{to:"/develop/Data/models.html#extract"},{default:o(()=>[t("er")]),_:1}),t(","),de]),re,e("p",null,[ae,t(","),a(r,{to:"/develop/Data/models.html#gene-attribute"},{default:o(()=>[t("er")]),_:1}),t(","),oe]),ie,e("p",null,[ne,t(","),a(r,{to:"/develop/Data/models.html#geographic-area-type"},{default:o(()=>[t("er")]),_:1}),t(","),se]),le,e("p",null,[ce,t(","),a(r,{to:"/develop/Data/models.html#geographic-area"},{default:o(()=>[t("er")]),_:1}),t(","),he]),_e,e("p",null,[pe,t(","),a(r,{to:"/develop/Data/models.html#geographic-areas-geographic-item"},{default:o(()=>[t("er")]),_:1}),t(","),ge]),me,e("p",null,[be,t(","),a(r,{to:"/develop/Data/models.html#geographic-item"},{default:o(()=>[t("er")]),_:1}),t(","),ue]),ye,e("p",null,[fe,t(","),a(r,{to:"/develop/Data/models.html#georeference"},{default:o(()=>[t("er")]),_:1}),t(","),ve]),xe,e("p",null,[we,t(","),a(r,{to:"/develop/Data/models.html#identifier"},{default:o(()=>[t("er")]),_:1}),t(","),ke,t(","),je]),ze,e("p",null,[Te,t(","),a(r,{to:"/develop/Data/models.html#image"},{default:o(()=>[t("er")]),_:1}),t(","),De,t(","),Ne]),qe,e("p",null,[Ce,t(","),a(r,{to:"/develop/Data/models.html#import-dataset"},{default:o(()=>[t("er")]),_:1}),t(","),Oe]),Re,e("p",null,[Se,t(","),a(r,{to:"/develop/Data/models.html#label"},{default:o(()=>[t("er")]),_:1}),t(","),Pe]),Ae,e("p",null,[Ie,t(","),a(r,{to:"/develop/Data/models.html#language"},{default:o(()=>[t("er")]),_:1}),t(","),Le]),Be,e("p",null,[Ge,t(","),a(r,{to:"/develop/Data/models.html#loan-item"},{default:o(()=>[t("er")]),_:1}),t(","),Me]),Ze,e("p",null,[Ve,t(","),a(r,{to:"/develop/Data/models.html#loan"},{default:o(()=>[t("er")]),_:1}),t(","),Ee]),Fe,e("p",null,[Je,t(","),a(r,{to:"/develop/Data/models.html#namespace"},{default:o(()=>[t("er")]),_:1}),t(","),Ke]),Ue,e("p",null,[He,t(","),a(r,{to:"/develop/Data/models.html#note"},{default:o(()=>[t("er")]),_:1}),t(","),Qe,t(","),We]),Xe,e("p",null,[Ye,t(","),a(r,{to:"/develop/Data/models.html#observation-matrix"},{default:o(()=>[t("er")]),_:1}),t(","),$e,t(","),td]),ed,e("p",null,[dd,t(","),a(r,{to:"/develop/Data/models.html#observation-matrix-column-item"},{default:o(()=>[t("er")]),_:1}),t(","),rd]),ad,e("p",null,[od,t(","),a(r,{to:"/develop/Data/models.html#observation-matrix-column"},{default:o(()=>[t("er")]),_:1}),t(","),id]),nd,e("p",null,[sd,t(","),a(r,{to:"/develop/Data/models.html#observation-matrix-row-item"},{default:o(()=>[t("er")]),_:1}),t(","),ld]),cd,e("p",null,[hd,t(","),a(r,{to:"/develop/Data/models.html#observation-matrix-row"},{default:o(()=>[t("er")]),_:1}),t(","),_d]),pd,e("p",null,[gd,t(","),a(r,{to:"/develop/Data/models.html#observation"},{default:o(()=>[t("er")]),_:1}),t(","),md,t(","),bd]),ud,e("p",null,[yd,t(","),a(r,{to:"/develop/Data/models.html#organization"},{default:o(()=>[t("er")]),_:1}),t(","),fd]),vd,e("p",null,[xd,t(","),a(r,{to:"/develop/Data/models.html#origin-relationship"},{default:o(()=>[t("er")]),_:1}),t(","),wd]),kd,e("p",null,[jd,t(","),a(r,{to:"/develop/Data/models.html#otu-page-layout-section"},{default:o(()=>[t("er")]),_:1}),t(","),zd]),Td,e("p",null,[Dd,t(","),a(r,{to:"/develop/Data/models.html#otu-page-layout"},{default:o(()=>[t("er")]),_:1}),t(","),Nd]),qd,e("p",null,[Cd,t(","),a(r,{to:"/develop/Data/models.html#otu"},{default:o(()=>[t("er")]),_:1}),t(","),Od,t(","),Rd]),Sd,e("p",null,[Pd,t(","),a(r,{to:"/develop/Data/models.html#person"},{default:o(()=>[t("er")]),_:1}),t(","),Ad,t(","),Id]),Ld,e("p",null,[Bd,t(","),a(r,{to:"/develop/Data/models.html#preparation-type"},{default:o(()=>[t("er")]),_:1}),t(","),Gd]),Md,e("p",null,[Zd,t(","),a(r,{to:"/develop/Data/models.html#project-member"},{default:o(()=>[t("er")]),_:1}),t(","),Vd]),Ed,e("p",null,[Fd,t(","),a(r,{to:"/develop/Data/models.html#project-source"},{default:o(()=>[t("er")]),_:1}),t(","),Jd]),Kd,e("p",null,[Ud,t(","),a(r,{to:"/develop/Data/models.html#protocol-relationship"},{default:o(()=>[t("er")]),_:1}),t(","),Hd]),Qd,e("p",null,[Wd,t(","),a(r,{to:"/develop/Data/models.html#protocol"},{default:o(()=>[t("er")]),_:1}),t(","),Xd]),Yd,e("p",null,[$d,t(","),a(r,{to:"/develop/Data/models.html#ranged-lot-category"},{default:o(()=>[t("er")]),_:1}),t(","),tr]),er,e("p",null,[dr,t(","),a(r,{to:"/develop/Data/models.html#repository"},{default:o(()=>[t("er")]),_:1}),t(","),rr]),ar,e("p",null,[or,t(","),a(r,{to:"/develop/Data/models.html#role"},{default:o(()=>[t("er")]),_:1}),t(","),ir]),nr,e("p",null,[sr,t(","),a(r,{to:"/develop/Data/models.html#sequence-relationship"},{default:o(()=>[t("er")]),_:1}),t(","),lr]),cr,e("p",null,[hr,t(","),a(r,{to:"/develop/Data/models.html#sequence"},{default:o(()=>[t("er")]),_:1}),t(","),_r]),pr,e("p",null,[gr,t(","),a(r,{to:"/develop/Data/models.html#serial-chronology"},{default:o(()=>[t("er")]),_:1}),t(","),mr]),br,e("p",null,[ur,t(","),a(r,{to:"/develop/Data/models.html#serial"},{default:o(()=>[t("er")]),_:1}),t(","),yr]),fr,e("p",null,[vr,t(","),a(r,{to:"/develop/Data/models.html#sled-image"},{default:o(()=>[t("er")]),_:1}),t(","),xr]),wr,e("p",null,[kr,t(","),a(r,{to:"/develop/Data/models.html#source"},{default:o(()=>[t("er")]),_:1}),t(","),jr,t(","),zr]),Tr,e("p",null,[Dr,t(","),a(r,{to:"/develop/Data/models.html#tagged-section-keyword"},{default:o(()=>[t("er")]),_:1}),t(","),Nr]),qr,e("p",null,[Cr,t(","),a(r,{to:"/develop/Data/models.html#tag"},{default:o(()=>[t("er")]),_:1}),t(","),Or]),Rr,e("p",null,[Sr,t(","),a(r,{to:"/develop/Data/models.html#taxon-determination"},{default:o(()=>[t("er")]),_:1}),t(","),Pr]),Ar,e("p",null,[Ir,t(","),a(r,{to:"/develop/Data/models.html#taxon-name-classification"},{default:o(()=>[t("er")]),_:1}),t(","),Lr,t(","),Br]),Gr,e("p",null,[Mr,t(","),a(r,{to:"/develop/Data/models.html#taxon-name-relationship"},{default:o(()=>[t("er")]),_:1}),t(","),Zr,t(","),Vr]),Er,e("p",null,[Fr,t(","),a(r,{to:"/develop/Data/models.html#taxon-name"},{default:o(()=>[t("er")]),_:1}),t(","),Jr,t(","),Kr]),Ur,e("p",null,[Hr,t(","),a(r,{to:"/develop/Data/models.html#type-material"},{default:o(()=>[t("er")]),_:1}),t(","),Qr]),Wr])}const ea=i(c,[["render",Xr],["__file","tables.html.vue"]]),da=JSON.parse('{"path":"/develop/Data/tables.html","title":"Tables","lang":"en-US","frontmatter":{},"headers":[{"level":2,"title":"alternate_values","slug":"alternate-values","link":"#alternate-values","children":[]},{"level":2,"title":"asserted_distributions","slug":"asserted-distributions","link":"#asserted-distributions","children":[]},{"level":2,"title":"attributions","slug":"attributions","link":"#attributions","children":[]},{"level":2,"title":"biocuration_classifications","slug":"biocuration-classifications","link":"#biocuration-classifications","children":[]},{"level":2,"title":"biological_associations","slug":"biological-associations","link":"#biological-associations","children":[]},{"level":2,"title":"biological_associations_biological_associations_graphs","slug":"biological-associations-biological-associations-graphs","link":"#biological-associations-biological-associations-graphs","children":[]},{"level":2,"title":"biological_associations_graphs","slug":"biological-associations-graphs","link":"#biological-associations-graphs","children":[]},{"level":2,"title":"biological_relationship_types","slug":"biological-relationship-types","link":"#biological-relationship-types","children":[]},{"level":2,"title":"biological_relationships","slug":"biological-relationships","link":"#biological-relationships","children":[]},{"level":2,"title":"character_states","slug":"character-states","link":"#character-states","children":[]},{"level":2,"title":"citation_topics","slug":"citation-topics","link":"#citation-topics","children":[]},{"level":2,"title":"citations","slug":"citations","link":"#citations","children":[]},{"level":2,"title":"collecting_events","slug":"collecting-events","link":"#collecting-events","children":[]},{"level":2,"title":"collection_object_observations","slug":"collection-object-observations","link":"#collection-object-observations","children":[]},{"level":2,"title":"collection_objects","slug":"collection-objects","link":"#collection-objects","children":[]},{"level":2,"title":"collection_profiles","slug":"collection-profiles","link":"#collection-profiles","children":[]},{"level":2,"title":"common_names","slug":"common-names","link":"#common-names","children":[]},{"level":2,"title":"confidences","slug":"confidences","link":"#confidences","children":[]},{"level":2,"title":"container_items","slug":"container-items","link":"#container-items","children":[]},{"level":2,"title":"containers","slug":"containers","link":"#containers","children":[]},{"level":2,"title":"contents","slug":"contents","link":"#contents","children":[]},{"level":2,"title":"controlled_vocabulary_terms","slug":"controlled-vocabulary-terms","link":"#controlled-vocabulary-terms","children":[]},{"level":2,"title":"data_attributes","slug":"data-attributes","link":"#data-attributes","children":[]},{"level":2,"title":"dataset_record_fields","slug":"dataset-record-fields","link":"#dataset-record-fields","children":[]},{"level":2,"title":"dataset_records","slug":"dataset-records","link":"#dataset-records","children":[]},{"level":2,"title":"depictions","slug":"depictions","link":"#depictions","children":[]},{"level":2,"title":"derived_collection_objects","slug":"derived-collection-objects","link":"#derived-collection-objects","children":[]},{"level":2,"title":"descriptors","slug":"descriptors","link":"#descriptors","children":[]},{"level":2,"title":"documentation","slug":"documentation","link":"#documentation","children":[]},{"level":2,"title":"documents","slug":"documents","link":"#documents","children":[]},{"level":2,"title":"extracts","slug":"extracts","link":"#extracts","children":[]},{"level":2,"title":"gene_attributes","slug":"gene-attributes","link":"#gene-attributes","children":[]},{"level":2,"title":"geographic_area_types","slug":"geographic-area-types","link":"#geographic-area-types","children":[]},{"level":2,"title":"geographic_areas","slug":"geographic-areas","link":"#geographic-areas","children":[]},{"level":2,"title":"geographic_areas_geographic_items","slug":"geographic-areas-geographic-items","link":"#geographic-areas-geographic-items","children":[]},{"level":2,"title":"geographic_items","slug":"geographic-items","link":"#geographic-items","children":[]},{"level":2,"title":"georeferences","slug":"georeferences","link":"#georeferences","children":[]},{"level":2,"title":"identifiers","slug":"identifiers","link":"#identifiers","children":[]},{"level":2,"title":"images","slug":"images","link":"#images","children":[]},{"level":2,"title":"import_datasets","slug":"import-datasets","link":"#import-datasets","children":[]},{"level":2,"title":"labels","slug":"labels","link":"#labels","children":[]},{"level":2,"title":"languages","slug":"languages","link":"#languages","children":[]},{"level":2,"title":"loan_items","slug":"loan-items","link":"#loan-items","children":[]},{"level":2,"title":"loans","slug":"loans","link":"#loans","children":[]},{"level":2,"title":"namespaces","slug":"namespaces","link":"#namespaces","children":[]},{"level":2,"title":"notes","slug":"notes","link":"#notes","children":[]},{"level":2,"title":"observation_matrices","slug":"observation-matrices","link":"#observation-matrices","children":[]},{"level":2,"title":"observation_matrix_column_items","slug":"observation-matrix-column-items","link":"#observation-matrix-column-items","children":[]},{"level":2,"title":"observation_matrix_columns","slug":"observation-matrix-columns","link":"#observation-matrix-columns","children":[]},{"level":2,"title":"observation_matrix_row_items","slug":"observation-matrix-row-items","link":"#observation-matrix-row-items","children":[]},{"level":2,"title":"observation_matrix_rows","slug":"observation-matrix-rows","link":"#observation-matrix-rows","children":[]},{"level":2,"title":"observations","slug":"observations","link":"#observations","children":[]},{"level":2,"title":"organizations","slug":"organizations","link":"#organizations","children":[]},{"level":2,"title":"origin_relationships","slug":"origin-relationships","link":"#origin-relationships","children":[]},{"level":2,"title":"otu_page_layout_sections","slug":"otu-page-layout-sections","link":"#otu-page-layout-sections","children":[]},{"level":2,"title":"otu_page_layouts","slug":"otu-page-layouts","link":"#otu-page-layouts","children":[]},{"level":2,"title":"otus","slug":"otus","link":"#otus","children":[]},{"level":2,"title":"people","slug":"people","link":"#people","children":[]},{"level":2,"title":"preparation_types","slug":"preparation-types","link":"#preparation-types","children":[]},{"level":2,"title":"project_members","slug":"project-members","link":"#project-members","children":[]},{"level":2,"title":"project_sources","slug":"project-sources","link":"#project-sources","children":[]},{"level":2,"title":"protocol_relationships","slug":"protocol-relationships","link":"#protocol-relationships","children":[]},{"level":2,"title":"protocols","slug":"protocols","link":"#protocols","children":[]},{"level":2,"title":"ranged_lot_categories","slug":"ranged-lot-categories","link":"#ranged-lot-categories","children":[]},{"level":2,"title":"repositories","slug":"repositories","link":"#repositories","children":[]},{"level":2,"title":"roles","slug":"roles","link":"#roles","children":[]},{"level":2,"title":"sequence_relationships","slug":"sequence-relationships","link":"#sequence-relationships","children":[]},{"level":2,"title":"sequences","slug":"sequences","link":"#sequences","children":[]},{"level":2,"title":"serial_chronologies","slug":"serial-chronologies","link":"#serial-chronologies","children":[]},{"level":2,"title":"serials","slug":"serials","link":"#serials","children":[]},{"level":2,"title":"sled_images","slug":"sled-images","link":"#sled-images","children":[]},{"level":2,"title":"sources","slug":"sources","link":"#sources","children":[]},{"level":2,"title":"tagged_section_keywords","slug":"tagged-section-keywords","link":"#tagged-section-keywords","children":[]},{"level":2,"title":"tags","slug":"tags","link":"#tags","children":[]},{"level":2,"title":"taxon_determinations","slug":"taxon-determinations","link":"#taxon-determinations","children":[]},{"level":2,"title":"taxon_name_classifications","slug":"taxon-name-classifications","link":"#taxon-name-classifications","children":[]},{"level":2,"title":"taxon_name_relationships","slug":"taxon-name-relationships","link":"#taxon-name-relationships","children":[]},{"level":2,"title":"taxon_names","slug":"taxon-names","link":"#taxon-names","children":[]},{"level":2,"title":"type_materials","slug":"type-materials","link":"#type-materials","children":[]}],"git":{"updatedTime":1644347967000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":5}]},"filePathRelative":"develop/Data/tables.md"}');export{ea as comp,da as data}; diff --git a/assets/videos.html-DCMbaAFr.js b/assets/videos.html-DCMbaAFr.js new file mode 100644 index 00000000..21d6d06f --- /dev/null +++ b/assets/videos.html-DCMbaAFr.js @@ -0,0 +1 @@ +import{_ as e,c as a,o,b as t}from"./app-Bwgh_xIT.js";const r={},i=t('

    Videos

    Of all sorts, links are indexed here. We encourage everyone to request and/or make videos to share.

    TaxonWorks Youtube channel is here.

    Request or make a video

    Please submit a gitHub issue (aka "ticket") if you've made one to share or need one on a particular topic.

    ',5),s=[i];function n(d,l){return o(),a("div",null,s)}const m=e(r,[["render",n],["__file","videos.html.vue"]]),u=JSON.parse('{"path":"/guide/videos.html","title":"Videos","lang":"en-US","frontmatter":{"sidebarPosition":70},"headers":[{"level":2,"title":"Request or make a video","slug":"request-or-make-a-video","link":"#request-or-make-a-video","children":[]}],"git":{"updatedTime":1660331499000,"contributors":[{"name":"mjy","email":"diapriid@gmail.com","commits":3},{"name":"Debbie Paul","email":"dlpaul@illinois.edu","commits":1}]},"filePathRelative":"guide/videos.md"}');export{m as comp,u as data}; diff --git a/data/alternate_values_model_er.dot b/data/alternate_values_model_er.dot new file mode 100644 index 00000000..df5783f9 --- /dev/null +++ b/data/alternate_values_model_er.dot @@ -0,0 +1,152 @@ +digraph AlternateValue { + graph [bb="0,0,636.56,382", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="72.942,187", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.0262]; + } + subgraph core { + } + subgraph supporting { + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="314.72,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="314.72,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="314.72,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="512.06,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="512.06,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Language [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#language", + label=Language, + pos="314.72,164", + shape=box, + style=filled, + target=_top, + width=0.97222]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="314.72,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="606.56,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + AlternateValue -> PinboardItem [pos="e,269.11,362.93 83.371,209.13 98.803,242.5 132.73,305.18 181.88,337 204.64,351.73 233.84,358.65 258.98,361.82"]; + AlternateValue -> Role [pos="e,287.65,308.65 92.59,209.38 112.4,231.61 145.78,264.91 181.88,283 212.08,298.13 250.2,304.78 277.68,307.7"]; + AlternateValue -> VerifierRole [pos="e,273.08,247.15 120.93,204.16 139.76,210.76 161.73,218.11 181.88,224 208.51,231.78 238.54,239.17 263.21,244.89"]; + AlternateValue -> Creator [dir=back, + pos="s,128.58,202.11 138.71,204.43 216.38,221.69 348.48,239.22 447.56,191 474.23,178.02 493.01,147.81 502.92,128.18", + style=dashed]; + AlternateValue -> Language [dir=back, + pos="s,145.88,180.1 155.9,179.14 198.18,175.08 247.47,170.36 279.56,167.28", + style=dashed]; + AlternateValue -> Project [dir=back, + pos="s,111.04,167.21 120.23,162.69 138.98,153.61 161.07,143.85 181.88,137 217.39,125.32 260.01,117.69 286.99,113.61", + style=dashed]; + AlternateValue -> Updater [dir=back, + pos="s,88.737,164.83 94.812,156.7 114.09,131.61 145.24,97.781 181.88,83 329.72,23.369 384.23,51.823 540.56,83 552.66,85.414 565.33,90.126 \ +576.24,94.947", + style=dashed]; + "Objects with Alternate values" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with alternate value", + label="Objects with Alternate values", + pos="314.72,18", + shape=hexagon, + style=filled, + target=_top, + width=3.6899]; + AlternateValue -> "Objects with Alternate values" [dir=back, + pos="s,85.126,164.96 90.064,156.14 108.16,124.6 140.49,76.58 181.88,50 195.46,41.283 211.21,34.94 227,30.324", + style=dashed]; + Role -> Verifier [pos="e,483.24,286.84 342.06,306.36 375.76,301.7 434.36,293.6 472.93,288.27", + style=invis]; + VerifierRole -> Verifier [pos="e,483.37,279.17 356.67,261.66 390.99,266.4 439.62,273.13 473.08,277.75", + style=dotted]; + Creator -> Updater [pos="e,576.39,110 540.56,110 548.59,110 557.52,110 566.13,110", + style=invis]; + Project -> Creator [pos="e,483.37,110 342.47,110 376.28,110 434.69,110 473.1,110", + style=invis]; +} diff --git a/data/asserted_distributions_model_er.dot b/data/asserted_distributions_model_er.dot new file mode 100644 index 00000000..29eb0d78 --- /dev/null +++ b/data/asserted_distributions_model_er.dot @@ -0,0 +1,446 @@ +digraph AssertedDistribution { + graph [bb="0,0,848.79,809", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,736", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="59.145,362", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,524", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="59.145,470", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,308", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,416", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + AssertedDistribution [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#asserted-distribution", + label=AssertedDistribution, + pos="249.04,420", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.632]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="439.79,736", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="439.79,420", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + TaxonName [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#taxon-name", + label=TaxonName, + pos="439.79,365", + shape=Mrecord, + style=filled, + target=_top, + width=1.1667]; + } + subgraph supporting { + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="249.04,791", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="249.04,362", + shape=box, + style=filled, + target=_top, + width=1.5139]; + GeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-area", + label=GeographicArea, + pos="439.79,272", + shape=box, + style=filled, + target=_top, + width=1.4722]; + GeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-item", + label=GeographicItem, + pos="616.29,272", + shape=box, + style=filled, + target=_top, + width=1.4583]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="249.04,308", + shape=box, + style=filled, + target=_top, + width=0.93056]; + RelatedOriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-origin-relationship", + label=RelatedOriginRelationship, + pos="616.29,218", + shape=box, + style=filled, + target=_top, + width=2.2361]; + OriginLot [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-lot", + label=OriginLot, + pos="790.79,191", + shape=box, + style=filled, + target=_top, + width=0.98611]; + OriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="439.79,218", + shape=box, + style=filled, + target=_top, + width=1.6667]; + OriginSpecimen [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-specimen", + label=OriginSpecimen, + pos="790.79,245", + shape=box, + style=filled, + target=_top, + width=1.4722]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="439.79,126", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="439.79,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="616.29,730", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="790.79,730", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="439.79,791", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="439.79,72", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="616.29,45", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="616.29,567", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="439.79,567", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="790.79,567", + shape=box, + style=filled, + target=_top, + width=0.83333]; + DwcOccurrence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#dwc-occurrence", + label=DwcOccurrence, + pos="439.79,513", + shape=box, + style=filled, + target=_top, + width=1.4444]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="616.29,670", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,412.78,736 98.184,736 171.32,736 330.65,736 402.44,736", + style=dotted]; + Citation -> CitationTopic [pos="e,202.81,777.76 92.445,745.45 120.02,753.53 160.28,765.31 192.94,774.87", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,194.32,362 110,362 132.74,362 159.93,362 184.15,362", + style=dotted]; + Tag -> Keyword [pos="e,215.52,308 86.271,308 117.02,308 168.51,308 205.14,308", + style=dotted]; + AssertedDistribution -> Citation [pos="e,70.514,718.56 234.78,442.31 200.98,499.15 111.75,649.21 75.641,709.94"]; + AssertedDistribution -> Confidence [pos="e,98.168,373.74 190.08,402.11 163.68,393.96 132.82,384.43 107.8,376.71"]; + AssertedDistribution -> DataAttribute [pos="e,93.33,509.29 213.07,442.06 187.26,458.01 151.08,479.71 118.29,497 113.31,499.63 108.02,502.27 102.74,504.82"]; + AssertedDistribution -> Identifier [pos="e,95.929,460.48 184.62,436.88 158.74,443.76 129.4,451.57 105.71,457.87"]; + AssertedDistribution -> Tag [pos="e,83.925,315.63 180.74,403.87 171.34,399.91 162.2,395.03 154.29,389 131.35,371.52 140.19,353.77 118.29,335 110.97,328.72 101.94,\ +323.6 93.201,319.57"]; + AssertedDistribution -> Note [pos="e,87.466,416.58 154.49,418.01 134.36,417.58 114.21,417.15 97.729,416.8"]; + AssertedDistribution -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,255.13,442.14 e,412.55,725.74 257.65,451.96 272.53,508.59 310.25,627.66 379.79,703 386.4,710.16 394.92,716.14 403.42,720.96", + style=dotted]; + AssertedDistribution -> Otu [dir=back, + pos="s,343.59,420 353.69,420 375.63,420 396.88,420 412.67,420", + style=dashed]; + AssertedDistribution -> TaxonName [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,310.02,402.52 e,397.77,376.95 319.91,399.64 342.53,393.05 367.17,385.87 388.12,379.77", + style=dotted]; + AssertedDistribution -> GeographicArea [dir=back, + pos="s,319.85,404.5 329.04,399.73 334.36,396.65 339.35,393.09 343.79,389 373.96,361.19 352.21,334.37 379.79,304 384.65,298.65 390.61,\ +294.02 396.86,290.06", + style=dashed]; + AssertedDistribution -> GeographicItem [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,317.25,403.74 e,563.75,284.25 326.4,399.56 332.55,396.5 338.44,393 343.79,389 366.3,372.16 356.87,353.27 379.79,337 394.16,326.8 \ +489.15,302.44 554.01,286.61", + style=dotted]; + AssertedDistribution -> RelatedOriginRelationship [pos="e,580.8,199.92 323.08,404.89 330.88,400.8 338.05,395.6 343.79,389 402.47,321.5 311.12,248.31 379.79,191 433.48,146.19 519.65,172.76 \ +571.53,195.7"]; + AssertedDistribution -> OriginRelationship [pos="e,389.53,236.03 322.2,404.76 330.26,400.69 337.73,395.53 343.79,389 388.67,340.65 337.63,295.74 379.79,245 380.4,244.26 381.04,243.54 \ +381.7,242.84"]; + AssertedDistribution -> PinboardItem [pos="e,394.2,144.11 323.24,405.03 331.02,400.91 338.14,395.67 343.79,389 410.97,309.73 319.91,242.91 379.79,158 381.7,155.29 383.92,152.78 \ +386.36,150.47"]; + AssertedDistribution -> Role [pos="e,412.6,23.668 324.02,405.06 331.56,400.93 338.42,395.68 343.79,389 440.2,269.26 290.1,169.85 379.79,45 385.55,36.988 394.27,31.298 \ +403.25,27.278"]; + AssertedDistribution -> SubsequentCitation [pos="e,555.03,718.17 255.6,442.14 268.72,489.78 306.2,602.51 379.79,662 405.3,682.62 485.49,703.07 545.25,716.07"]; + AssertedDistribution -> VerifierRole [pos="e,397.99,83.976 323.44,405.2 331.18,401.05 338.24,395.76 343.79,389 426.21,288.62 303,203.75 379.79,99 382.49,95.323 385.8,92.134 \ +389.48,89.371"]; + AssertedDistribution -> Creator [dir=back, + pos="s,319.77,435.53 329.8,437.86 390.91,452.14 469.69,472.01 499.79,486 535.55,502.62 572.01,530.37 594.15,548.68", + style=dashed]; + AssertedDistribution -> Project [dir=back, + pos="s,269.86,442.2 276.78,449.59 301.6,475.79 340.52,513.83 379.79,540 389.82,546.68 401.77,552.5 412.29,557", + style=dashed]; + AssertedDistribution -> Updater [dir=back, + pos="s,258.57,442.02 262.65,451.39 281.25,492.88 320.39,564.2 379.79,594 509.06,658.86 690.74,604.05 760.73,578.44", + style=dashed]; + AssertedDistribution -> DwcOccurrence [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,292.87,441.1 e,402.17,494.96 302.03,445.61 330.58,459.68 365.68,476.98 393.16,490.52"]; + AssertedDistribution -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,257.08,442.09 e,568.69,672.15 260.5,451.64 277.61,498.09 316.17,583.87 379.79,627 432.89,663 507.58,671.22 558.52,672.07"]; + Source -> SubsequentCitation [pos="e,554.96,732.07 466.91,735.1 487.58,734.39 517.43,733.36 544.95,732.42", + style=invis]; + Source -> OriginCitation [pos="e,568.6,687.66 466.91,726.12 491.21,716.93 528.22,702.93 559.2,691.22", + style=invis]; + CitationTopic -> Topic [pos="e,412.56,791 295.25,791 328.03,791 371.79,791 402.34,791", + style=dotted]; + GeographicArea -> GeographicItem [pos="e,563.57,272 493.15,272 512.12,272 533.74,272 553.46,272", + style=dotted]; + RelatedOriginRelationship -> OriginLot [pos="e,755.25,196.41 696.98,205.53 713.46,202.95 730.26,200.32 744.96,198.02", + style=dotted]; + RelatedOriginRelationship -> OriginSpecimen [pos="e,737.55,236.82 696.98,230.47 707.2,232.07 717.54,233.69 727.43,235.24", + style=dotted]; + OriginRelationship -> RelatedOriginRelationship [pos="e,535.54,218 499.87,218 508.11,218 516.73,218 525.39,218", + style=invis]; + Role -> Verifier [pos="e,587.54,40.707 466.91,22.042 496.17,26.569 543.85,33.946 577.24,39.113", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,732.68,730 677.62,730 692.15,730 707.75,730 722.57,730", + style=dotted]; + VerifierRole -> Verifier [pos="e,587.69,49.271 481.7,65.67 510.77,61.172 549.51,55.178 577.78,50.804", + style=dotted]; + Creator -> Updater [pos="e,760.7,567 645.01,567 673.5,567 718.13,567 750.31,567", + style=invis]; + Project -> Creator [pos="e,587.67,567 467.29,567 496.63,567 544.16,567 577.42,567", + style=invis]; +} diff --git a/data/attributions_model_er.dot b/data/attributions_model_er.dot new file mode 100644 index 00000000..fc7334fd --- /dev/null +++ b/data/attributions_model_er.dot @@ -0,0 +1,304 @@ +digraph Attribution { + graph [bb="0,0,712.21,696.28", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph core { + } + subgraph supporting { + CopyrightHolderRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#copyright-holder-role", + label=CopyrightHolderRole, + pos="295.63,542", + shape=box, + style=filled, + target=_top, + width=1.8611]; + AttributionCopyrightHolder [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#attribution-copyright-holder", + label=AttributionCopyrightHolder, + pos="531.71,542", + shape=box, + style=filled, + target=_top, + width=2.3472]; + CreatorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator-role", + label=CreatorRole, + pos="295.63,488", + shape=box, + style=filled, + target=_top, + width=1.1528]; + AttributionCreator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#attribution-creator", + label=AttributionCreator, + pos="531.71,488", + shape=box, + style=filled, + target=_top, + width=1.625]; + EditorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#editor-role", + label=EditorRole, + pos="295.63,434", + shape=box, + style=filled, + target=_top, + width=1.0556]; + AttributionEditor [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#attribution-editor", + label=AttributionEditor, + pos="531.71,434", + shape=box, + style=filled, + target=_top, + width=1.5278]; + OwnerRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#owner-role", + label=OwnerRole, + pos="295.63,380", + shape=box, + style=filled, + target=_top, + width=1.0972]; + AttributionOwner [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#attribution-owner", + label=AttributionOwner, + pos="531.71,380", + shape=box, + style=filled, + target=_top, + width=1.5694]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="295.63,18", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="295.63,72", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="295.63,326", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="295.63,272", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="295.63,218", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="531.71,245", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="531.71,126", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="295.63,126", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="682.21,126", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + subgraph annotator_cluster { + graph [rank=min]; + Attribution [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#attribution", + label=Attribution, + pos="85.889,326", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.6158]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="85.889,89", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="85.889,179", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="85.889,268", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + Attribution -> Confidence [pos="e,60.486,104.73 39.317,311.46 27.644,305.49 16.519,297.25 9.7202,286 -4.6474,262.23 -1.2698,186.51 9.7202,161 18.487,140.65 36.148,\ +123.37 52.258,110.84"]; + Attribution -> Tag [pos="e,65.575,191.43 39.317,311.46 27.644,305.49 16.519,297.25 9.7202,286 -9.924,253.5 28.236,217.99 57.299,197.15"]; + Attribution -> Note [pos="e,85.889,286.12 85.889,303.88 85.889,301.38 85.889,298.89 85.889,296.39"]; + Attribution -> CopyrightHolderRole [pos="e,228.36,536.57 91.356,348.26 100.56,388.14 125.53,471.61 180.06,515 191.12,523.81 204.58,529.82 218.33,533.92"]; + Attribution -> CreatorRole [pos="e,254.09,485.63 95.908,348 109.5,378.32 138.2,432.42 180.06,461 198.77,473.78 222.76,480.55 243.95,484.12"]; + Attribution -> EditorRole [pos="e,257.45,429.87 106.52,348.25 124.02,366.71 151.25,392.24 180.06,407 200.94,417.7 226.14,424.23 247.58,428.19"]; + Attribution -> OwnerRole [pos="e,256.06,371.42 133.68,340.06 148.47,344.37 164.91,349.02 180.06,353 201.62,358.66 225.6,364.4 246.04,369.12"]; + Attribution -> PinboardItem [pos="e,250.01,326 144.21,326 174.07,326 210.41,326 239.89,326"]; + Attribution -> Role [pos="e,268.6,277.74 133.68,311.94 148.47,307.63 164.91,302.98 180.06,299 206.28,292.11 236.1,285.11 258.74,279.97"]; + Attribution -> VerifierRole [pos="e,253.93,220.56 124.18,308.96 131.16,304.91 138.13,300.22 144.06,295 164.61,276.91 157.29,260.21 180.06,245 198.82,232.46 222.72,\ +225.72 243.83,222.1"]; + Attribution -> Creator [dir=back, + pos="s,126.36,309.69 134.7,303.9 138.12,301.21 141.31,298.24 144.06,295 175.7,257.7 142.65,222.52 180.06,191 259.67,123.91 309.02,172.93 \ +411.21,153 442.73,146.85 478.64,138.56 502.8,132.8", + style=dashed]; + Attribution -> Project [dir=back, + pos="s,127.01,309.81 135.4,303.77 138.6,301.12 141.54,298.21 144.06,295 182.93,245.48 135.89,202.86 180.06,158 203.1,134.6 241.72,127.92 \ +267.67,126.22", + style=dashed]; + Attribution -> Updater [dir=back, + pos="s,90.403,348.07 92.107,358.09 104.22,428.15 136.56,591.05 180.06,623 337.49,738.61 486.03,714.62 616.21,569 673.65,504.74 680.35,\ +219.41 681.11,144.22", + style=dashed]; + "Objects with Attributions" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with attribution", + label="Objects with Attributions", + pos="295.63,596", + shape=hexagon, + style=filled, + target=_top, + width=3.2104]; + Attribution -> "Objects with Attributions" [dir=back, + pos="s,88.656,348.34 89.813,358.42 96.329,410.81 116.87,513.8 180.06,569 188.83,576.66 199.38,582.25 210.47,586.31", + style=dashed]; + Confidence -> ConfidenceLevel [pos="e,240.92,28.217 114.78,73.935 132.96,64.595 157.43,52.911 180.06,45 196.19,39.359 214.02,34.522 230.7,30.566", + style=dotted]; + Tag -> Keyword [pos="e,262.1,75.468 100.43,163.54 117.27,145.32 147.75,115.43 180.06,99 202.49,87.592 229.85,80.912 252.21,77.051", + style=dotted]; + CopyrightHolderRole -> AttributionCopyrightHolder [pos="e,447.18,542 362.77,542 385.82,542 412.15,542 437,542", + style=dotted]; + CreatorRole -> AttributionCreator [pos="e,473.18,488 337.14,488 371.76,488 422.29,488 463.04,488", + style=dotted]; + EditorRole -> AttributionEditor [pos="e,476.37,434 333.72,434 369.29,434 423.72,434 466.36,434", + style=dotted]; + OwnerRole -> AttributionOwner [pos="e,474.92,380 335.29,380 370.43,380 423.04,380 464.82,380", + style=dotted]; + Role -> Verifier [pos="e,502.96,248.2 323.03,268.96 364.49,264.17 445.06,254.88 492.74,249.38", + style=invis]; + VerifierRole -> Verifier [pos="e,503.14,241.82 337.14,222.67 381.02,227.73 450.46,235.74 493.15,240.67", + style=dotted]; + Creator -> Updater [pos="e,652,126 560.29,126 583.22,126 616.13,126 641.83,126", + style=invis]; + Project -> Creator [pos="e,503.09,126 323.48,126 365.13,126 445.42,126 492.91,126", + style=invis]; +} diff --git a/data/biocuration_classifications_model_er.dot b/data/biocuration_classifications_model_er.dot new file mode 100644 index 00000000..ebd491c7 --- /dev/null +++ b/data/biocuration_classifications_model_er.dot @@ -0,0 +1,153 @@ +digraph BiocurationClassification { + graph [bb="0,0,614.68,378.58", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + BiocurationClassification [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#biocuration-classification", + label=BiocurationClassification, + pos="112.34,171.58", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.1205]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="343.18,360.58", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="343.18,306.58", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="343.18,252.58", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="490.18,279.58", + shape=box, + style=filled, + target=_top, + width=0.79167]; + BiocurationClass [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biocuration-class", + label=BiocurationClass, + pos="343.18,198.58", + shape=box, + style=filled, + target=_top, + width=1.5278]; + BiologicalCollectionObject [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-collection-object", + label=BiologicalCollectionObject, + pos="343.18,144.58", + shape=box, + style=filled, + target=_top, + width=2.2917]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="490.18,52.584", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="343.18,52.584", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="584.68,52.584", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + BiocurationClassification -> PinboardItem [pos="e,297.58,350.33 127.83,193.77 151.57,228.45 202.02,295.46 260.68,333.58 269.02,339.01 278.55,343.44 288.09,347.02"]; + BiocurationClassification -> Role [pos="e,316.01,300.17 138.32,193.73 166.4,217.66 214.17,255.59 260.68,279.58 274.99,286.97 291.74,292.93 306.32,297.35"]; + BiocurationClassification -> VerifierRole [pos="e,301.46,239.38 167.77,192 195.5,202.28 229.81,214.82 260.68,225.58 270.7,229.08 281.46,232.72 291.76,236.16"]; + BiocurationClassification -> BiocurationClass [dir=back, + pos="s,216.71,183.78 226.84,184.98 248.2,187.5 269.6,190.02 288.06,192.2", + style=dashed]; + BiocurationClassification -> BiologicalCollectionObject [dir=back, + pos="s,216.71,159.39 226.72,158.21 238.13,156.86 249.55,155.51 260.53,154.22", + style=dashed]; + BiocurationClassification -> Creator [dir=back, + pos="s,165.31,150.73 174.74,147.13 200.96,137.2 232.07,126.08 260.68,117.58 332.81,96.15 354.11,102.84 425.68,79.584 437.64,75.697 450.47,\ +70.456 461.45,65.626", + style=dashed]; + BiocurationClassification -> Project [dir=back, + pos="s,147.31,149.42 155.92,143.99 184.82,125.88 224.26,102.34 260.68,84.584 278.57,75.855 299.5,67.681 315.66,61.778", + style=dashed]; + BiocurationClassification -> Updater [dir=back, + pos="s,127.21,149.42 133.05,140.88 157.87,105.37 204.19,48.831 260.68,25.584 366.71,-18.055 406.22,3.1578 518.68,25.584 530.78,27.998 \ +543.45,32.71 554.36,37.531", + style=dashed]; + Role -> Verifier [pos="e,461.63,284.71 370.43,301.69 393.1,297.47 426.12,291.33 451.58,286.58", + style=invis]; + VerifierRole -> Verifier [pos="e,461.53,274.44 384.95,260.18 405.88,264.07 431.19,268.79 451.63,272.59", + style=dotted]; + Creator -> Updater [pos="e,554.51,52.584 518.68,52.584 526.7,52.584 535.64,52.584 544.25,52.584", + style=invis]; + Project -> Creator [pos="e,461.27,52.584 370.77,52.584 393.23,52.584 425.68,52.584 450.94,52.584", + style=invis]; +} diff --git a/data/biological_associations_biological_associations_graphs_model_er.dot b/data/biological_associations_biological_associations_graphs_model_er.dot new file mode 100644 index 00000000..56ca88af --- /dev/null +++ b/data/biological_associations_biological_associations_graphs_model_er.dot @@ -0,0 +1,152 @@ +digraph BiologicalAssociationsBiologicalAssociationsGraph { + graph [bb="0,0,832.5,375.44", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + BiologicalAssociation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#biological-association", + label=BiologicalAssociation, + pos="555.5,356.94", + shape=Mrecord, + style=filled, + target=_top, + width=1.9028]; + } + subgraph supporting { + BiologicalAssociationsBiologicalAssociationsGraph [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#biological-associations-biological-associations-graph", + label=BiologicalAssociationsBiologicalAssociationsGraph, + pos="215.75,166.94", + shape=doubleoctagon, + style=filled, + target=_top, + width=5.9931]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="555.5,301.94", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="555.5,247.94", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="555.5,193.94", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="708,220.94", + shape=box, + style=filled, + target=_top, + width=0.79167]; + BiologicalAssociationsGraph [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-associations-graph", + label=BiologicalAssociationsGraph, + pos="555.5,139.94", + shape=box, + style=filled, + target=_top, + width=2.4444]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="708,47.937", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="555.5,47.937", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="802.5,47.937", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + BiologicalAssociationsBiologicalAssociationsGraph -> BiologicalAssociation [dir=back, + pos="s,245.38,189.04 253.48,195.1 300.81,230.32 386.65,290.63 467.5,328.94 475.1,332.54 483.28,335.85 491.48,338.83", + style=dashed]; + BiologicalAssociationsBiologicalAssociationsGraph -> PinboardItem [pos="e,509.94,289.1 263.75,188.95 313.69,211.93 395.25,248.25 467.5,274.94 477.95,278.8 489.24,282.58 500.11,286.03"]; + BiologicalAssociationsBiologicalAssociationsGraph -> Role [pos="e,528.48,241.7 307.26,188.64 376.58,205.27 468.54,227.32 518.49,239.3"]; + BiologicalAssociationsBiologicalAssociationsGraph -> VerifierRole [pos="e,513.94,190.69 395.02,181.19 435.03,184.39 474.32,187.53 503.9,189.89"]; + BiologicalAssociationsBiologicalAssociationsGraph -> BiologicalAssociationsGraph [dir=back, + pos="s,395.02,152.69 405.28,151.87 426.81,150.15 447.9,148.46 467.14,146.92", + style=dashed]; + BiologicalAssociationsBiologicalAssociationsGraph -> Creator [dir=back, + pos="s,314.64,145.86 324.73,143.69 450.84,116.54 642.53,75.245 643.5,74.937 655.49,71.134 668.33,65.908 679.3,61.067", + style=dashed]; + BiologicalAssociationsBiologicalAssociationsGraph -> Project [dir=back, + pos="s,279.49,144.83 289.33,141.37 364.13,115.01 476.8,75.314 527.77,57.355", + style=dashed]; + BiologicalAssociationsBiologicalAssociationsGraph -> Updater [dir=back, + pos="s,243.51,144.8 251.65,138.43 297.75,102.81 383.03,43.738 467.5,20.937 582.93,-10.218 619.26,-2.4453 736.5,20.937 748.61,23.351 761.28,\ +28.063 772.18,32.884", + style=dashed]; + Role -> Verifier [pos="e,679.31,225.91 582.72,243.23 606.69,238.93 642.42,232.52 669.42,227.68", + style=invis]; + VerifierRole -> Verifier [pos="e,679.1,215.93 597.23,201.24 619.63,205.26 647.23,210.21 669.15,214.15", + style=dotted]; + Creator -> Updater [pos="e,772.34,47.937 736.51,47.937 744.53,47.937 753.46,47.937 762.08,47.937", + style=invis]; + Project -> Creator [pos="e,679.44,47.937 583.06,47.937 606.98,47.937 642.39,47.937 669.24,47.937", + style=invis]; +} diff --git a/data/biological_associations_graphs_model_er.dot b/data/biological_associations_graphs_model_er.dot new file mode 100644 index 00000000..1257b041 --- /dev/null +++ b/data/biological_associations_graphs_model_er.dot @@ -0,0 +1,251 @@ +digraph BiologicalAssociationsGraph { + graph [bb="0,0,1031.6,513.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="38.997,299", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + } + subgraph core { + BiologicalAssociation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#biological-association", + label=BiologicalAssociation, + pos="811.12,271", + shape=Mrecord, + style=filled, + target=_top, + width=1.9028]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="556.12,495", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + BiologicalAssociationsGraph [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#biological-associations-graph", + label=BiologicalAssociationsGraph, + pos="241.81,299", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.5504]; + BiologicalAssociationsBiologicalAssociationsGraph [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-associations-biological-associations-graph", + label=BiologicalAssociationsBiologicalAssociationsGraph, + pos="556.12,272", + shape=box, + style=filled, + target=_top, + width=4.1806]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="241.81,18", + shape=box, + style=filled, + target=_top, + width=1.2778]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="556.12,72", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="556.12,180", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="811.12,418", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="973.62,418", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="556.12,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="556.12,126", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="811.12,152", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="811.12,326", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="556.12,326", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="973.62,326", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="811.12,487", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,528.91,488.45 67.091,311.62 127.16,339.32 276.44,406.57 405.62,452 443.85,465.44 488.62,477.9 519.13,485.91", + style=dotted]; + Citation -> CitationTopic [pos="e,227.94,36.011 52.256,281.85 86.124,234.45 181.15,101.48 221.88,44.482", + style=dotted]; + Source -> SubsequentCitation [pos="e,750.83,436.04 583.24,487.05 620.13,475.82 688.8,454.92 740.97,439.05", + style=invis]; + Source -> OriginCitation [pos="e,763.16,488.48 583.24,494.17 623.01,492.92 699.72,490.49 752.87,488.81", + style=invis]; + BiologicalAssociationsGraph -> Citation [pos="e,78.24,299 114.06,299 105.11,299 96.459,299 88.424,299"]; + BiologicalAssociationsGraph -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,267.24,321.35 e,529.01,494.11 274.61,328.19 300.7,352.47 338.31,388.23 369.62,421 386.38,438.53 384.75,449.66 405.62,462 440.57,\ +482.65 487.03,490.41 518.83,493.31", + style=dotted]; + BiologicalAssociationsGraph -> BiologicalAssociationsBiologicalAssociationsGraph [pos="e,405.57,284.93 369.39,288.06 377.96,287.32 386.65,286.56 395.35,285.81"]; + BiologicalAssociationsGraph -> PinboardItem [pos="e,510.44,72.048 253.84,276.93 276.17,234.76 331.01,143.03 405.62,99 434.07,82.214 470.46,75.39 500.22,72.798"]; + BiologicalAssociationsGraph -> Role [pos="e,529.12,183.31 277.37,276.84 309.45,257.18 359.12,229.02 405.62,212 443.08,198.29 488.08,189.65 518.86,184.85"]; + BiologicalAssociationsGraph -> SubsequentCitation [pos="e,750.02,417.76 280.57,321.03 312.71,338.68 360.69,362.5 405.62,375 519.81,406.76 658.12,415.36 739.85,417.51"]; + BiologicalAssociationsGraph -> VerifierRole [pos="e,514.55,127.35 260.42,276.79 287.75,244.01 343.72,183.27 405.62,153 436.35,137.97 474.32,131.24 504.31,128.26"]; + BiologicalAssociationsGraph -> Creator [dir=back, + pos="s,294.53,320.88 304.03,324.47 334.07,335.63 371.14,347.43 405.62,353 537.69,374.33 573.93,370.02 706.62,353 732.78,349.64 761.76,\ +341.7 782.39,335.3", + style=dashed]; + BiologicalAssociationsGraph -> Project [dir=back, + pos="s,369.39,309.94 379.47,310.81 435.65,315.67 495.26,320.82 528.58,323.71", + style=dashed]; + BiologicalAssociationsGraph -> Updater [dir=back, + pos="s,294.91,277.06 304.39,273.49 334.37,262.39 371.28,250.65 405.62,245 509.56,227.9 781.2,205.47 879.62,243 913.59,255.95 943.03,287.65 \ +959.25,307.91", + style=dashed]; + BiologicalAssociationsGraph -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,268.25,321.07 e,763.28,478.22 276.22,327.57 307.59,352.87 356.87,388.83 405.62,409 413.67,412.33 643.96,455.81 753.4,476.37"]; + BiologicalAssociationsBiologicalAssociationsGraph -> BiologicalAssociation [pos="e,742.56,271.27 706.85,271.41 715.56,271.37 724.11,271.34 732.33,271.31", + style=dotted]; + CitationTopic -> Topic [pos="e,528.88,18 287.89,18 350.23,18 461.53,18 518.83,18", + style=dotted]; + Role -> Verifier [pos="e,782.61,155.04 583.24,177.11 628.25,172.13 720.55,161.91 772.48,156.17", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,915.52,418 872.34,418 883.06,418 894.29,418 905.19,418", + style=dotted]; + VerifierRole -> Verifier [pos="e,782.47,149.16 597.77,130.18 645.95,135.13 725.59,143.31 772.43,148.13", + style=dotted]; + Creator -> Updater [pos="e,943.5,326 839.71,326 865.5,326 904.26,326 933.29,326", + style=invis]; + Project -> Creator [pos="e,782.35,326 583.72,326 628.82,326 720.45,326 772.24,326", + style=invis]; +} diff --git a/data/biological_associations_model_er.dot b/data/biological_associations_model_er.dot new file mode 100644 index 00000000..001124b7 --- /dev/null +++ b/data/biological_associations_model_er.dot @@ -0,0 +1,356 @@ +digraph BiologicalAssociation { + graph [bb="0,0,1023.8,622", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,549", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="59.145,260", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,422", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="59.145,368", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,206", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,314", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + BiologicalAssociation [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#biological-association", + label=BiologicalAssociation, + pos="254.67,318", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.7883]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="552.4,549", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + BiologicalAssociationsBiologicalAssociationsGraph [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-associations-biological-associations-graph", + label=BiologicalAssociationsBiologicalAssociationsGraph, + pos="552.4,218", + shape=box, + style=filled, + target=_top, + width=4.1806]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="254.67,604", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="254.67,260", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="254.67,206", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="552.4,164", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="552.4,364", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="810.76,541", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="965.76,541", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="552.4,604", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="552.4,418", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="810.76,395", + shape=box, + style=filled, + target=_top, + width=0.79167]; + BiologicalRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-relationship", + label=BiologicalRelationship, + pos="552.4,18", + shape=box, + style=filled, + target=_top, + width=1.9583]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="810.76,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="552.4,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="965.76,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="810.76,472", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,525.19,549 98.284,549 190.55,549 424.86,549 515.16,549", + style=dotted]; + Citation -> CitationTopic [pos="e,208.32,591.11 92.973,558.33 121.83,566.53 164.42,578.63 198.5,588.32", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,199.93,260 109.98,260 134.3,260 163.84,260 189.8,260", + style=dotted]; + Tag -> Keyword [pos="e,220.88,206 86.244,206 118.12,206 172.49,206 210.6,206", + style=dotted]; + BiologicalAssociation -> Citation [pos="e,74.375,532.01 234.97,340.32 198.66,383.66 118.87,478.9 80.948,524.17"]; + BiologicalAssociation -> Confidence [pos="e,98.379,271.46 193.04,299.83 165.71,291.64 133.89,282.1 108.24,274.42"]; + BiologicalAssociation -> DataAttribute [pos="e,93.276,407.19 216.77,340.08 189.8,355.95 152.18,377.53 118.29,395 113.28,397.58 107.98,400.2 102.7,402.73"]; + BiologicalAssociation -> Identifier [pos="e,96.091,358.71 187.76,335.03 160.8,341.99 130.26,349.88 105.82,356.2"]; + BiologicalAssociation -> Tag [pos="e,83.925,213.63 181.57,302.01 171.87,298.05 162.46,293.12 154.29,287 131.2,269.71 140.19,251.77 118.29,233 110.97,226.72 101.94,\ +221.6 93.201,217.57"]; + BiologicalAssociation -> Note [pos="e,87.461,314.56 154.41,315.95 134.17,315.53 114.07,315.11 97.671,314.78"]; + BiologicalAssociation -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,264.2,340.31 e,525.26,549.44 268.21,349.78 287.54,394.39 329,474.72 391.05,516 428.36,540.82 480.55,547.59 515.13,549.12", + style=dotted]; + BiologicalAssociation -> BiologicalAssociationsBiologicalAssociationsGraph [pos="e,409.54,236.12 325.56,301.7 335.89,297.75 346.06,292.91 355.05,287 375.58,273.48 369.64,257.1 391.05,245 394,243.33 397.02,241.76 \ +400.11,240.28"]; + BiologicalAssociation -> PinboardItem [pos="e,506.72,160.17 331.15,302.73 339.9,298.67 348.15,293.52 355.05,287 388.16,255.7 355.89,219.99 391.05,191 420.17,167 462.6,160.7 \ +496.5,160.16"]; + BiologicalAssociation -> Role [pos="e,525.18,359.92 341.6,331.37 399.27,340.34 472.27,351.69 515.2,358.37"]; + BiologicalAssociation -> SubsequentCitation [pos="e,749.69,528.48 266.93,340.06 286.66,376.16 331.12,447.1 391.05,480 517.83,549.6 571.02,498.61 713.76,522 722.22,523.39 731.08,524.97 \ +739.86,526.61"]; + BiologicalAssociation -> VerifierRole [pos="e,510.63,414.85 289.02,340.01 315.59,356.53 354.3,378.39 391.05,391 426.59,403.2 468.51,410.01 500.58,413.74"]; + BiologicalAssociation -> BiologicalRelationship [dir=back, + pos="s,334.2,303.15 343.08,297.75 347.48,294.65 351.53,291.09 355.05,287 424.46,206.17 317.47,127.06 391.05,50 414.08,25.875 449.75,17.154 \ +481.61,14.78", + style=dashed]; + BiologicalAssociation -> Creator [dir=back, + pos="s,334.04,303.01 342.96,297.65 347.4,294.58 351.48,291.05 355.05,287 415.86,217.88 320.51,142.18 391.05,83 445.99,36.907 642.72,73.2 \ +713.76,83 737.25,86.241 763.09,93.746 782.04,100.02", + style=dashed]; + BiologicalAssociation -> Project [dir=back, + pos="s,333.16,302.91 342.04,297.81 346.79,294.7 351.19,291.12 355.05,287 401.88,236.93 340.93,183.78 391.05,137 427.37,103.09 489.54,\ +103.05 524.85,106.33", + style=dashed]; + BiologicalAssociation -> Updater [dir=back, + pos="s,348.69,329.96 358.89,330.85 453.98,338.74 597.51,340.57 713.76,299 816.23,262.36 911.42,168.04 948.45,128.2", + style=dashed]; + BiologicalAssociation -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,271.24,340.09 e,763.1,478.86 277.54,348.26 301.53,378.76 343.07,424.21 391.05,445 511.51,497.2 669.89,489.28 753.09,480.02"]; + "Objects with Biological associations" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with biological association", + label="Objects with Biological associations", + pos="552.4,272", + shape=hexagon, + style=filled, + target=_top, + width=4.4821]; + BiologicalAssociation -> "Objects with Biological associations" [dir=back, + pos="s,341.6,304.63 351.49,303.1 385.3,297.84 423.27,291.93 456.96,286.69", + style=dashed]; + Source -> SubsequentCitation [pos="e,749.68,542.87 579.87,548.17 617.25,547.01 686.82,544.84 739.68,543.19", + style=invis]; + Source -> OriginCitation [pos="e,763.13,486 579.87,541.05 620.58,528.82 699.48,505.12 753.37,488.94", + style=invis]; + CitationTopic -> Topic [pos="e,525.1,604 300.91,604 359.61,604 460.9,604 514.94,604", + style=dotted]; + Role -> Verifier [pos="e,781.88,391.63 579.87,367.2 625.56,372.73 719.39,384.07 771.95,390.43", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,907.4,541 871.79,541 880.12,541 888.73,541 897.18,541", + style=dotted]; + VerifierRole -> Verifier [pos="e,781.97,397.49 594.02,414.36 642.85,409.97 724.15,402.68 771.77,398.41", + style=dotted]; + Creator -> Updater [pos="e,935.69,110 839.46,110 863.49,110 898.53,110 925.45,110", + style=invis]; + Project -> Creator [pos="e,782.01,110 580.35,110 626.17,110 719.38,110 771.79,110", + style=invis]; +} diff --git a/data/biological_relationship_types_model_er.dot b/data/biological_relationship_types_model_er.dot new file mode 100644 index 00000000..139ad9d8 --- /dev/null +++ b/data/biological_relationship_types_model_er.dot @@ -0,0 +1,153 @@ +digraph BiologicalRelationshipType { + graph [bb="0,0,611.78,375.49", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + BiologicalRelationshipType [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#biological-relationship-type", + label=BiologicalRelationshipType, + pos="122.89,168.49", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.4136]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="352.28,357.49", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="352.28,303.49", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="352.28,249.49", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="487.28,276.49", + shape=box, + style=filled, + target=_top, + width=0.79167]; + BiologicalProperty [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-property", + label=BiologicalProperty, + pos="352.28,195.49", + shape=box, + style=filled, + target=_top, + width=1.6528]; + BiologicalRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-relationship", + label=BiologicalRelationship, + pos="352.28,141.49", + shape=box, + style=filled, + target=_top, + width=1.9583]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="487.28,49.488", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="352.28,49.488", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="581.78,49.488", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + BiologicalRelationshipType -> PinboardItem [pos="e,306.5,343.36 140.25,190.54 166.61,224.73 221.67,290.73 281.78,330.49 286.62,333.69 291.9,336.6 297.31,339.22"]; + BiologicalRelationshipType -> Role [pos="e,325.24,294.98 152.02,190.68 182.67,214.13 233.75,251.16 281.78,276.49 292.5,282.14 304.67,287.27 315.79,291.5"]; + BiologicalRelationshipType -> VerifierRole [pos="e,310.63,235.01 181.86,189.14 218.66,202.25 265.82,219.04 301.03,231.59"]; + BiologicalRelationshipType -> BiologicalProperty [dir=back, + pos="s,232.59,181.4 242.77,182.6 260.04,184.65 277.16,186.69 292.52,188.51", + style=dashed]; + BiologicalRelationshipType -> BiologicalRelationship [dir=back, + pos="s,232.59,155.58 242.76,154.37 256.04,152.8 269.23,151.23 281.6,149.76", + style=dashed]; + BiologicalRelationshipType -> Creator [dir=back, + pos="s,181.34,147.82 191,144.44 218.94,134.71 251.79,123.65 281.78,114.49 343.85,95.532 361.44,97.682 422.78,76.488 434.67,72.381 447.49,\ +67.101 458.47,62.301", + style=dashed]; + BiologicalRelationshipType -> Project [dir=back, + pos="s,162.08,146.43 170.98,141.38 202.12,123.74 244.02,100.55 281.78,81.488 295.77,74.423 311.63,67.073 324.66,61.201", + style=dashed]; + BiologicalRelationshipType -> Updater [dir=back, + pos="s,139.15,146.28 145.2,138.18 172.24,102.65 222.56,45.672 281.78,22.488 378.62,-15.425 413.79,2.1478 515.78,22.488 527.88,24.902 \ +540.55,29.614 551.46,34.435", + style=dashed]; + Role -> Verifier [pos="e,458.68,282.09 379.56,298.15 399.29,294.15 426.6,288.6 448.65,284.13", + style=invis]; + VerifierRole -> Verifier [pos="e,458.53,270.85 393.91,257.74 411.24,261.25 431.35,265.34 448.38,268.79", + style=dotted]; + Creator -> Updater [pos="e,551.61,49.488 515.78,49.488 523.81,49.488 532.74,49.488 541.35,49.488", + style=invis]; + Project -> Creator [pos="e,458.36,49.488 379.88,49.488 399.42,49.488 426.26,49.488 448.09,49.488", + style=invis]; +} diff --git a/data/biological_relationships_model_er.dot b/data/biological_relationships_model_er.dot new file mode 100644 index 00000000..710b25a8 --- /dev/null +++ b/data/biological_relationships_model_er.dot @@ -0,0 +1,365 @@ +digraph BiologicalRelationship { + graph [bb="0,0,953.67,692.51", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,619.51", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,419.51", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,310.51", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,365.51", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + BiologicalAssociation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#biological-association", + label=BiologicalAssociation, + pos="501.17,395.51", + shape=Mrecord, + style=filled, + target=_top, + width=1.9028]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="501.17,619.51", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + BiologicalRelationship [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#biological-relationship", + label=BiologicalRelationship, + pos="257.48,367.51", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.8665]; + BiologicalRelationshipType [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-relationship-type", + label=BiologicalRelationshipType, + pos="501.17,340.51", + shape=box, + style=filled, + target=_top, + width=2.3472]; + BiologicalProperty [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-property", + label=BiologicalProperty, + pos="721.67,340.51", + shape=box, + style=filled, + target=_top, + width=1.6528]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="257.48,674.51", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="257.48,309.51", + shape=box, + style=filled, + target=_top, + width=0.93056]; + ObjectBiologicalRelationshipType [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#object-biological-relationship-type", + label=ObjectBiologicalRelationshipType, + pos="501.17,286.51", + shape=box, + style=filled, + target=_top, + width=2.8472]; + ObjectBiologicalProperty [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#object-biological-property", + label=ObjectBiologicalProperty, + pos="721.67,286.51", + shape=box, + style=filled, + target=_top, + width=2.1528]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="501.17,232.51", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="501.17,178.51", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubjectBiologicalRelationshipType [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subject-biological-relationship-type", + label=SubjectBiologicalRelationshipType, + pos="501.17,70.512", + shape=box, + style=filled, + target=_top, + width=2.9028]; + SubjectBiologicalProperty [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subject-biological-property", + label=SubjectBiologicalProperty, + pos="721.67,70.512", + shape=box, + style=filled, + target=_top, + width=2.2222]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="721.67,542.51", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="895.67,542.51", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="501.17,674.51", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="501.17,124.51", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="721.67,151.51", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="721.67,450.51", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="501.17,450.51", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="895.67,450.51", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="721.67,611.51", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,474.16,619.51 98.425,619.51 182.46,619.51 382.09,619.51 464.08,619.51", + style=dotted]; + Citation -> CitationTopic [pos="e,211.36,661.87 93.007,628.72 122.52,636.98 166.43,649.29 201.32,659.06", + style=dotted]; + Tag -> Keyword [pos="e,223.75,309.68 86.217,310.38 118.63,310.21 174.43,309.93 213.28,309.73", + style=dotted]; + Source -> SubsequentCitation [pos="e,669.26,560.63 528.53,610.22 560.82,598.85 616.55,579.21 659.7,564", + style=invis]; + Source -> OriginCitation [pos="e,673.95,613.22 528.53,618.55 561.84,617.33 620.09,615.19 663.75,613.6", + style=invis]; + BiologicalRelationship -> Citation [pos="e,73.332,602.59 239.25,389.63 202.74,436.49 117.8,545.51 79.493,594.68"]; + BiologicalRelationship -> DataAttribute [pos="e,104.21,407.84 190.56,384.97 165.69,391.56 137.7,398.97 114.05,405.23"]; + BiologicalRelationship -> Tag [pos="e,84.22,317.5 193.84,349.33 160.77,339.73 121.49,328.32 94.099,320.37"]; + BiologicalRelationship -> Note [pos="e,87.445,365.79 154.07,366.47 133.86,366.26 113.89,366.06 97.588,365.89"]; + BiologicalRelationship -> BiologicalAssociation [pos="e,432.33,387.65 357.48,378.98 379.11,381.49 401.69,384.1 422.35,386.5"]; + BiologicalRelationship -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,266.47,389.75 e,474.04,616.28 270.21,399.24 289.38,446.83 331.93,536.44 396.67,586.51 416.16,601.58 442.71,609.87 464.04,614.36", + style=dotted]; + BiologicalRelationship -> BiologicalRelationshipType [pos="e,416.58,349.85 358.88,356.3 374.63,354.54 390.85,352.72 406.44,350.98"]; + BiologicalRelationship -> ObjectBiologicalRelationshipType [pos="e,420.48,304.57 325.16,350.18 337.2,346.24 349.48,341.67 360.67,336.51 377.92,328.57 379.28,321.11 396.67,313.51 401.29,311.5 406.09,\ +309.6 410.98,307.83"]; + BiologicalRelationship -> PinboardItem [pos="e,455.5,235.63 335.34,352.09 344.52,348.05 353.25,342.95 360.67,336.51 389.23,311.77 367.64,283.68 396.67,259.51 410.39,248.09 428.4,\ +241.44 445.55,237.59"]; + BiologicalRelationship -> Role [pos="e,474.12,178.36 337.94,352.5 346.37,348.38 354.21,343.15 360.67,336.51 402.8,293.26 353.7,247.93 396.67,205.51 414.36,188.06 441.83,\ +181.47 464.03,179.16"]; + BiologicalRelationship -> SubjectBiologicalRelationshipType [pos="e,406.58,88.681 339.72,352.71 347.62,348.54 354.85,343.24 360.67,336.51 430.93,255.25 324.83,177.38 396.67,97.512 397.33,96.787 \ +398,96.081 398.68,95.392"]; + BiologicalRelationship -> SubsequentCitation [pos="e,660.49,545.41 274.32,389.69 297.42,420.13 343.43,473.97 396.67,499.51 477.58,538.32 582.16,545.59 650.29,545.48"]; + BiologicalRelationship -> VerifierRole [pos="e,459.6,125.13 338.94,352.71 347.09,348.55 354.59,343.26 360.67,336.51 416.8,274.33 339.34,212.58 396.67,151.51 410.25,137.05 430.51,\ +129.96 449.52,126.6"]; + BiologicalRelationship -> Creator [dir=back, + pos="s,277.27,389.65 284.33,397.25 309.79,424.08 351.36,461.68 396.67,477.51 501.11,514 635.55,478.79 692.83,460.28", + style=dashed]; + BiologicalRelationship -> Project [dir=back, + pos="s,306.59,388.23 316.12,392.16 340.7,402.23 369.86,413.58 396.67,422.51 422.46,431.1 452.5,439 473.55,444.2", + style=dashed]; + BiologicalRelationship -> Updater [dir=back, + pos="s,339.9,352.86 348.76,347.4 353.16,344.27 357.18,340.66 360.67,336.51 445.12,236.1 298.41,130.44 396.67,43.512 464.08,-16.121 731.3,\ +-12.593 801.67,43.512 864.16,93.328 888,359.28 893.41,432.08", + style=dashed]; + BiologicalRelationship -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,270.07,389.57 e,674.13,602.47 275.04,398.29 297.4,436.79 340.96,501.86 396.67,536.51 419.28,550.57 577.51,583.31 664.19,600.51"]; + BiologicalRelationshipType -> BiologicalProperty [pos="e,661.94,340.51 585.72,340.51 607.56,340.51 630.86,340.51 651.84,340.51", + style=dotted]; + CitationTopic -> Topic [pos="e,473.88,674.51 303.66,674.51 349.88,674.51 420.83,674.51 463.64,674.51", + style=dotted]; + ObjectBiologicalRelationshipType -> ObjectBiologicalProperty [pos="e,644.17,286.51 603.75,286.51 613.84,286.51 624.02,286.51 633.94,286.51", + style=dotted]; + Role -> Verifier [pos="e,692.85,154.95 528.53,175.26 566.99,170.5 638.7,161.64 682.8,156.19", + style=invis]; + SubjectBiologicalRelationshipType -> SubjectBiologicalProperty [pos="e,641.67,70.512 605.99,70.512 614.52,70.512 623.09,70.512 631.51,70.512", + style=dotted]; + SubsequentCitation -> SubsequentSource [pos="e,837.44,542.51 782.83,542.51 797.24,542.51 812.71,542.51 827.41,542.51", + style=dotted]; + VerifierRole -> Verifier [pos="e,693.11,148.11 542.76,129.53 582.98,134.5 644.08,142.05 683.18,146.88", + style=dotted]; + Creator -> Updater [pos="e,865.67,450.51 750.31,450.51 778.72,450.51 823.22,450.51 855.31,450.51", + style=invis]; + Project -> Creator [pos="e,692.97,450.51 528.97,450.51 567.58,450.51 639.05,450.51 682.97,450.51", + style=invis]; +} diff --git a/data/character_states_model_er.dot b/data/character_states_model_er.dot new file mode 100644 index 00000000..b354389f --- /dev/null +++ b/data/character_states_model_er.dot @@ -0,0 +1,417 @@ +digraph CharacterState { + graph [bb="0,0,761.39,668.88", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,623.88", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="63.694,541.88", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="63.694,275.88", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="63.694,437.88", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="63.694,221.88", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="63.694,383.88", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="63.694,167.88", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="63.694,329.88", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Observation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#observation", + label=Observation, + pos="400.89,209.88", + shape=Mrecord, + style=filled, + target=_top, + width=1.1528]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="400.89,541.88", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="400.89,45.883", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + } + subgraph supporting { + CharacterState [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#character-state", + label=CharacterState, + pos="238.89,333.88", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.9871]; + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="238.89,650.88", + shape=box, + style=filled, + target=_top, + width=2.0972]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="238.89,596.88", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="238.89,275.88", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Documentation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="400.89,356.88", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="548.39,356.88", + shape=box, + style=filled, + target=_top, + width=1.0278]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="238.89,221.88", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="238.89,167.88", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="400.89,448.88", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="400.89,264.88", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="548.39,517.88", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="703.39,517.88", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="400.89,596.88", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="400.89,154.88", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="548.39,209.88", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="548.39,100.88", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="400.89,100.88", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="703.39,100.88", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="548.39,448.88", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + AlternateValue -> AlternateValueLanguage [pos="e,163.23,639.24 119.97,632.5 130.61,634.16 141.99,635.93 153.31,637.7", + style=dotted]; + Citation -> Source [pos="e,373.76,541.88 102.82,541.88 167.86,541.88 299.43,541.88 363.37,541.88", + style=dotted]; + Citation -> CitationTopic [pos="e,192.62,582.51 96.461,551.97 120.57,559.63 154.31,570.34 182.79,579.39", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,184.28,275.88 114.79,275.88 133.34,275.88 154.62,275.88 174.21,275.88", + style=dotted]; + Depiction -> Image [pos="e,211.74,221.88 109.3,221.88 137.96,221.88 174.73,221.88 201.61,221.88", + style=dotted]; + Tag -> Keyword [pos="e,205.11,167.88 90.999,167.88 118.58,167.88 162.36,167.88 194.96,167.88", + style=dotted]; + Source -> SubsequentCitation [pos="e,487.18,527.81 427.9,537.59 441.7,535.32 459.4,532.4 476.92,529.51", + style=invis]; + Source -> OriginCitation [pos="e,519.12,466.95 427.9,525.26 450.86,510.58 484.59,489.02 510.36,472.55", + style=invis]; + CharacterState -> AlternateValue [pos="e,88.29,607.02 230.95,355.92 216.51,399.57 180.11,498.82 127.39,568.88 118.65,580.5 107.12,591.46 96.334,600.5"]; + CharacterState -> Citation [pos="e,78.575,525.21 219.32,356.18 186.63,395.45 119.04,476.62 85.09,517.39"]; + CharacterState -> Confidence [pos="e,101.42,288.18 189.05,317.53 164.6,309.34 135.15,299.48 111.05,291.41"]; + CharacterState -> DataAttribute [pos="e,100.77,423.82 209.84,355.8 188.1,372.2 156.81,394.52 127.39,410.88 121.88,413.94 115.96,416.9 110.03,419.66"]; + CharacterState -> Depiction [pos="e,99.906,232.88 187.49,317.71 178.94,313.66 170.53,308.76 163.39,302.88 141.12,284.55 149.55,267.35 127.39,248.88 122.01,244.4 115.77,\ +240.54 109.35,237.27"]; + CharacterState -> Identifier [pos="e,99.743,373.76 184.8,349.21 160.73,356.16 132.58,364.28 109.58,370.92"]; + CharacterState -> Tag [pos="e,89.582,173.38 184.95,318.61 176.96,314.5 169.4,309.35 163.39,302.88 128.93,265.83 161.62,232.15 127.39,194.88 119.86,186.68 109.41,\ +180.86 99.195,176.78"]; + CharacterState -> Note [pos="e,91.756,330.51 167.32,332.25 144.87,331.73 120.94,331.18 101.83,330.74"]; + CharacterState -> Observation [pos="e,362.57,227.94 291.08,318 299.46,313.94 307.6,308.95 314.39,302.88 339,280.87 327.14,261.34 350.39,237.88 351.63,236.63 352.94,\ +235.41 354.3,234.24"]; + CharacterState -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,250.1,356.11 e,373.65,527.31 254.69,365.48 273.26,402.8 307.89,465.32 350.39,508.88 354.84,513.44 360.02,517.72 365.32,521.59", + style=dotted]; + CharacterState -> Descriptor [dir=back, + pos="s,294.52,319.02 303.08,313.63 307.32,310.54 311.17,306.98 314.39,302.88 378.06,221.88 291.71,158.57 350.39,73.883 353.88,68.851 \ +358.58,64.614 363.7,61.082", + style=dashed]; + CharacterState -> Documentation [pos="e,350.25,349.75 310.53,344.04 320.47,345.47 330.61,346.92 340.32,348.32"]; + CharacterState -> PinboardItem [pos="e,371.13,430.78 268.1,355.94 290.19,373 321.85,396.98 350.39,416.88 354.33,419.63 358.48,422.44 362.64,425.21"]; + CharacterState -> Role [pos="e,373.77,276.69 283.3,316.03 293.51,311.77 304.35,307.2 314.39,302.88 330.95,295.76 349.22,287.67 364.6,280.79"]; + CharacterState -> SubsequentCitation [pos="e,487.37,515.76 250.73,356.1 267.47,387.95 302.74,446.03 350.39,475.88 388.28,499.63 437.47,510.13 477.21,514.69"]; + CharacterState -> VerifierRole [pos="e,360.81,172.96 293.37,318.57 301.2,314.48 308.57,309.33 314.39,302.88 351.69,261.54 315.65,226.4 350.39,182.88 351.22,181.84 352.1,\ +180.83 353.03,179.85"]; + CharacterState -> Creator [dir=back, + pos="s,295.07,318.95 303.74,313.34 307.74,310.32 311.36,306.85 314.39,302.88 391.76,201.33 254.62,102.31 350.39,17.883 384.06,-11.803 \ +409.32,2.2186 451.39,17.883 486.08,30.799 516.58,62.507 533.45,82.781", + style=dashed]; + CharacterState -> Project [dir=back, + pos="s,294.25,318.8 302.87,313.46 307.15,310.4 311.08,306.9 314.39,302.88 364.91,241.62 303.15,191.71 350.39,127.88 356.15,120.09 364.86,\ +114.29 373.38,110.1", + style=dashed]; + CharacterState -> Updater [dir=back, + pos="s,310.56,331.29 320.65,330.44 401.24,323.23 524.9,301.51 609.39,236.88 651.42,204.73 681.27,148.03 694.59,119.04", + style=dashed]; + CharacterState -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,279.09,352.85 e,500.72,435.02 288.22,357.1 307.38,365.94 329.74,375.83 350.39,383.88 397.1,402.1 451.26,419.72 490.95,432.01"]; + CitationTopic -> Topic [pos="e,373.83,596.88 285.31,596.88 310.15,596.88 340.49,596.88 363.71,596.88", + style=dotted]; + Documentation -> Document [pos="e,511.26,356.88 451.55,356.88 467.63,356.88 485.38,356.88 501.19,356.88", + style=dotted]; + Role -> Verifier [pos="e,519.87,220.28 427.9,255.05 450.88,246.36 484.64,233.6 510.42,223.86", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,645.03,517.88 609.42,517.88 617.75,517.88 626.36,517.88 634.82,517.88", + style=dotted]; + VerifierRole -> Verifier [pos="e,519.5,199.34 442.42,170.2 463.61,178.22 489.38,187.96 510.09,195.78", + style=dotted]; + Creator -> Updater [pos="e,673.33,100.88 577.1,100.88 601.12,100.88 636.16,100.88 663.08,100.88", + style=invis]; + Project -> Creator [pos="e,519.88,100.88 428.58,100.88 451.36,100.88 484.39,100.88 509.84,100.88", + style=invis]; +} diff --git a/data/citation_topics_model_er.dot b/data/citation_topics_model_er.dot new file mode 100644 index 00000000..248496f2 --- /dev/null +++ b/data/citation_topics_model_er.dot @@ -0,0 +1,167 @@ +digraph CitationTopic { + graph [bb="0,0,567.44,367.64", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="38.997,163.14", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="332.94,349.14", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + CitationTopic [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="182.71,163.14", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.9089]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="332.94,294.14", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="332.94,240.14", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="332.94,186.14", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="442.94,213.14", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="442.94,94.141", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="332.94,94.141", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="332.94,40.141", + shape=box, + style=filled, + target=_top, + width=0.75]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="537.44,94.141", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + CitationTopic -> Citation [dir=back, + pos="s,113.84,163.14 103.84,163.14 95.012,163.14 86.328,163.14 78.347,163.14", + style=dashed]; + CitationTopic -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,194.29,185.17 e,305.61,335.18 198.92,194.19 216.7,228.26 248.68,283.13 287.44,321.14 290.44,324.09 293.81,326.88 297.31,329.48", + style=dotted]; + CitationTopic -> PinboardItem [pos="e,299.71,275.87 203,185.41 222.86,207.61 255.36,241.93 287.44,267.14 288.63,268.08 289.87,269.02 291.13,269.94"]; + CitationTopic -> Role [pos="e,305.62,226.47 220.73,182.37 243.95,194.43 273.7,209.89 296.59,221.78"]; + CitationTopic -> VerifierRole [pos="e,291.38,179.85 251.75,173.7 261.7,175.24 271.79,176.81 281.31,178.29"]; + CitationTopic -> Creator [dir=back, + pos="s,249.88,152.1 259.91,150.18 296.22,143.13 340.02,133.33 378.44,121.14 390.43,117.34 403.26,112.11 414.23,107.27", + style=dashed]; + CitationTopic -> Project [dir=back, + pos="s,223.43,144.65 232.81,140.29 256.95,129.05 285.1,115.94 305.22,106.58", + style=dashed]; + CitationTopic -> Topic [dir=back, + pos="s,205.23,140.79 212.52,133.51 232.6,113.62 260.51,87.444 287.44,67.141 293.06,62.897 299.39,58.733 305.47,54.994", + style=dashed]; + CitationTopic -> Updater [dir=back, + pos="s,191.36,140.92 195.18,131.32 210.15,95.158 240.15,37.935 287.44,13.141 366.35,-28.233 470.38,41.228 514.82,76.06", + style=dashed]; + Role -> Verifier [pos="e,414.14,220.09 360.08,233.6 373.37,230.28 389.76,226.19 404.37,222.53", + style=invis]; + VerifierRole -> Verifier [pos="e,414.3,206.23 374.46,196.27 384.32,198.74 394.82,201.36 404.53,203.79", + style=dotted]; + Creator -> Updater [pos="e,507.27,94.141 471.44,94.141 479.46,94.141 488.4,94.141 497.01,94.141", + style=invis]; + Project -> Creator [pos="e,414.42,94.141 360.63,94.141 373.8,94.141 389.91,94.141 404.31,94.141", + style=invis]; +} diff --git a/data/citations_model_er.dot b/data/citations_model_er.dot new file mode 100644 index 00000000..44982948 --- /dev/null +++ b/data/citations_model_er.dot @@ -0,0 +1,229 @@ +digraph Citation { + graph [bb="0,0,564.81,491.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#citation", + label=Citation, + pos="69.467,233", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.2836]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="69.467,81", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="69.467,175", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="255.24,473", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="255.24,418", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="431.81,473", + shape=box, + style=filled, + target=_top, + width=1.0278]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="255.24,18", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="255.24,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="255.24,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="431.81,418", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="255.24,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="431.81,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="431.81,164", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="255.24,164", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="534.81,164", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Citation -> Tag [pos="e,52.267,94.881 32.746,218.57 21.937,212.4 11.378,204.02 5.2577,193 -2.5089,179.01 -0.23997,172.03 5.2577,157 13.12,135.51 30.038,\ +115.91 44.535,102"]; + Citation -> Note [pos="e,69.467,193.12 69.467,210.88 69.467,208.38 69.467,205.89 69.467,203.39"]; + Citation -> Source [dir=back, + pos="s,72.476,255.25 73.786,265.39 80.305,311.94 99.089,397.39 151.68,445 172.61,463.95 205.16,470.25 227.96,472.25", + style=dashed]; + Citation -> CitationTopic [pos="e,209.17,414.34 75.626,255.03 84.837,289.39 107.43,355.46 151.68,391 165.11,401.79 182.43,408.3 199,412.22"]; + Citation -> PinboardItem [pos="e,209.74,358.75 81.992,255.2 95.502,279.01 120.11,316.2 151.68,337 165.94,346.4 183.33,352.53 199.71,356.53"]; + Citation -> Role [pos="e,227.83,305.28 96.1,251.5 111.58,261.96 132.04,274.59 151.68,283 172.87,292.07 197.86,298.73 217.87,303.16"]; + Citation -> VerifierRole [pos="e,213.72,250.93 115.9,238.69 142.47,242.01 176.09,246.22 203.53,249.65"]; + Citation -> Creator [dir=back, + pos="s,116.01,229.4 126.16,228.45 184.76,222.84 279.32,211.44 358.81,191 373.81,187.14 390,181.24 403.22,175.93", + style=dashed]; + Citation -> Project [dir=back, + pos="s,102.87,217.11 112.17,212.79 124.73,207.03 138.64,200.98 151.68,196 176.94,186.35 206.49,177.36 227.37,171.39", + style=dashed]; + Citation -> Updater [dir=back, + pos="s,99.817,215.84 107.89,209.5 110.66,207.12 113.3,204.61 115.68,202 137.89,177.56 123.23,153.77 151.68,137 212.39,101.22 399.7,123.22 \ +468.81,137 480.92,139.41 493.59,144.13 504.49,148.95", + style=dashed]; + "Objects with Citations" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with citation", + label="Objects with Citations", + pos="255.24,72", + shape=hexagon, + style=filled, + target=_top, + width=2.8769]; + Citation -> "Objects with Citations" [dir=back, + pos="s,100.91,216.01 108.8,209.46 111.3,207.12 113.63,204.63 115.68,202 144.16,165.37 118.06,135.99 151.68,104 161.14,94.999 173.09,88.528 \ +185.47,83.876", + style=dashed]; + Tag -> Keyword [pos="e,221.51,25.205 91.803,70.416 107.97,62.677 130.87,52.299 151.68,45 171.03,38.212 192.96,32.22 211.55,27.616", + style=dotted]; + Source -> Document [pos="e,394.79,473 282.38,473 309.33,473 351.91,473 384.56,473", + style=dotted]; + CitationTopic -> Topic [pos="e,404.6,418 301.65,418 330.55,418 367.47,418 394.43,418", + style=dotted]; + Role -> Verifier [pos="e,403.05,287.29 282.38,305.96 311.65,301.43 359.34,294.05 392.75,288.89", + style=invis]; + VerifierRole -> Verifier [pos="e,403.2,278.73 297.17,262.33 326.25,266.83 365,272.82 393.29,277.2", + style=dotted]; + Creator -> Updater [pos="e,504.48,164 460.41,164 470.87,164 483,164 494.35,164", + style=invis]; + Project -> Creator [pos="e,403.18,164 282.76,164 312.11,164 359.65,164 392.92,164", + style=invis]; +} diff --git a/data/collecting_events_model_er.dot b/data/collecting_events_model_er.dot new file mode 100644 index 00000000..52a8aee3 --- /dev/null +++ b/data/collecting_events_model_er.dot @@ -0,0 +1,591 @@ +digraph CollectingEvent { + graph [bb="0,0,858.62,1147", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,1074", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="59.145,736", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,682", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="59.145,520", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="59.145,628", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,466", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,574", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + CollectingEvent [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#collecting-event", + label=CollectingEvent, + pos="231.45,603", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.1434]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="427.12,873", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="626.12,873", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="427.12,1074", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="231.45,1129", + shape=box, + style=filled, + target=_top, + width=1.2778]; + CollectorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collector-role", + label=CollectorRole, + pos="427.12,818", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Collector [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collector", + label=Collector, + pos="626.12,818", + shape=box, + style=filled, + target=_top, + width=0.93056]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="231.45,736", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Documentation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="427.12,272", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="626.12,272", + shape=box, + style=filled, + target=_top, + width=1.0278]; + DwcOccurrence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#dwc-occurrence", + label=DwcOccurrence, + pos="626.12,928", + shape=box, + style=filled, + target=_top, + width=1.4444]; + Georeference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeference", + label=Georeference, + pos="427.12,218", + shape=box, + style=filled, + target=_top, + width=1.2361]; + ErrorGeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#error-geographic-item", + label=ErrorGeographicItem, + pos="626.12,164", + shape=box, + style=filled, + target=_top, + width=1.8611]; + GeoLocateGeoreference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geo-locate-georeference", + label=GeoLocateGeoreference, + pos="427.12,526", + shape=box, + style=filled, + target=_top, + width=2.0694]; + GeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-item", + label=GeographicItem, + pos="626.12,218", + shape=box, + style=filled, + target=_top, + width=1.4583]; + GpxGeoreference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#gpx-georeference", + label=GpxGeoreference, + pos="427.12,472", + shape=box, + style=filled, + target=_top, + width=1.5694]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="231.45,520", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="231.45,466", + shape=box, + style=filled, + target=_top, + width=0.93056]; + Label [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#label", + label=Label, + pos="427.12,418", + shape=box, + style=filled, + target=_top, + width=0.75]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="626.12,110", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="427.12,580", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="626.12,1074", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="800.62,1074", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="427.12,1129", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="427.12,326", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="626.12,418", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="427.12,110", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="626.12,672", + shape=box, + style=filled, + target=_top, + width=0.79167]; + GeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-area", + label=GeographicArea, + pos="427.12,18", + shape=box, + style=filled, + target=_top, + width=1.4722]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="427.12,672", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="800.62,672", + shape=box, + style=filled, + target=_top, + width=0.83333]; + AccessionProviderRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#accession-provider-role", + label=AccessionProviderRole, + pos="626.12,545", + shape=box, + style=filled, + target=_top, + width=2]; + DeaccessionRecipientRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#deaccession-recipient-role", + label=DeaccessionRecipientRole, + pos="626.12,599", + shape=box, + style=filled, + target=_top, + width=2.2361]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="626.12,1020", + shape=box, + style=filled, + target=_top, + width=1.3194]; + VerbatimDataGeoreference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verbatim-data-georeference", + label=VerbatimDataGeoreference, + pos="427.12,726", + shape=box, + style=filled, + target=_top, + width=2.2917]; + } + Citation -> Source [pos="e,399.81,1074 98.274,1074 169.15,1074 320.27,1074 389.77,1074", + style=dotted]; + Citation -> CitationTopic [pos="e,185.18,1114.4 91.779,1084.2 115.27,1091.8 147.9,1102.3 175.61,1111.3", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,176.81,736 109.86,736 127.59,736 147.81,736 166.56,736", + style=dotted]; + Depiction -> Image [pos="e,204.03,520 104.89,520 132.61,520 167.76,520 193.82,520", + style=dotted]; + Tag -> Keyword [pos="e,197.77,466 86.382,466 113.29,466 155.6,466 187.42,466", + style=dotted]; + CollectingEvent -> Citation [pos="e,62.423,1055.7 210.86,625.02 193.64,645.45 169.08,677.39 154.29,709 98.958,827.22 72.697,982.8 63.796,1045.8"]; + CollectingEvent -> Confidence [pos="e,93.746,722.64 211.11,625.1 190.02,648.22 154.43,684.49 118.29,709 113.45,712.28 108.15,715.35 102.78,718.16"]; + CollectingEvent -> DataAttribute [pos="e,92.579,666.95 189.09,622.19 162.66,634.45 128.5,650.29 101.98,662.6"]; + CollectingEvent -> Depiction [pos="e,89.502,533.44 191.4,583.16 169.9,572.33 142.7,558.76 118.29,547 112.02,543.98 105.35,540.83 98.848,537.79"]; + CollectingEvent -> Identifier [pos="e,100.07,622.14 155.68,613.98 140.28,616.24 124.42,618.57 110.15,620.66"]; + CollectingEvent -> Tag [pos="e,83.925,473.63 196.56,581.87 182.57,572.23 166.76,560.06 154.29,547 134.37,526.14 140.19,511.77 118.29,493 110.97,486.72 101.94,\ +481.6 93.201,477.57"]; + CollectingEvent -> Note [pos="e,86.382,578.47 159.66,590.95 137.89,587.24 114.82,583.31 96.384,580.17"]; + CollectingEvent -> CollectionObject [pos="e,372.54,862.96 252,625.04 269.19,645.49 293.72,677.44 308.62,709 335.3,765.55 302.03,799.22 344.62,845 349.8,850.57 356.14,855.04 \ +362.98,858.61"]; + CollectingEvent -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,253.85,625.34 e,399.8,1070.5 260.62,633.14 277.53,653.1 297.79,680.73 308.62,709 335.14,778.31 299.88,981.79 344.62,1041 355.44,\ +1055.3 373.51,1063.5 389.9,1068.1", + style=dotted]; + CollectingEvent -> CollectorRole [pos="e,380.76,807.05 250.37,625.33 266.68,646.23 290.85,678.7 308.62,709 327.72,741.59 317.07,760.14 344.62,786 352.26,793.17 361.7,798.81 \ +371.41,803.2"]; + CollectingEvent -> Documentation [pos="e,376.5,279.05 271.43,582.96 285.34,573.85 299.75,561.78 308.62,547 365.92,451.5 273.08,384.36 344.62,299 350.59,291.87 358.5,286.61 \ +367.04,282.73"]; + CollectingEvent -> Georeference [pos="e,382.29,223.11 271.63,583.07 285.57,573.98 299.94,561.89 308.62,547 376.68,430.22 259.12,349.7 344.62,245 351.76,236.25 361.82,\ +230.31 372.44,226.29"]; + CollectingEvent -> GeoLocateGeoreference [pos="e,369.3,544.02 273.32,583.61 294.41,573.9 320.66,562.28 344.62,553 349.44,551.13 354.46,549.27 359.53,547.45"]; + CollectingEvent -> GpxGeoreference [pos="e,370.42,485.38 265.62,581.79 279.64,572.05 295.67,559.82 308.62,547 327.56,528.23 322.97,514.57 344.62,499 349.7,495.34 355.31,\ +492.16 361.13,489.39"]; + CollectingEvent -> Label [pos="e,399.87,420.67 269.19,582.51 283.13,573.2 298.16,561.11 308.62,547 337.25,508.38 310.29,478.66 344.62,445 356.75,433.1 374.24,426.44 \ +389.91,422.72"]; + CollectingEvent -> PinboardItem [pos="e,590.07,91.853 271.95,583.26 285.93,574.19 300.25,562.06 308.62,547 358.84,456.59 268.71,153.24 344.62,83 408.52,23.86 519.15,60.002 \ +580.64,87.525"]; + CollectingEvent -> Role [pos="e,399.66,583.14 308.72,593.94 336.49,590.64 366.64,587.06 389.43,584.36"]; + CollectingEvent -> SubsequentCitation [pos="e,564.92,1059.2 253.74,625.39 271.57,645.57 296.07,676.92 308.62,709 332.43,769.89 301.53,951.82 344.62,1001 348.18,1005.1 473.24,\ +1036.5 555.15,1056.8"]; + CollectingEvent -> VerifierRole [pos="e,385.56,333.31 270.7,583.01 284.69,573.85 299.34,561.72 308.62,547 354.22,474.67 290.02,423.82 344.62,358 352.73,348.21 364.25,\ +341.41 376.07,336.68"]; + CollectingEvent -> Version [pos="e,400.06,128.05 271.77,583.15 285.72,574.08 300.07,561.97 308.62,547 387.47,408.9 276.21,334.57 344.62,191 355.23,168.71 374.63,\ +149.05 391.84,134.67"]; + CollectingEvent -> Creator [dir=back, + pos="s,248.21,625.14 254.22,633.54 284.95,676.44 338.05,749.71 344.62,753 410.18,785.84 439.68,775.08 509.62,753 548.62,740.69 585.89,\ +709.97 607.09,690.1", + style=dashed]; + CollectingEvent -> GeographicArea [dir=back, + pos="s,271.99,583.28 280.5,577.38 291.54,569.17 301.98,559.02 308.62,547 362.15,450.06 278.98,139.18 344.62,50 351.82,40.206 362.49,33.408 \ +373.74,28.691", + style=dashed]; + CollectingEvent -> Project [dir=back, + pos="s,281.32,620.41 290.77,623.78 326.85,636.63 371.46,652.52 399.35,662.46", + style=dashed]; + CollectingEvent -> Updater [dir=back, + pos="s,252.89,625.19 259.54,633.05 276.21,653.16 296.62,680.99 308.62,709 342.63,788.41 286.05,836.5 344.62,900 407.41,968.08 453.82,\ +942.67 545.62,955 616.53,964.53 648.66,996.96 706.62,955 794.38,891.46 800.78,742.39 800.21,690.33", + style=dashed]; + CollectingEvent -> AccessionProviderRole [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,270.41,582.82 e,609.99,526.93 278.62,577.11 289.9,568.81 300.92,558.7 308.62,547 347.72,487.55 288.93,435.3 344.62,391 402.01,\ +345.35 444.96,356.4 509.62,391 535.05,404.61 528.63,421.69 545.62,445 564.45,470.83 587.28,499.28 603.63,519.2"]; + CollectingEvent -> DeaccessionRecipientRole [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,308.77,606.09 e,545.31,605.25 318.93,606.39 327.61,606.64 336.28,606.85 344.62,607 417.94,608.31 436.33,609.54 509.62,607 517.92,\ +606.71 526.55,606.31 535.19,605.84"]; + CollectingEvent -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,253.25,625.04 e,578.48,1017.3 259.98,632.86 276.83,652.9 297.27,680.72 308.62,709 351.38,815.64 265.59,881.6 344.62,965 374.55,\ +996.59 495.11,1010.7 568.08,1016.5"]; + CollectingEvent -> VerbatimDataGeoreference [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,253.27,625.27 e,363.19,707.93 260.41,632.41 281.78,653.44 312.87,681.08 344.62,699 347.63,700.7 350.76,702.31 353.97,703.84"]; + CollectionObject -> Otu [pos="e,598.96,873 481.69,873 515.73,873 558.88,873 588.92,873", + style=dotted]; + CollectionObject -> DwcOccurrence [pos="e,573.93,913.71 481.69,887.96 507.15,895.06 537.7,903.6 564.06,910.95", + style=dotted]; + Source -> SubsequentCitation [pos="e,564.81,1074 454.28,1074 479.81,1074 519.79,1074 554.65,1074", + style=invis]; + Source -> OriginCitation [pos="e,578.42,1032.8 454.28,1066.8 483.29,1058.9 530.97,1045.8 568.6,1035.5", + style=invis]; + CitationTopic -> Topic [pos="e,400.03,1129 277.86,1129 312.01,1129 358.18,1129 389.88,1129", + style=dotted]; + CollectorRole -> Collector [pos="e,592.42,818 473.31,818 506.11,818 550.2,818 582.41,818", + style=dotted]; + Documentation -> Document [pos="e,589.1,272 477.83,272 508.82,272 548.44,272 578.78,272", + style=dotted]; + Georeference -> ErrorGeographicItem [pos="e,559.43,182.01 471.84,206.02 494.65,199.76 523.22,191.93 549.49,184.73", + style=dotted]; + Georeference -> GeographicItem [pos="e,573.49,218 471.84,218 498.71,218 533.55,218 563.23,218", + style=dotted]; + Role -> Verifier [pos="e,611.48,436.25 454.33,575.13 471.16,571.12 492.91,564.22 509.62,553 532.22,537.82 578.57,479.38 605.17,444.56", + style=invis]; + Role -> AccessionProviderRole [pos="e,553.83,557.67 454.28,575.35 477.23,571.27 511.87,565.12 543.96,559.42", + style=invis]; + Role -> DeaccessionRecipientRole [pos="e,545.58,591.33 454.28,582.52 475.25,584.55 505.96,587.51 535.59,590.37", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,742.51,1074 687.45,1074 701.97,1074 717.58,1074 732.4,1074", + style=dotted]; + VerifierRole -> Verifier [pos="e,597.51,402.62 468.68,340.96 481.86,346.08 496.47,352.02 509.62,358 536.56,370.25 566.16,385.66 588.65,397.8", + style=dotted]; + Version -> PinboardItem [pos="e,580.57,110 456.34,110 486,110 533.4,110 570.43,110", + style=invis]; + Creator -> Updater [pos="e,770.53,672 654.83,672 683.32,672 727.95,672 760.13,672", + style=invis]; + Project -> Creator [pos="e,597.38,672 454.68,672 488.76,672 548.1,672 587,672", + style=invis]; +} diff --git a/data/collection_object_observations_model_er.dot b/data/collection_object_observations_model_er.dot new file mode 100644 index 00000000..7a12a3e4 --- /dev/null +++ b/data/collection_object_observations_model_er.dot @@ -0,0 +1,214 @@ +digraph CollectionObjectObservation { + graph [bb="0,0,810.21,333.76", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="45.496,209.26", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="45.496,97.256", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="45.496,153.26", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="659.71,315.26", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + } + subgraph supporting { + CollectionObjectObservation [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#collection-object-observation", + label=CollectionObjectObservation, + pos="254.1,153.26", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.5309]; + DerivedCollectionObject [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#derived-collection-object", + label=DerivedCollectionObject, + pos="493.21,315.26", + shape=box, + style=filled, + target=_top, + width=2.1111]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="254.1,211.26", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="254.1,95.256", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="493.21,261.26", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="493.21,207.26", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="493.21,153.26", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="659.71,180.26", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="659.71,61.256", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="493.21,61.256", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="780.21,61.256", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Depiction -> Image [pos="e,226.88,211 91.072,209.69 128.59,210.05 181.59,210.56 216.62,210.9", + style=dotted]; + Tag -> Keyword [pos="e,220.35,95.573 72.663,97.003 107.3,96.668 168.81,96.072 210.27,95.671", + style=dotted]; + CollectionObjectObservation -> Depiction [pos="e,81.228,197.97 175.88,171.46 159.68,175.5 142.74,179.88 126.99,184.26 115.21,187.53 102.53,191.33 90.812,194.97"]; + CollectionObjectObservation -> Tag [pos="e,69.985,104.96 175.88,135.05 159.68,131.02 142.74,126.63 126.99,122.26 111.3,117.89 94.033,112.6 79.53,108.01"]; + CollectionObjectObservation -> Note [pos="e,73.506,153.26 126.57,153.26 110.96,153.26 96.098,153.26 83.511,153.26"]; + CollectionObjectObservation -> DerivedCollectionObject [pos="e,428.29,297.11 355.93,167.93 365.15,172.15 373.8,177.5 381.21,184.26 417.36,217.21 382.84,253.46 417.21,288.26 418.14,289.2 419.11,\ +290.11 420.11,290.98"]; + CollectionObjectObservation -> PinboardItem [pos="e,447.53,250.12 350.19,168.8 361.16,172.82 371.78,177.88 381.21,184.26 403.91,199.58 395.35,217.77 417.21,234.26 423.51,239 430.71,\ +242.97 438.11,246.28"]; + CollectionObjectObservation -> Role [pos="e,466.09,201.31 333.73,171.16 375.09,180.58 423.79,191.67 456.18,199.05"]; + CollectionObjectObservation -> VerifierRole [pos="e,451.49,153.26 381.3,153.26 402.56,153.26 423.49,153.26 441.35,153.26"]; + CollectionObjectObservation -> Creator [dir=back, + pos="s,344.61,136.93 354.78,134.98 416.79,123.03 498.01,106.32 569.21,88.256 590.14,82.947 613.48,75.867 631.07,70.289", + style=dashed]; + CollectionObjectObservation -> Project [dir=back, + pos="s,343.69,136.72 353.36,133.63 362.98,130.37 372.42,126.61 381.21,122.26 399.63,113.14 399.6,103.83 417.21,93.256 432.51,84.075 450.91,\ +76.179 465.67,70.528", + style=dashed]; + CollectionObjectObservation -> Updater [dir=back, + pos="s,354.92,138.44 364.11,133.95 370.22,130.63 376,126.76 381.21,122.26 413.21,94.655 382.13,57.81 417.21,34.256 521.86,-35.999 683.94,\ +19.999 749.85,47.86", + style=dashed]; + DerivedCollectionObject -> CollectionObject [pos="e,604.92,315.26 569.24,315.26 577.8,315.26 586.46,315.26 594.85,315.26", + style=dotted]; + Role -> Verifier [pos="e,631.12,184.78 520.28,202.98 547.47,198.52 590.34,191.48 621.17,186.42", + style=invis]; + VerifierRole -> Verifier [pos="e,631.13,175.73 534.88,159.93 561.22,164.25 595.28,169.84 621.01,174.07", + style=dotted]; + Creator -> Updater [pos="e,749.95,61.256 688.5,61.256 703.79,61.256 723.03,61.256 739.85,61.256", + style=invis]; + Project -> Creator [pos="e,631.11,61.256 521.01,61.256 548.13,61.256 590.3,61.256 620.84,61.256", + style=invis]; +} diff --git a/data/collection_objects_model_er.dot b/data/collection_objects_model_er.dot new file mode 100644 index 00000000..6333ddc5 --- /dev/null +++ b/data/collection_objects_model_er.dot @@ -0,0 +1,910 @@ +digraph CollectionObject { + graph [bb="0,0,944.65,1820", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="85.142,1747", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="85.142,821", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="85.142,983", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="85.142,767", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="85.142,929", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="85.142,700", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="85.142,875", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + ProtocolRelationship [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="85.142,619", + shape=oval, + style=filled, + target=_top, + width=2.3651]; + } + subgraph core { + CollectionObject [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="286.97,879", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.2411]; + BiologicalAssociation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#biological-association", + label=BiologicalAssociation, + pos="489.15,1361", + shape=Mrecord, + style=filled, + target=_top, + width=1.9028]; + Observation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#observation", + label=Observation, + pos="489.15,1267", + shape=Mrecord, + style=filled, + target=_top, + width=1.1528]; + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="699.65,1267", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + CollectingEvent [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collecting-event", + label=CollectingEvent, + pos="489.15,1081", + shape=Mrecord, + style=filled, + target=_top, + width=1.4444]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="699.65,879", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Sequence [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#sequence", + label=Sequence, + pos="884.65,770", + shape=Mrecord, + style=filled, + target=_top, + width=0.94444]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="489.15,1747", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + TaxonName [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#taxon-name", + label=TaxonName, + pos="884.65,879", + shape=Mrecord, + style=filled, + target=_top, + width=1.1667]; + } + subgraph supporting { + BiocurationClassification [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biocuration-classification", + label=BiocurationClassification, + pos="699.65,1026", + shape=box, + style=filled, + target=_top, + width=2.1389]; + BiocurationClass [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biocuration-class", + label=BiocurationClass, + pos="884.65,1026", + shape=box, + style=filled, + target=_top, + width=1.5278]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="286.97,1802", + shape=box, + style=filled, + target=_top, + width=1.2778]; + DerivedCollectionObject [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#derived-collection-object", + label=DerivedCollectionObject, + pos="489.15,934", + shape=box, + style=filled, + target=_top, + width=2.1111]; + CollectionObjectObservation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collection-object-observation", + label=CollectionObjectObservation, + pos="699.65,934", + shape=box, + style=filled, + target=_top, + width=2.4306]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="286.97,821", + shape=box, + style=filled, + target=_top, + width=1.5139]; + TaxonDetermination [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-determination", + label=TaxonDetermination, + pos="489.15,824", + shape=box, + style=filled, + target=_top, + width=1.8056]; + Determiner [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#determiner", + label=Determiner, + pos="699.65,824", + shape=box, + style=filled, + target=_top, + width=1.0972]; + OriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="489.15,770", + shape=box, + style=filled, + target=_top, + width=1.6667]; + Extract [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#extract", + label=Extract, + pos="699.65,770", + shape=box, + style=filled, + target=_top, + width=0.77778]; + Georeference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeference", + label=Georeference, + pos="699.65,1081", + shape=box, + style=filled, + target=_top, + width=1.2361]; + GeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-item", + label=GeographicItem, + pos="884.65,1081", + shape=box, + style=filled, + target=_top, + width=1.4583]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="286.97,767", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="286.97,659", + shape=box, + style=filled, + target=_top, + width=0.93056]; + LoanItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan-item", + label=LoanItem, + pos="489.15,662", + shape=box, + style=filled, + target=_top, + width=0.97222]; + Loan [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan", + label=Loan, + pos="699.65,662", + shape=box, + style=filled, + target=_top, + width=0.75]; + ObservationMatrixRow [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-row", + label=ObservationMatrixRow, + pos="699.65,1174", + shape=box, + style=filled, + target=_top, + width=2.0278]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="884.65,1174", + shape=box, + style=filled, + target=_top, + width=1.6667]; + ObservationMatrixRowItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-row-item", + label=ObservationMatrixRowItem, + pos="489.15,1174", + shape=box, + style=filled, + target=_top, + width=2.375]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="699.65,532", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Protocol [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#protocol", + label=Protocol, + pos="286.97,605", + shape=box, + style=filled, + target=_top, + width=0.86111]; + RelatedBiologicalAssociation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-biological-association", + label=RelatedBiologicalAssociation, + pos="699.65,1342", + shape=box, + style=filled, + target=_top, + width=2.4722]; + RelatedOriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-origin-relationship", + label=RelatedOriginRelationship, + pos="699.65,716", + shape=box, + style=filled, + target=_top, + width=2.2361]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="489.15,386", + shape=box, + style=filled, + target=_top, + width=0.75]; + SqedDepiction [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#sqed-depiction", + label=SqedDepiction, + pos="286.97,713", + shape=box, + style=filled, + target=_top, + width=1.3472]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="699.65,1723", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="884.65,1723", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="489.15,1802", + shape=box, + style=filled, + target=_top, + width=0.75]; + TypeMaterial [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#type-material", + label=TypeMaterial, + pos="489.15,294", + shape=box, + style=filled, + target=_top, + width=1.2639]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="489.15,478", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="699.65,478", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="489.15,532", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="699.65,18", + shape=box, + style=filled, + target=_top, + width=0.79167]; + PreparationType [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#preparation-type", + label=PreparationType, + pos="489.15,1026", + shape=box, + style=filled, + target=_top, + width=1.4861]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="489.15,18", + shape=box, + style=filled, + target=_top, + width=0.76389]; + RangedLotCategory [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#ranged-lot-category", + label=RangedLotCategory, + pos="489.15,126", + shape=box, + style=filled, + target=_top, + width=1.75]; + Repository [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#repository", + label=Repository, + pos="489.15,72", + shape=box, + style=filled, + target=_top, + width=1.0556]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="884.65,18", + shape=box, + style=filled, + target=_top, + width=0.83333]; + AccessionProvider [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#accession-provider", + label=AccessionProvider, + pos="699.65,424", + shape=box, + style=filled, + target=_top, + width=1.6528]; + AccessionProviderRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#accession-provider-role", + label=AccessionProviderRole, + pos="699.65,370", + shape=box, + style=filled, + target=_top, + width=2]; + Container [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#container", + label=Container, + pos="489.15,1508", + shape=box, + style=filled, + target=_top, + width=0.97222]; + ContainerItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#container-item", + label=ContainerItem, + pos="699.65,1508", + shape=box, + style=filled, + target=_top, + width=1.3194]; + DeaccessionRecipient [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#deaccession-recipient", + label=DeaccessionRecipient, + pos="489.15,1654", + shape=box, + style=filled, + target=_top, + width=1.8889]; + DeaccessionRecipientRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#deaccession-recipient-role", + label=DeaccessionRecipientRole, + pos="699.65,316", + shape=box, + style=filled, + target=_top, + width=2.2361]; + DwcOccurrence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#dwc-occurrence", + label=DwcOccurrence, + pos="489.15,1562", + shape=box, + style=filled, + target=_top, + width=1.4444]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="699.65,1638", + shape=box, + style=filled, + target=_top, + width=1.3194]; + ParentContainerItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#parent-container-item", + label=ParentContainerItem, + pos="489.15,1416", + shape=box, + style=filled, + target=_top, + width=1.8056]; + } + Citation -> Source [pos="e,461.93,1747 124.32,1747 201.73,1747 376.18,1747 451.92,1747", + style=dotted]; + Citation -> CitationTopic [pos="e,240.95,1789.6 119.14,1756.1 149.54,1764.4 195.23,1777 231.11,1786.9", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,232.14,821 136.05,821 162.1,821 194.26,821 222.1,821", + style=dotted]; + Depiction -> Image [pos="e,259.93,767 130.99,767 166.81,767 216.36,767 249.71,767", + style=dotted]; + Depiction -> SqedDepiction [pos="e,238.45,725.84 123.26,756.97 152.84,748.97 194.78,737.64 228.67,728.48", + style=dotted]; + Tag -> Keyword [pos="e,253.45,665.67 111.05,694.89 144.22,688.08 203.41,675.94 243.65,667.68", + style=dotted]; + ProtocolRelationship -> Protocol [pos="e,255.73,607.12 166.27,613.39 193.57,611.47 222.93,609.42 245.74,607.82", + style=dotted]; + CollectionObject -> Citation [pos="e,90.316,1728.9 280.85,901.24 253.33,1020.8 123.14,1586.3 92.576,1719.1"]; + CollectionObject -> Confidence [pos="e,125.14,832.32 229.67,862.66 199.83,854 163.55,843.47 134.93,835.16"]; + CollectionObject -> DataAttribute [pos="e,130.27,971.36 257.36,901.31 234.73,918.13 201.8,940.82 170.28,956 160.75,960.59 150.25,964.67 139.99,968.17"]; + CollectionObject -> Depiction [pos="e,126.87,774.2 230.4,862.51 221.83,858.56 213.46,853.76 206.28,848 183.8,829.93 193.31,811.38 170.28,794 160.43,786.56 148.46,781.13 \ +136.67,777.18"]; + CollectionObject -> Identifier [pos="e,122.33,919.95 225.35,894.17 195.39,901.66 159.83,910.56 132.15,917.49"]; + CollectionObject -> Tag [pos="e,110.73,706.01 227.35,863.24 219.56,859.24 212.22,854.24 206.28,848 171.4,811.35 203.81,777.89 170.28,740 157.2,725.22 137.47,715.44 \ +120.4,709.25"]; + CollectionObject -> Note [pos="e,113.09,875.54 206.06,877.4 177.41,876.83 146.48,876.21 123.21,875.74"]; + CollectionObject -> ProtocolRelationship [pos="e,124.32,635.12 226.27,863.64 218.72,859.59 211.74,854.46 206.28,848 155.05,787.33 215.22,738.47 170.28,673 161.02,659.5 147.16,\ +648.62 133.34,640.25"]; + CollectionObject -> BiologicalAssociation [pos="e,422.62,1343 290.97,901.12 302.38,982.27 345.37,1262.3 403.65,1328 406.73,1331.5 410.22,1334.6 413.99,1337.4"]; + CollectionObject -> Observation [pos="e,456.78,1248.8 291.55,901.31 301.33,956.64 332.62,1102.8 403.65,1201 415.52,1217.4 432.57,1231.8 448.25,1242.9"]; + CollectionObject -> CollectingEvent [dir=back, + pos="s,296.9,901.14 301.02,910.41 318.72,949.31 353.94,1015.1 403.65,1053 413.35,1060.4 425.11,1065.9 436.74,1070", + style=dashed]; + CollectionObject -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,288.1,901.29 e,461.84,1743.8 288.21,911.63 289.87,1049.9 302.8,1586.2 403.65,1714 415.39,1728.9 434.77,1737.1 452.01,1741.6", + style=dotted]; + CollectionObject -> BiocurationClassification [pos="e,622.38,1009.4 312.79,901.1 335.06,919.79 369.43,945.85 403.65,961 406.1,962.09 526.38,988.44 612.58,1007.2"]; + CollectionObject -> DerivedCollectionObject [pos="e,422.47,915.96 345.6,894.83 366.53,900.58 390.49,907.17 412.73,913.28"]; + CollectionObject -> TaxonDetermination [pos="e,423.9,841.65 345.6,863.17 366.93,857.31 391.42,850.58 414.01,844.37"]; + CollectionObject -> OriginRelationship [pos="e,428.94,783.46 342.98,862.53 351.71,858.56 360.28,853.76 367.65,848 389.5,830.91 381.27,813.41 403.65,797 408.5,793.44 413.84,790.34 \ +419.41,787.64"]; + CollectionObject -> LoanItem [pos="e,454.07,672.2 347.39,863.42 354.98,859.39 362.04,854.34 367.65,848 410.77,799.22 363.24,757.05 403.65,706 414.09,692.81 429.57,\ +683.15 444.44,676.31"]; + CollectionObject -> Loan [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,348.26,863.6 e,672.48,648.55 356.88,858.12 360.88,855.18 364.53,851.83 367.65,848 428.28,773.56 330.32,696.97 403.65,635 477.66,\ +572.45 602.53,616.6 663.3,644.27", + style=dotted]; + CollectionObject -> ObservationMatrixRow [pos="e,626.43,1158.2 292.53,901.29 303.23,947.54 334.41,1054.1 403.65,1108 405.8,1109.7 530.06,1137.1 616.6,1156.1"]; + CollectionObject -> ObservationMatrixRowItem [pos="e,423.53,1155.9 291.69,901.02 301.23,950.82 331.1,1073.2 403.65,1142 407,1145.2 410.7,1148.1 414.63,1150.7"]; + CollectionObject -> PinboardItem [pos="e,653.91,541.98 348.4,863.71 355.75,859.65 362.47,854.51 367.65,848 436.98,760.84 328.2,681.93 403.65,600 405.71,597.76 559.21,563.17 \ +643.94,544.21"]; + CollectionObject -> RelatedBiologicalAssociation [pos="e,610.3,1332.5 290.99,901.19 302.1,979.32 343.18,1239.9 403.65,1294 418.38,1307.2 520.22,1321.7 600.17,1331.3"]; + CollectionObject -> RelatedOriginRelationship [pos="e,619.03,701.43 346.53,863.2 354.33,859.2 361.68,854.21 367.65,848 401.81,812.41 364.85,773.48 403.65,743 460.94,697.99 545.17,694.53 \ +608.97,700.41"]; + CollectionObject -> Role [pos="e,461.99,388.59 349.16,863.77 356.3,859.7 362.76,854.54 367.65,848 425.04,771.18 345.91,494.56 403.65,418 415.1,402.82 434.65,394.84 \ +452.06,390.65"]; + CollectionObject -> SubsequentCitation [pos="e,638.36,1722.7 287.74,901.23 287.05,1018.9 290.02,1567.6 403.65,1681 434.31,1711.6 551.11,1720.1 628.22,1722.4"]; + CollectionObject -> TypeMaterial [pos="e,443.56,300.86 349.25,863.84 356.37,859.76 362.81,854.58 367.65,848 436.55,754.34 334.32,419.35 403.65,326 411.17,315.86 422.32,\ +308.94 434.07,304.21"]; + CollectionObject -> VerifierRole [pos="e,447.48,481.51 349.03,863.68 356.19,859.62 362.69,854.49 367.65,848 460.67,726.18 306.9,623.89 403.65,505 412.17,494.53 424.76,\ +488.06 437.64,484.09"]; + CollectionObject -> Version [pos="e,459.79,535.21 348.51,863.8 355.84,859.72 362.53,854.55 367.65,848 445.95,747.72 324.89,663.93 403.65,564 414.82,549.82 433.03,\ +541.92 449.69,537.52"]; + CollectionObject -> Creator [dir=back, + pos="s,349.33,863.9 357.89,858.11 361.56,855.17 364.88,851.82 367.65,848 452.84,730.53 311.3,307.93 403.65,196 453.52,135.55 507.31,193.1 \ +574.65,153 625.23,122.88 667.46,65.79 687,36.441", + style=dashed]; + CollectionObject -> PreparationType [dir=back, + pos="s,305.4,901.29 311.99,909.18 333.64,934.71 367.56,970.75 403.65,994 413.41,1000.3 424.58,1005.6 435.54,1010", + style=dashed]; + CollectionObject -> Project [dir=back, + pos="s,349.39,863.95 357.93,858.14 361.6,855.2 364.9,851.84 367.65,848 419.71,775.43 349.37,115.93 403.65,45 417.12,27.388 442.18,21.046 \ +461.52,18.869", + style=dashed]; + CollectionObject -> RangedLotCategory [dir=back, + pos="s,349.35,863.91 357.9,858.12 361.57,855.18 364.88,851.82 367.65,848 457.6,723.57 313.13,282.02 403.65,158 409.38,150.14 417.29,144.22 \ +425.99,139.74", + style=dashed]; + CollectionObject -> Repository [dir=back, + pos="s,349.37,863.93 357.92,858.13 361.59,855.19 364.89,851.83 367.65,848 465,712.76 302.17,231.17 403.65,99 414.81,84.463 433.85,77.607 \ +451.04,74.432", + style=dashed]; + CollectionObject -> Updater [dir=back, + pos="s,349.31,863.89 357.87,858.1 361.55,855.16 364.87,851.82 367.65,848 448.2,737.31 316.64,338.7 403.65,233 453.52,172.41 501.73,218.01 \ +574.65,189 684.6,145.26 804.39,70.278 856.69,36.024", + style=dashed]; + CollectionObject -> AccessionProvider [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,349.11,863.74 e,639.92,420.89 357.73,857.99 361.45,855.08 364.81,851.77 367.65,848 420.91,777.22 341.03,513.66 403.65,451 434.3,\ +420.32 552.63,418.35 629.79,420.57", + style=dotted]; + CollectionObject -> AccessionProviderRole [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,349.22,863.82 e,627.49,356.32 357.81,858.05 361.5,855.13 364.84,851.8 367.65,848 432.42,760.38 323.82,433.16 403.65,359 433.61,\ +331.17 540.85,342.31 617.38,354.65"]; + CollectionObject -> Container [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,289.41,901.06 e,453.91,1503.1 290.14,911.32 298.25,1022.7 330.08,1388.7 403.65,1476 413.93,1488.2 429.38,1495.8 444.27,1500.4", + style=dotted]; + CollectionObject -> ContainerItem [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,289.36,901.06 e,652.01,1497.8 290.07,911.34 297.79,1019.5 328.1,1366.3 403.65,1443 404.18,1443.5 556.68,1477 642.18,1495.7"]; + CollectionObject -> DeaccessionRecipient [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,288.49,901.01 e,420.84,1636.5 288.79,911.33 292.66,1039.5 312.93,1510.2 403.65,1622 406.24,1625.2 409.19,1628.1 412.4,1630.7", + style=dotted]; + CollectionObject -> DeaccessionRecipientRole [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,349.29,863.87 e,670.29,297.97 357.86,858.09 361.54,855.15 364.86,851.81 367.65,848 443.94,743.54 309.39,355.6 403.65,267 474.5,\ +200.4 599.57,257.48 661.61,292.91"]; + CollectionObject -> DwcOccurrence [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,288.88,901.22 e,436.94,1555.1 289.36,911.49 295.09,1030.4 320.64,1440 403.65,1535 410.04,1542.3 418.41,1547.7 427.4,1551.6"]; + CollectionObject -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,288.24,901.12 e,651.85,1633.2 288.43,911.25 290.92,1036.9 306.62,1491.7 403.65,1589 420.23,1605.6 560.85,1623.2 641.8,1632.1"]; + CollectionObject -> ParentContainerItem [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,290.12,901.08 e,423.82,1402.8 291.17,911.22 301.77,1011.7 338.78,1316.5 403.65,1388 406.98,1391.7 410.8,1394.9 414.94,1397.6", + style=dotted]; + BiologicalAssociation -> RelatedBiologicalAssociation [pos="e,610.4,1350 557.84,1354.8 571.33,1353.6 585.76,1352.3 600.04,1351", + style=invis]; + Observation -> Descriptor [pos="e,662.58,1267 530.84,1267 565.68,1267 615.84,1267 652.23,1267", + style=dotted]; + Observation -> ObservationMatrix [pos="e,824.52,1191.5 530.82,1257.4 554.16,1251.9 584.02,1244.9 610.65,1239 689.6,1221.4 710.14,1220.5 788.65,1201 797.11,1198.9 805.96,\ +1196.6 814.71,1194.2", + style=invis]; + CollectingEvent -> Georeference [pos="e,654.87,1081 541.15,1081 572.59,1081 612.86,1081 644.81,1081", + style=dotted]; + Otu -> TaxonName [pos="e,842.62,879 726.87,879 754.27,879 797.98,879 832.3,879", + style=dotted]; + Source -> SubsequentCitation [pos="e,638.4,1729.9 516.55,1744 544.52,1740.7 589.84,1735.5 628.28,1731.1", + style=invis]; + Source -> OriginCitation [pos="e,664.15,1656 516.55,1733.2 551.47,1714.9 613.45,1682.5 655.28,1660.7", + style=invis]; + BiocurationClassification -> BiocurationClass [pos="e,829.61,1026 776.66,1026 790.83,1026 805.5,1026 819.27,1026", + style=dotted]; + CitationTopic -> Topic [pos="e,461.91,1802 333.39,1802 369.2,1802 418.47,1802 451.72,1802", + style=dotted]; + DerivedCollectionObject -> CollectionObjectObservation [pos="e,611.79,934 565.42,934 577.18,934 589.46,934 601.62,934", + style=dotted]; + TaxonDetermination -> Otu [pos="e,672.43,872.08 554.4,840.95 589.94,850.32 632.78,861.63 662.5,869.46", + style=dotted]; + TaxonDetermination -> Determiner [pos="e,660.07,824 554.4,824 585.2,824 621.49,824 649.96,824", + style=dotted]; + OriginRelationship -> Extract [pos="e,671.64,770 549.34,770 585.31,770 630.14,770 661.24,770", + style=dotted]; + OriginRelationship -> RelatedOriginRelationship [pos="e,628.97,734.04 549.34,754.67 571.04,749.05 595.96,742.59 619.16,736.59", + style=invis]; + Extract -> Sequence [pos="e,850.64,770 727.65,770 757.29,770 805.31,770 840.25,770", + style=dotted]; + Georeference -> GeographicItem [pos="e,832.05,1081 744.48,1081 767.62,1081 796.4,1081 821.78,1081", + style=dotted]; + LoanItem -> Loan [pos="e,672.43,662 524.58,662 562.53,662 623.34,662 662.11,662", + style=dotted]; + ObservationMatrixRow -> ObservationMatrix [pos="e,824.62,1174 772.71,1174 786.42,1174 800.74,1174 814.36,1174", + style=dotted]; + ObservationMatrixRowItem -> ObservationMatrixRow [pos="e,626.39,1174 574.65,1174 588.32,1174 602.47,1174 616.09,1174", + style=invis]; + Role -> Verifier [pos="e,670.8,470.97 516.21,402.01 540.13,416.22 576.88,436.87 610.65,451 626.73,457.73 645.09,463.63 660.86,468.18", + style=invis]; + Role -> AccessionProvider [pos="e,640.13,413.34 516.55,390.81 544.92,395.98 591.15,404.41 629.93,411.48", + style=invis]; + Role -> AccessionProviderRole [pos="e,627.28,375.48 516.55,383.97 541.89,382.03 581.49,378.99 617.3,376.24", + style=invis]; + Role -> DeaccessionRecipientRole [pos="e,638.41,334.09 516.36,376.26 540.69,367.32 577.97,353.84 610.65,343 616.52,341.05 622.63,339.08 628.77,337.12", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,826.54,1723 760.82,1723 778.58,1723 798.13,1723 816.31,1723", + style=dotted]; + VerifierRole -> Verifier [pos="e,671.03,478 530.84,478 568.49,478 624.01,478 660.74,478", + style=dotted]; + Version -> PinboardItem [pos="e,653.85,532 518.27,532 550.27,532 603.33,532 643.63,532", + style=invis]; + Creator -> Updater [pos="e,854.38,18 728.44,18 759.25,18 809.19,18 844.07,18", + style=invis]; + PreparationType -> BiocurationClassification [pos="e,622.41,1026 542.76,1026 563.87,1026 588.76,1026 612.38,1026", + style=invis]; + Project -> Creator [pos="e,670.92,18 516.98,18 553.58,18 619.35,18 660.91,18", + style=invis]; + Container -> ContainerItem [pos="e,652.06,1508 524.58,1508 556.4,1508 604.29,1508 641.78,1508", + style=invis]; +} diff --git a/data/collection_profiles_model_er.dot b/data/collection_profiles_model_er.dot new file mode 100644 index 00000000..8f8f1467 --- /dev/null +++ b/data/collection_profiles_model_er.dot @@ -0,0 +1,203 @@ +digraph CollectionProfile { + graph [bb="0,0,599.15,378.31", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,222.81", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,113.81", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,168.81", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="364.65,359.81", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + CollectionProfile [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#collection-profile", + label=CollectionProfile, + pos="202.47,169.81", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.2411]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="202.47,111.81", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="364.65,304.81", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="364.65,250.81", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="364.65,196.81", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="474.65,223.81", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Container [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#container", + label=Container, + pos="364.65,142.81", + shape=box, + style=filled, + target=_top, + width=0.97222]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="474.65,50.812", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="364.65,50.812", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="569.15,50.812", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,168.85,112.23 69.917,113.48 94.051,113.18 130.41,112.71 158.79,112.35", + style=dotted]; + CollectionProfile -> Identifier [pos="e,76.929,211.7 149.87,187.17 129.34,194.07 106.01,201.92 86.475,208.49"]; + CollectionProfile -> Tag [pos="e,67.147,122.07 151.41,152.02 127.03,143.36 98.407,133.18 76.826,125.51"]; + CollectionProfile -> Note [pos="e,70.985,168.98 121.55,169.3 107.44,169.21 93.385,169.13 81.183,169.05"]; + CollectionProfile -> Otu [dir=back, + pos="s,215.57,192.05 220.61,200.82 240.9,235.6 277.27,292.3 319.15,331.81 324.6,336.95 331.12,341.67 337.47,345.71", + style=dashed]; + CollectionProfile -> PinboardItem [pos="e,332,286.72 224.46,191.93 246.77,214.83 283.67,250.94 319.15,277.81 320.54,278.86 321.97,279.91 323.43,280.94"]; + CollectionProfile -> Role [pos="e,337.18,237.42 243.48,190.04 269.45,203.17 302.98,220.13 328.03,232.8"]; + CollectionProfile -> VerifierRole [pos="e,323.1,189.98 276.53,182.13 288.91,184.21 301.52,186.34 313.16,188.3"]; + CollectionProfile -> Container [dir=back, + pos="s,276.53,157.5 286.52,155.81 301.73,153.25 316.79,150.71 329.51,148.57", + style=dashed]; + CollectionProfile -> Creator [dir=back, + pos="s,253.44,152.12 262.87,148.21 269.8,145.25 276.69,142.09 283.15,138.81 300.08,130.22 302.33,124.61 319.15,115.81 357.99,95.493 369.76,\ +94.831 410.15,77.812 421.86,72.881 434.75,67.404 445.85,62.679", + style=dashed]; + CollectionProfile -> Project [dir=back, + pos="s,259.12,153.42 268.22,148.81 273.52,145.86 278.59,142.54 283.15,138.81 306.06,120.09 298.78,104.27 319.15,82.812 324.39,77.29 330.71,\ +72.095 336.91,67.561", + style=dashed]; + CollectionProfile -> Updater [dir=back, + pos="s,262.19,154.15 271.03,148.96 275.46,146.01 279.57,142.64 283.15,138.81 319.72,99.682 276,55.525 319.15,23.812 385.2,-24.723 488.99,\ +12.856 539.13,36.047", + style=dashed]; + Role -> Verifier [pos="e,445.86,230.76 391.8,244.28 405.09,240.95 421.48,236.86 436.09,233.2", + style=invis]; + VerifierRole -> Verifier [pos="e,446.02,216.9 406.18,206.94 416.04,209.41 426.54,212.03 436.25,214.46", + style=dotted]; + Creator -> Updater [pos="e,538.99,50.812 503.16,50.812 511.18,50.812 520.12,50.812 528.73,50.812", + style=invis]; + Project -> Creator [pos="e,446.14,50.812 392.35,50.812 405.52,50.812 421.63,50.812 436.02,50.812", + style=invis]; +} diff --git a/data/common_names_model_er.dot b/data/common_names_model_er.dot new file mode 100644 index 00000000..c73900b9 --- /dev/null +++ b/data/common_names_model_er.dot @@ -0,0 +1,372 @@ +digraph CommonName { + graph [bb="0,0,766.39,733", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,688", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="63.694,606", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="63.694,446", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="63.694,392", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="63.694,284", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="63.694,338", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="403.39,606", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="403.39,274", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + TaxonName [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#taxon-name", + label=TaxonName, + pos="403.39,219", + shape=Mrecord, + style=filled, + target=_top, + width=1.1667]; + } + subgraph supporting { + CommonName [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#common-name", + label=CommonName, + pos="238.89,367", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.0848]; + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="238.89,715", + shape=box, + style=filled, + target=_top, + width=2.0972]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="238.89,661", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="238.89,284", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="403.39,164", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="403.39,72", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="553.39,600", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="708.39,600", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="403.39,661", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="403.39,18", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="553.39,45", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="553.39,475", + shape=box, + style=filled, + target=_top, + width=0.79167]; + GeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-area", + label=GeographicArea, + pos="403.39,421", + shape=box, + style=filled, + target=_top, + width=1.4722]; + Language [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#language", + label=Language, + pos="403.39,367", + shape=box, + style=filled, + target=_top, + width=0.97222]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="403.39,475", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="708.39,475", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="553.39,540", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + AlternateValue -> AlternateValueLanguage [pos="e,163.23,703.36 119.97,696.62 130.61,698.28 141.99,700.05 153.31,701.81", + style=dotted]; + Citation -> Source [pos="e,376,606 102.78,606 168.3,606 301.51,606 365.91,606", + style=dotted]; + Citation -> CitationTopic [pos="e,192.62,646.63 96.461,616.09 120.57,623.74 154.31,634.46 182.79,643.5", + style=dotted]; + Tag -> Keyword [pos="e,205.11,284 90.999,284 118.58,284 162.36,284 194.96,284", + style=dotted]; + Source -> SubsequentCitation [pos="e,492.14,602.44 430.51,604.94 444.93,604.36 463.61,603.6 481.99,602.85", + style=invis]; + Source -> OriginCitation [pos="e,511.75,558.12 430.51,594.35 450.36,585.5 478.27,573.05 502.38,562.3", + style=invis]; + CommonName -> AlternateValue [pos="e,88.55,671.32 232.42,389.02 219.81,436.84 185.24,552.34 127.39,633 118.92,644.81 107.44,655.82 96.631,664.84"]; + CommonName -> Citation [pos="e,77.15,588.81 221.86,389.11 189.63,433.59 117.12,533.65 83.047,580.67"]; + CommonName -> DataAttribute [pos="e,98.95,431.49 197.88,386.22 176.96,396.17 150.88,408.42 127.39,419 121.22,421.78 114.68,424.66 108.25,427.47"]; + CommonName -> Identifier [pos="e,104.43,386.26 163.95,377.67 147.34,380.07 130.1,382.56 114.73,384.78"]; + CommonName -> Tag [pos="e,87.188,293.29 200.08,347.1 178.87,336.13 151.83,322.44 127.39,311 117.49,306.36 106.58,301.56 96.68,297.32"]; + CommonName -> Note [pos="e,90.999,342.4 167.87,355.28 144.9,351.43 120.33,347.31 100.92,344.07"]; + CommonName -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,247.44,389.12 e,376.37,593.06 250.94,398.57 267.31,441.87 301.43,520.32 350.39,573 355.44,578.44 361.58,583.35 367.84,587.63", + style=dotted]; + CommonName -> Otu [dir=back, + pos="s,275.55,346.59 284.4,341.53 313.82,324.69 351.4,303.18 376.14,289.02", + style=dashed]; + CommonName -> TaxonName [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,273.92,345.97 e,361.59,237.11 282.07,340.1 293.4,331.65 305.07,321.71 314.39,311 336.06,286.09 326.73,269.04 350.39,246 351.33,\ +245.08 352.31,244.19 353.32,243.32", + style=dotted]; + CommonName -> PinboardItem [pos="e,359.84,182.16 276.16,346.6 289.85,337.32 304.49,325.2 314.39,311 346.23,265.32 314.87,233.88 350.39,191 350.98,190.28 351.61,189.58 \ +352.25,188.89"]; + CommonName -> Role [pos="e,376.24,82.505 277.43,346.92 291.12,337.74 305.44,325.63 314.39,311 363.13,231.35 298,181.3 350.39,104 354.72,97.606 360.8,92.258 \ +367.28,87.881"]; + CommonName -> SubsequentCitation [pos="e,492.02,584.32 248.98,389.1 264.58,424.34 299.72,493.26 350.39,532 371.54,548.17 432.74,567.65 482.28,581.61"]; + CommonName -> VerifierRole [pos="e,361.75,33.87 277.71,347.09 291.45,337.94 305.71,325.8 314.39,311 374.74,208.09 281.73,142.56 350.39,45 351.53,43.378 352.8,41.846 \ +354.17,40.4"]; + CommonName -> Creator [dir=back, + pos="s,281.87,348.17 291.3,344.68 337.11,328.37 404.69,313.33 456.39,340 504.44,364.79 533.69,425.98 545.84,456.73", + style=dashed]; + CommonName -> GeographicArea [dir=back, + pos="s,290.41,383.79 299.96,386.96 316.45,392.44 334.2,398.34 350.21,403.66", + style=dashed]; + CommonName -> Language [dir=back, + pos="s,314.01,367 324.23,367 339.79,367 355.2,367 368.17,367", + style=dashed]; + CommonName -> Project [dir=back, + pos="s,267.67,389.22 275.74,395.45 296.9,411.69 324.52,431.94 350.39,448 358.43,452.99 367.49,457.92 375.76,462.17", + style=dashed]; + CommonName -> Updater [dir=back, + pos="s,277.19,346.77 285.55,340.81 296.47,332.56 307.07,322.54 314.39,311 356.68,244.31 289.15,186.86 350.39,137 386.92,107.25 414.3,\ +115.83 456.39,137 596.45,207.45 678.02,397.14 700.78,456.79", + style=dashed]; + CommonName -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,251.35,389.04 e,505.5,540.12 256.41,397.84 274.96,429.28 308.07,476.9 350.39,502 394.48,528.15 452.69,536.92 495.3,539.58"]; + CitationTopic -> Topic [pos="e,376.11,661 285.15,661 310.68,661 342.14,661 366.04,661", + style=dotted]; + Role -> Verifier [pos="e,524.77,50.038 430.51,67.235 453.88,62.972 488.41,56.671 514.76,51.865", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,650.03,600 614.42,600 622.75,600 631.36,600 639.82,600", + style=dotted]; + VerifierRole -> Verifier [pos="e,524.78,39.964 445.22,25.449 466.99,29.42 493.58,34.271 514.83,38.147", + style=dotted]; + Creator -> Updater [pos="e,678.33,475 582.1,475 606.12,475 641.16,475 668.08,475", + style=invis]; + Project -> Creator [pos="e,524.78,475 431.19,475 454.47,475 488.45,475 514.51,475", + style=invis]; +} diff --git a/data/confidences_model_er.dot b/data/confidences_model_er.dot new file mode 100644 index 00000000..fc956f48 --- /dev/null +++ b/data/confidences_model_er.dot @@ -0,0 +1,266 @@ +digraph Confidence { + graph [bb="0,0,697.9,624", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Confidence [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="58.872,313", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.6353]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="58.872,73", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="270.82,73", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + ControlledVocabularyTerm [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#controlled-vocabulary-term", + label=ControlledVocabularyTerm, + pos="270.82,313", + shape=Mrecord, + style=filled, + target=_top, + width=2.3056]; + } + subgraph supporting { + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="270.82,18", + shape=box, + style=filled, + target=_top, + width=1.2778]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="270.82,258", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="270.82,204", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="484.9,150", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="639.9,150", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="484.9,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="270.82,422", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="484.9,317", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="270.82,606", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="484.9,514", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="270.82,514", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="639.9,514", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="484.9,88", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Confidence -> Citation [pos="e,58.872,91.281 58.872,290.91 58.872,227.75 58.872,164.58 58.872,101.42"]; + Confidence -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,63.581,290.92 e,243.81,74.212 65.63,280.99 75.513,235.41 100.07,152.23 153.74,106 175.97,86.858 208.6,78.784 233.61,75.396", + style=dotted]; + Confidence -> ControlledVocabularyTerm [dir=back, + pos="s,117.8,313 127.89,313 146.97,313 167.92,313 187.73,313", + style=dashed]; + Confidence -> PinboardItem [pos="e,225.29,267.69 106.03,298.62 121.17,294.06 138.13,289.14 153.74,285 173.76,279.69 195.86,274.41 215.36,269.94"]; + Confidence -> Role [pos="e,243.67,206.41 79.267,290.82 96.864,272.09 124.47,245.99 153.74,231 178.77,218.18 209.93,211.37 233.67,207.79"]; + Confidence -> SubsequentCitation [pos="e,423.65,140.27 67.959,290.99 80.79,259.58 109.04,202.84 153.74,177 233.59,130.85 342.95,131.92 413.52,139.16"]; + Confidence -> VerifierRole [pos="e,229.19,417.51 79.267,335.18 96.864,353.91 124.47,380.01 153.74,395 173.92,405.33 198.09,411.77 219.14,415.75"]; + Confidence -> ConfidenceLevel [dir=back, + pos="s,61.209,335.23 62.17,345.47 67.846,400.59 87.348,512.48 153.74,574 170.61,589.63 194.42,597.73 216.08,601.9", + style=dashed]; + Confidence -> Creator [dir=back, + pos="s,61.267,335.18 62.315,345.45 68.156,397.15 87.832,496.86 153.74,541 248.83,604.68 395.59,553.04 456.23,526.89", + style=dashed]; + Confidence -> Project [dir=back, + pos="s,65.993,335.05 69.081,344.65 81.839,382.89 108.58,446.48 153.74,482 179.71,502.42 217.84,509.82 243.23,512.5", + style=dashed]; + Confidence -> Updater [dir=back, + pos="s,68.119,335.18 72.164,344.61 86.509,376.84 113.52,425.34 153.74,449 229.21,493.38 459.91,470.5 545.9,487 567.53,491.15 591.37,498.12 \ +609.5,503.94", + style=dashed]; + Confidence -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,64.575,290.79 e,437.23,93.944 67.093,280.98 78.185,239.76 103.61,169.27 153.74,134 159.3,130.09 334.22,107.18 427.14,95.239"]; + "Objects with Confidences" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with confidence", + label="Objects with Confidences", + pos="270.82,368", + shape=hexagon, + style=filled, + target=_top, + width=3.2521]; + Confidence -> "Objects with Confidences" [dir=back, + pos="s,107.04,327 116.66,329.76 128.87,333.24 141.71,336.82 153.74,340 169.88,344.26 187.34,348.62 203.71,352.58", + style=dashed]; + Citation -> Source [pos="e,243.69,73 97.893,73 136.45,73 195.7,73 233.6,73", + style=dotted]; + Citation -> CitationTopic [pos="e,224.74,27.811 91.455,63.053 109.6,57.47 132.87,50.536 153.74,45 173.59,39.739 195.48,34.501 214.86,30.058", + style=dotted]; + Source -> SubsequentCitation [pos="e,434.21,131.96 297.83,82.442 329.23,93.842 383.01,113.37 424.7,128.51", + style=invis]; + Source -> OriginCitation [pos="e,437.11,84.691 297.83,74.839 329.81,77.101 385.01,81.006 427.01,83.977", + style=invis]; + CitationTopic -> Topic [pos="e,457.75,18 317.06,18 356.03,18 411.55,18 447.66,18", + style=dotted]; + Role -> Verifier [pos="e,468.86,298.94 298.01,206.32 322.42,209.34 359.26,216.11 387.9,231 416.86,246.06 443.99,271.89 461.97,291.32", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,581.54,150 545.93,150 554.26,150 562.87,150 571.33,150", + style=dotted]; + VerifierRole -> Verifier [pos="e,466.54,335.3 312.56,417.15 335.55,413.29 364.3,406.56 387.9,395 414.9,381.78 441.08,359.69 459.26,342.39", + style=dotted]; + Creator -> Updater [pos="e,609.84,514 513.6,514 537.63,514 572.67,514 599.59,514", + style=invis]; + Project -> Creator [pos="e,456.25,514 298.68,514 335.98,514 403.64,514 446.05,514", + style=invis]; +} diff --git a/data/container_items_model_er.dot b/data/container_items_model_er.dot new file mode 100644 index 00000000..9d78de6e --- /dev/null +++ b/data/container_items_model_er.dot @@ -0,0 +1,215 @@ +digraph ContainerItem { + graph [bb="0,0,698.84,544", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + ContainerItem [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#container-item", + label=ContainerItem, + pos="70.832,256", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.9675]; + AncestorHierarchy [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#ancestor-hierarchy", + label=AncestorHierarchy, + pos="309.75,526", + shape=box, + style=filled, + target=_top, + width=1.6528]; + Child [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#child", + label=Child, + pos="309.75,472", + shape=box, + style=filled, + target=_top, + width=0.75]; + DescendantHierarchy [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#descendant-hierarchy", + label=DescendantHierarchy, + pos="309.75,418", + shape=box, + style=filled, + target=_top, + width=1.8611]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="309.75,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="309.75,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + SelfAndAncestor [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#self-and-ancestor", + label=SelfAndAncestor, + pos="540.34,526", + shape=box, + style=filled, + target=_top, + width=1.5278]; + SelfAndDescendant [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#self-and-descendant", + label=SelfAndDescendant, + pos="540.34,418", + shape=box, + style=filled, + target=_top, + width=1.7361]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="309.75,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="540.34,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="540.34,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Parent [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#parent", + label=Parent, + pos="309.75,164", + shape=box, + style=filled, + target=_top, + width=0.75]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="309.75,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="668.84,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + ContainerItem -> AncestorHierarchy [pos="e,250.16,525.55 74.659,278.2 82.047,326.47 106.55,441.31 177.66,499 195.19,513.22 218.28,520.53 240.2,524.14"]; + ContainerItem -> Child [pos="e,282.56,472.77 77.625,278.16 89.316,318.25 119.7,402.58 177.66,445 205.1,465.08 243.99,471.02 272.28,472.43"]; + ContainerItem -> DescendantHierarchy [pos="e,242.71,413.54 82.768,278.19 99.036,308.72 132.6,363.09 177.66,391 194.15,401.21 213.82,407.63 232.84,411.65"]; + ContainerItem -> PinboardItem [pos="e,264.11,359.85 94.199,278.01 114.36,296.58 145.67,322.4 177.66,337 201.52,347.89 229.83,354.43 254.02,358.33"]; + ContainerItem -> Role [pos="e,282.56,304.98 126.92,270.57 143.22,274.74 161.13,279.19 177.66,283 209.65,290.37 246.24,297.83 272.63,303.03"]; + ContainerItem -> VerifierRole [pos="e,267.93,256 141.63,256 178.87,256 223.86,256 257.78,256"]; + ContainerItem -> Creator [dir=back, + pos="s,125.69,241.07 135.59,238.56 149.4,235.11 163.97,231.72 177.66,229 294,205.86 333.43,239.16 441.84,191 474.82,176.35 505.56,147.23 \ +523.39,128.19", + style=dashed]; + ContainerItem -> Parent [dir=back, + pos="s,103.56,234.93 112.33,229.54 131.51,217.93 155.12,204.94 177.66,196 212.83,182.05 255.8,172.97 282.73,168.16", + style=dashed]; + ContainerItem -> Project [dir=back, + pos="s,85.235,233.65 90.848,225.16 109.5,197.63 140.5,158.45 177.66,137 210.36,118.12 254.37,112.33 282.15,110.62", + style=dashed]; + ContainerItem -> Updater [dir=back, + pos="s,77.672,233.95 80.734,224.16 94.143,183.03 123.87,113.15 177.66,83 260.08,36.802 510.18,64.521 602.84,83 614.94,85.414 627.61,90.126 \ +638.52,94.947", + style=dashed]; + "Objects with Container items" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with container item", + label="Objects with Container items", + pos="309.75,18", + shape=hexagon, + style=filled, + target=_top, + width=3.6691]; + ContainerItem -> "Objects with Container items" [dir=back, + pos="s,76.753,233.78 79.273,224.08 91.636,178.36 120.87,94.793 177.66,50 189.53,40.643 203.73,33.969 218.35,29.221", + style=dashed]; + AncestorHierarchy -> SelfAndAncestor [pos="e,485.23,526 369.32,526 401.69,526 441.95,526 475.16,526", + style=dotted]; + DescendantHierarchy -> SelfAndDescendant [pos="e,477.68,418 376.87,418 405.29,418 438.58,418 467.61,418", + style=dotted]; + Role -> Verifier [pos="e,511.65,286.27 336.97,306.9 377.42,302.13 455.21,292.94 501.67,287.45", + style=invis]; + VerifierRole -> Verifier [pos="e,511.68,279.73 351.35,260.8 393.93,265.83 460.29,273.66 501.72,278.56", + style=dotted]; + Creator -> Updater [pos="e,638.82,110 569.1,110 586.6,110 609.48,110 628.8,110", + style=invis]; + Project -> Creator [pos="e,511.77,110 337.42,110 377.95,110 455.24,110 501.55,110", + style=invis]; +} diff --git a/data/containers_model_er.dot b/data/containers_model_er.dot new file mode 100644 index 00000000..cf501093 --- /dev/null +++ b/data/containers_model_er.dot @@ -0,0 +1,259 @@ +digraph Container { + graph [bb="0,0,583.28,582", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,256", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,200", + shape=oval, + style=filled, + target=_top, + width=0.75]; + } + subgraph core { + } + subgraph supporting { + Container [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#container", + label=Container, + pos="175.04,256", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.479]; + CollectionProfile [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collection-profile", + label=CollectionProfile, + pos="329.28,564", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="175.04,198", + shape=box, + style=filled, + target=_top, + width=0.93056]; + Label [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#label", + label=Label, + pos="329.28,510", + shape=box, + style=filled, + target=_top, + width=0.75]; + LoanItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan-item", + label=LoanItem, + pos="329.28,456", + shape=box, + style=filled, + target=_top, + width=0.97222]; + Loan [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan", + label=Loan, + pos="458.78,456", + shape=box, + style=filled, + target=_top, + width=0.75]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="329.28,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="329.28,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="329.28,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="458.78,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="458.78,164", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="329.28,164", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="553.28,164", + shape=box, + style=filled, + target=_top, + width=0.83333]; + ContainerItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#container-item", + label=ContainerItem, + pos="329.28,72", + shape=box, + style=filled, + target=_top, + width=1.3194]; + ParentContainerItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#parent-container-item", + label=ParentContainerItem, + pos="329.28,18", + shape=box, + style=filled, + target=_top, + width=1.8056]; + } + Tag -> Keyword [pos="e,141.12,198.51 69.919,199.6 87.353,199.33 110.72,198.97 130.9,198.66", + style=dotted]; + Container -> Identifier [pos="e,86.149,256 121.52,256 113.16,256 104.51,256 96.156,256"]; + Container -> Tag [pos="e,65.973,209.5 137.04,240.08 117.51,231.68 93.8,221.47 75.191,213.47"]; + Container -> Container [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,150.89,276.99 e,199.18,276.99 151.95,287.06 155.12,292.34 162.81,296 175.04,296 187.26,296 194.95,292.34 198.12,287.06", + style=dotted]; + Container -> CollectionProfile [pos="e,274.8,545.98 176.88,278.03 180.02,329.8 194.79,460.58 264.28,537 265.05,537.85 265.85,538.67 266.68,539.47"]; + Container -> Label [pos="e,302.14,504.12 178.84,278.11 185.59,322.6 206.67,423.72 264.28,483 271.99,490.93 282.39,496.64 292.56,500.71"]; + Container -> LoanItem [pos="e,294.18,443.75 182.68,278.04 194.2,312.97 220.87,381.45 264.28,424 270.21,429.81 277.4,434.76 284.79,438.92"]; + Container -> Loan [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,184.69,278.2 e,431.49,444 188.85,287.62 202.91,318.41 228.36,364.36 264.28,391 312.63,426.86 337.6,408.74 394.28,429 403.39,432.26 \ +413.08,436.15 422.07,439.95", + style=dotted]; + Container -> PinboardItem [pos="e,283.55,347.47 196.08,278.2 212.94,295.89 238.38,320.37 264.28,337 267.56,339.1 271.02,341.1 274.58,343"]; + Container -> Role [pos="e,301.9,300.64 217.24,270.61 240.71,278.94 269.84,289.27 292.37,297.26"]; + Container -> VerifierRole [pos="e,287.33,256 228.43,256 244.24,256 261.56,256 277.27,256"]; + Container -> Creator [dir=back, + pos="s,219.99,242.43 229.81,239.43 241.18,235.96 253.12,232.34 264.28,229 321.95,211.75 337.6,211.26 394.28,191 406.24,186.73 419.18,\ +181.36 430.24,176.55", + style=dashed]; + Container -> Project [dir=back, + pos="s,207.99,238.02 216.68,232.66 220.65,230.15 224.57,227.57 228.28,225 245.16,213.28 246.99,207.1 264.28,196 276.09,188.41 289.95,\ +181.29 301.74,175.7", + style=dashed]; + Container -> Updater [dir=back, + pos="s,211.33,239.36 219.54,233.39 222.71,230.81 225.68,228.01 228.28,225 255.88,193 229.2,160.55 264.28,137 344.75,82.976 467.58,125.76 \ +523.16,150.08", + style=dashed]; + Container -> ContainerItem [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,203.1,236.46 e,281.61,80.626 211.66,230.99 217.87,226.7 223.78,221.78 228.28,216 262.78,171.75 228.21,137.98 264.28,95 266.9,91.878 \ +269.9,89.03 273.14,86.457"]; + Container -> ContainerItem [pos="e,296.83,90.056 220.3,242.28 223.24,239.76 225.95,236.99 228.28,234 262.78,189.75 228.21,155.98 264.28,113 270.56,105.51 279.03,\ +99.606 287.74,94.754", + style=invis]; + Container -> ParentContainerItem [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,212.47,239.87 e,273.8,36.096 220.58,233.56 223.46,230.96 226.08,228.11 228.28,225 275.44,158.43 212.7,108.21 264.28,45 264.88,\ +44.264 265.51,43.548 266.15,42.851", + style=dotted]; + LoanItem -> Loan [pos="e,431.61,456 364.45,456 382.08,456 403.6,456 421.53,456", + style=dotted]; + Role -> Verifier [pos="e,429.94,288.9 356.39,304.47 374.71,300.59 399.5,295.34 419.98,291", + style=invis]; + VerifierRole -> Verifier [pos="e,429.95,277.11 370.97,264.62 386.61,267.93 404.38,271.69 419.75,274.95", + style=dotted]; + Creator -> Updater [pos="e,523.11,164 487.28,164 495.31,164 504.24,164 512.85,164", + style=invis]; + Project -> Creator [pos="e,430.21,164 357.01,164 375.29,164 399.79,164 420.05,164", + style=invis]; +} diff --git a/data/contents_model_er.dot b/data/contents_model_er.dot new file mode 100644 index 00000000..1729faf2 --- /dev/null +++ b/data/contents_model_er.dot @@ -0,0 +1,368 @@ +digraph Content { + graph [bb="0,0,703.29,662", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,589", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="59.145,309", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,364", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="59.145,255", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Attribution [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#attribution", + label=Attribution, + pos="59.145,418", + shape=oval, + style=filled, + target=_top, + width=1.3902]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="346.29,589", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="346.29,203", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + Content [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#content", + label=Content, + pos="208.79,366", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.2641]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="208.79,644", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="208.79,308", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="208.79,254", + shape=box, + style=filled, + target=_top, + width=0.75]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="490.29,18", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="346.29,258", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="490.29,583", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="645.29,583", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="346.29,644", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="346.29,366", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="490.29,312", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="346.29,18", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="490.29,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Language [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#language", + label=Language, + pos="346.29,420", + shape=box, + style=filled, + target=_top, + width=0.97222]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="346.29,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="645.29,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="490.29,523", + shape=box, + style=filled, + target=_top, + width=1.3194]; + PublicContent [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#public-content", + label=PublicContent, + pos="346.29,312", + shape=box, + style=filled, + target=_top, + width=1.3056]; + } + Citation -> Source [pos="e,319.21,589 98.305,589 153.51,589 254.93,589 309.04,589", + style=dotted]; + Citation -> CitationTopic [pos="e,162.53,627.14 90.023,600.13 108.07,606.85 131.63,615.63 152.93,623.56", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,154.06,308.36 110.13,308.66 120.96,308.59 132.55,308.51 143.82,308.43", + style=dotted]; + Depiction -> Image [pos="e,181.7,254.18 104.84,254.7 126.24,254.55 151.52,254.38 171.67,254.24", + style=dotted]; + Source -> SubsequentCitation [pos="e,429.24,585.54 373.33,587.9 386.33,587.35 402.74,586.66 419.09,585.97", + style=invis]; + Source -> OriginCitation [pos="e,450.55,541 373.33,576.89 392.33,568.06 418.63,555.84 441.38,545.27", + style=invis]; + Content -> Citation [pos="e,71.485,571.87 193.2,388.04 165.69,429.59 106.29,519.3 77.074,563.43"]; + Content -> Confidence [pos="e,94.017,322.08 171.75,352.09 151.12,344.12 125.08,334.07 103.35,325.68"]; + Content -> DataAttribute [pos="e,118.5,364.79 163.07,365.39 152.21,365.25 140.36,365.09 128.68,364.93"]; + Content -> Depiction [pos="e,93.667,266.85 175.61,350.49 168.16,346.07 160.58,340.85 154.29,335 133.45,315.6 139.99,300.44 118.29,282 113.67,278.08 108.39,\ +274.6 102.93,271.56"]; + Content -> Attribution [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,170.39,379.17 e,95.509,405.54 160.78,382.56 142.97,388.83 122.74,395.95 105.12,402.16"]; + Content -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,216.19,388.25 e,319.01,573.6 219.22,397.78 232.29,437.92 258.96,507.57 299.29,556 302.66,560.05 306.64,563.85 310.82,567.33", + style=dotted]; + Content -> Otu [dir=back, + pos="s,243.69,351.25 251.98,345.64 256.16,342.48 260.04,338.94 263.29,335 294.4,297.26 268.59,269.08 299.29,231 304.57,224.45 311.82,\ +219.04 319.01,214.79", + style=dashed]; + Content -> PinboardItem [pos="e,444.43,30.673 244.9,351.78 251.98,347.39 258.66,341.85 263.29,335 326.59,241.23 227.14,170.15 299.29,83 308.29,72.129 381.92,49.006 \ +434.82,33.479"]; + Content -> Role [pos="e,319.16,270.81 241.86,350.36 249.31,345.95 256.92,340.77 263.29,335 283.59,316.62 279.05,303.44 299.29,285 302.69,281.9 306.51,\ +278.99 310.45,276.3"]; + Content -> SubsequentCitation [pos="e,428.89,570.85 218.02,388.05 230.81,419.51 258.34,477.2 299.29,511 333.63,539.34 380.29,557.24 418.78,568.1"]; + Content -> Topic [dir=back, + pos="s,212.55,388.3 214.12,398.51 222.43,450.02 244.91,551.28 299.29,617 304.6,623.42 311.87,628.66 319.05,632.76", + style=dashed]; + Content -> VerifierRole [pos="e,304.71,366 254.53,366 267.31,366 281.32,366 294.43,366"]; + Content -> Version [pos="e,317.11,32.124 244.98,351.83 252.06,347.44 258.72,341.89 263.29,335 333.86,228.6 233.18,159.22 299.29,50 301.86,45.75 305.24,41.923 \ +309,38.518"]; + Content -> Creator [dir=back, + pos="s,244.5,351.5 252.9,345.62 256.81,342.49 260.38,338.96 263.29,335 306.44,276.25 250.61,229.25 299.29,175 310.46,162.54 411.75,132.21 \ +461.7,117.82", + style=dashed]; + Content -> Language [dir=back, + pos="s,245.39,380.19 254.7,383.9 272.99,391.19 293.8,399.48 310.86,406.28", + style=dashed]; + Content -> Project [dir=back, + pos="s,244.69,351.63 253.05,345.73 256.93,342.57 260.46,339.01 263.29,335 313.63,263.73 251.93,215.29 299.29,142 304.04,134.65 311.14,\ +128.51 318.34,123.64", + style=dashed]; + Content -> Updater [dir=back, + pos="s,226.13,388.04 232.64,395.75 248.92,414.37 272.6,436.71 299.29,447 338.27,462.02 353.38,459.34 393.29,447 474.56,421.88 497.9,405.22 \ +551.29,339 605.29,272.02 631.75,169.49 640.69,128.18", + style=dashed]; + Content -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,221.06,388.21 e,442.61,521.12 226.07,397 241.45,423.17 266.95,459.55 299.29,480 339.39,505.36 392.6,515.84 432.51,520.13"]; + Content -> PublicContent [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,245.39,351.81 e,299.96,330.06 254.69,348.11 266.17,343.53 278.64,338.56 290.56,333.81"]; + CitationTopic -> Topic [pos="e,318.93,644 254.91,644 272.34,644 292.03,644 308.57,644", + style=dotted]; + Role -> Verifier [pos="e,461.47,301.42 373.33,267.9 395.39,276.29 427.27,288.42 452.03,297.83", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,586.93,583 551.32,583 559.65,583 568.26,583 576.72,583", + style=dotted]; + VerifierRole -> Verifier [pos="e,461.64,322.52 387.98,350.53 408.17,342.85 432.39,333.64 452.08,326.15", + style=dotted]; + Version -> PinboardItem [pos="e,444.52,18 375.34,18 392.22,18 414.27,18 434.47,18", + style=invis]; + Creator -> Updater [pos="e,615.23,110 519,110 543.02,110 578.06,110 604.98,110", + style=invis]; + Project -> Creator [pos="e,461.73,110 374,110 395.93,110 427.25,110 451.72,110", + style=invis]; +} diff --git a/data/controlled_vocabulary_terms_model_er.dot b/data/controlled_vocabulary_terms_model_er.dot new file mode 100644 index 00000000..8bedd53e --- /dev/null +++ b/data/controlled_vocabulary_terms_model_er.dot @@ -0,0 +1,205 @@ +digraph ControlledVocabularyTerm { + graph [bb="0,0,933.95,424.35", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph supporting { + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="284.17,272.35", + shape=box, + style=filled, + target=_top, + width=2.0972]; + ObservationMatrixRowItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-row-item", + label=ObservationMatrixRowItem, + pos="526.45,398.35", + shape=box, + style=filled, + target=_top, + width=2.375]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="742.95,406.35", + shape=box, + style=filled, + target=_top, + width=1.6667]; + ObservationMatrixColumnItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-column-item", + label=ObservationMatrixColumnItem, + pos="742.95,352.35", + shape=box, + style=filled, + target=_top, + width=2.6389]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="742.95,268.35", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="526.45,214.35", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="526.45,160.35", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="742.95,187.35", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="526.45,268.35", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="742.95,68.351", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="526.45,68.351", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="903.95,68.351", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,243.35", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + } + subgraph core { + ControlledVocabularyTerm [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#controlled-vocabulary-term", + label=ControlledVocabularyTerm, + pos="284.17,214.35", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.355]; + } + AlternateValue -> AlternateValueLanguage [pos="e,208.51,262.44 121.53,250.89 144.96,254.01 172.62,257.68 198.37,261.09", + style=dotted]; + ControlledVocabularyTerm -> AlternateValue [pos="e,121.53,235.81 180.91,227.92 164.15,230.15 147.18,232.4 131.57,234.47"]; + ControlledVocabularyTerm -> ObservationMatrixRowItem [pos="e,458.9,380.23 380.67,229 389.6,233.21 397.91,238.56 404.95,245.35 445.33,284.31 402.74,325.26 440.95,366.35 443.83,369.45 447.05,\ +372.26 450.49,374.79"]; + ControlledVocabularyTerm -> ObservationMatrixColumnItem [pos="e,647.89,364.36 377.79,229.43 387.58,233.54 396.88,238.75 404.95,245.35 433.26,268.51 411.05,298.29 440.95,319.35 497.44,359.14 \ +575.26,366.77 637.63,364.77"]; + ControlledVocabularyTerm -> PinboardItem [pos="e,697.78,286.39 374.57,230.02 385.31,234.02 395.73,239.04 404.95,245.35 427.55,260.81 416.58,282.87 440.95,295.35 519.63,335.65 \ +625.12,311.21 688.05,289.79"]; + ControlledVocabularyTerm -> Role [pos="e,499.18,214.35 404.96,214.35 435.6,214.35 466.28,214.35 489.01,214.35"]; + ControlledVocabularyTerm -> VerifierRole [pos="e,484.72,169.5 362.85,196.89 399.47,188.66 442.13,179.07 474.57,171.79"]; + ControlledVocabularyTerm -> Version [pos="e,497.35,262.04 362.85,231.81 404.6,241.19 454.2,252.34 487.55,259.83"]; + ControlledVocabularyTerm -> Creator [dir=back, + pos="s,320.74,192.35 329.41,187.29 359.82,169.71 401.67,147.51 440.95,133.35 453.95,128.66 642.28,89.151 714.26,74.122", + style=dashed]; + ControlledVocabularyTerm -> Project [dir=back, + pos="s,310.72,192.27 318.46,185.85 348.85,160.88 395.78,124.84 440.95,100.35 459.43,90.33 481.71,82.033 498.76,76.399", + style=dashed]; + ControlledVocabularyTerm -> Updater [dir=back, + pos="s,296.73,192.32 301.8,183.48 326.08,142.09 375.56,70.464 440.95,41.351 602.14,-30.413 664.91,6.8415 837.95,41.351 850.05,43.764 \ +862.72,48.476 873.63,53.297", + style=dashed]; + ObservationMatrixRowItem -> ObservationMatrix [pos="e,682.88,404.15 612.22,401.51 632.28,402.26 653.42,403.05 672.69,403.77", + style=dotted]; + ObservationMatrixRowItem -> ObservationMatrixColumnItem [pos="e,657.68,370.42 611.61,380.3 623.44,377.77 635.66,375.14 647.66,372.57", + style=invis]; + Role -> Verifier [pos="e,714.41,190.82 553.75,211.04 591.47,206.29 661.14,197.52 704.31,192.09", + style=invis]; + VerifierRole -> Verifier [pos="e,714.14,183.85 568.05,165.46 607.12,170.38 665.76,177.76 703.95,182.57", + style=dotted]; + Version -> PinboardItem [pos="e,697.08,268.35 555.49,268.35 588.75,268.35 644.96,268.35 686.99,268.35", + style=invis]; + Creator -> Updater [pos="e,873.69,68.351 771.64,68.351 797.08,68.351 835.05,68.351 863.62,68.351", + style=invis]; + Project -> Creator [pos="e,714.2,68.351 554.18,68.351 591.95,68.351 661.1,68.351 704.12,68.351", + style=invis]; +} diff --git a/data/data_attributes_model_er.dot b/data/data_attributes_model_er.dot new file mode 100644 index 00000000..75da13e5 --- /dev/null +++ b/data/data_attributes_model_er.dot @@ -0,0 +1,253 @@ +digraph DataAttribute { + graph [bb="0,0,735.7,568", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + DataAttribute [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="68.018,285", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.8894]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="68.018,73", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="298.87,73", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="298.87,18", + shape=box, + style=filled, + target=_top, + width=1.2778]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="298.87,312", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="298.87,258", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="522.7,181", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="677.7,181", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="522.7,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="298.87,420", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="522.7,339", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="522.7,550", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Predicate [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#predicate", + label=Predicate, + pos="298.87,166", + shape=box, + style=filled, + target=_top, + width=0.93056]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="298.87,550", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="677.7,550", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="522.7,96", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + DataAttribute -> Citation [pos="e,68.018,91.219 68.018,262.67 68.018,208.87 68.018,155.07 68.018,101.26"]; + DataAttribute -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,75.527,262.79 e,271.69,74.051 78.752,253.17 92.765,212.78 122.53,143.83 172.04,106 197.86,86.267 234.41,78.291 261.47,75.09", + style=dotted]; + DataAttribute -> PinboardItem [pos="e,253.2,306.73 136.13,292.92 170.17,296.93 210.99,301.75 243.1,305.54"]; + DataAttribute -> Role [pos="e,271.71,261.09 136.13,277.08 177.07,272.25 227.82,266.26 261.43,262.3"]; + DataAttribute -> SubsequentCitation [pos="e,461.41,188.49 101.17,264.5 120.88,252.87 147.06,239.07 172.04,231 198.01,222.61 356.93,201.71 451.35,189.76"]; + DataAttribute -> VerifierRole [pos="e,257.17,417.41 84.022,307.42 101.94,332.35 134.27,371.87 172.04,393 194.9,405.79 223.21,412.53 247.19,416.08"]; + DataAttribute -> Creator [dir=back, + pos="s,73.867,307.07 76.46,316.99 88.516,361.19 116.75,440 172.04,480 264.68,547.03 314.13,497.93 425.7,523 449.01,528.24 475.09,535.67 \ +494.17,541.42", + style=dashed]; + DataAttribute -> Predicate [dir=back, + pos="s,89.404,262.81 96.686,255.52 116.08,236.5 143.55,212.65 172.04,198 201.6,182.79 238.87,174.48 265.15,170.18", + style=dashed]; + DataAttribute -> Project [dir=back, + pos="s,72.247,307.11 74.071,317.14 83.748,367.67 109.75,465.35 172.04,518 200.1,541.72 243.44,548.21 271.22,549.79", + style=dashed]; + DataAttribute -> Updater [dir=back, + pos="s,76.182,307.25 79.712,316.77 94.233,354.58 124.03,416.44 172.04,447 267.94,508.05 314.22,457.69 425.7,480 497.06,494.28 513.64,\ +503.3 583.7,523 605.06,529.01 629.12,536 647.42,541.36", + style=dashed]; + DataAttribute -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,77.604,263 e,474.93,99.636 81.85,253.42 97.613,219.05 127.82,165.46 172.04,139 196.6,124.3 372.27,108.1 464.88,100.46"]; + "Objects with Data attributes" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with data attribute", + label="Objects with Data attributes", + pos="298.87,366", + shape=hexagon, + style=filled, + target=_top, + width=3.5231]; + DataAttribute -> "Objects with Data attributes" [dir=back, + pos="s,101.84,305.14 110.76,310.19 129.05,320.34 151.08,331.42 172.04,339 186.95,344.4 203.28,348.88 219.08,352.53", + style=dashed]; + Citation -> Source [pos="e,271.85,73 107.06,73 150.07,73 219.55,73 261.74,73", + style=dotted]; + Citation -> CitationTopic [pos="e,252.6,27.097 101.84,63.593 122.02,57.931 148.44,50.733 172.04,45 195.1,39.396 220.69,33.793 242.74,29.156", + style=dotted]; + Source -> SubsequentCitation [pos="e,484.73,163 326.19,85.813 363.01,103.74 430.48,136.59 475.71,158.61", + style=invis]; + Source -> OriginCitation [pos="e,474.91,91.148 326.19,75.729 360.15,79.25 420.17,85.474 464.78,90.099", + style=invis]; + CitationTopic -> Topic [pos="e,495.67,18 345.03,18 386.48,18 447.12,18 485.48,18", + style=dotted]; + Role -> Verifier [pos="e,494.64,320.86 326.06,261.27 351.98,265.05 392.48,272.42 425.7,285 446.57,292.9 468.35,304.81 485.88,315.44", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,619.35,181 583.73,181 592.06,181 600.67,181 609.13,181", + style=dotted]; + VerifierRole -> Verifier [pos="e,494.64,357.14 340.42,414.48 365.52,410.29 398.12,403.44 425.7,393 446.57,385.1 468.35,373.19 485.88,362.56", + style=dotted]; + Creator -> Updater [pos="e,647.64,550 551.41,550 575.43,550 610.47,550 637.39,550", + style=invis]; + Project -> Creator [pos="e,494.15,550 326.63,550 365.89,550 439.27,550 483.98,550", + style=invis]; +} diff --git a/data/dataset_record_fields_model_er.dot b/data/dataset_record_fields_model_er.dot new file mode 100644 index 00000000..daf9e886 --- /dev/null +++ b/data/dataset_record_fields_model_er.dot @@ -0,0 +1,121 @@ +digraph DatasetRecordField { + graph [bb="0,0,407.47,306", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + DatasetRecordField [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#dataset-record-field", + label=DatasetRecordField, + pos="91.233,153", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.5343]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="266.47,288", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="266.47,234", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="266.47,180", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="378.97,207", + shape=box, + style=filled, + target=_top, + width=0.79167]; + DatasetRecord [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#dataset-record", + label=DatasetRecord, + pos="266.47,126", + shape=box, + style=filled, + target=_top, + width=1.3333]; + ImportDataset [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#import-dataset", + label=ImportDataset, + pos="266.47,72", + shape=box, + style=filled, + target=_top, + width=1.3194]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="266.47,18", + shape=box, + style=filled, + target=_top, + width=0.76389]; + } + DatasetRecordField -> PinboardItem [pos="e,232.11,269.87 115.35,175.09 139.88,197.97 180.29,234.06 218.47,261 220.08,262.14 221.75,263.27 223.44,264.4"]; + DatasetRecordField -> Role [pos="e,239.29,221.76 135.95,173.44 165.09,187.06 202.89,204.74 230.13,217.48"]; + DatasetRecordField -> VerifierRole [pos="e,224.69,173.65 173.52,165.67 187.54,167.85 201.73,170.07 214.64,172.08"]; + DatasetRecordField -> DatasetRecord [dir=back, + pos="s,173.52,140.33 183.57,138.76 195.53,136.9 207.36,135.06 218.16,133.37", + style=dashed]; + DatasetRecordField -> ImportDataset [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,135.95,132.56 e,226.78,90.087 145.04,128.31 168.1,117.53 194.95,104.97 217.44,94.457"]; + DatasetRecordField -> Project [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,115.35,130.91 e,238.58,32.298 122.98,123.85 147.75,101.07 184.02,69.31 218.47,45 222.11,42.428 226.02,39.882 229.96,37.442"]; + Role -> Verifier [pos="e,350.43,213.73 293.65,227.6 307.68,224.17 325.21,219.89 340.64,216.12", + style=invis]; + VerifierRole -> Verifier [pos="e,350.22,200.22 307.98,189.9 318.52,192.47 329.82,195.24 340.21,197.77", + style=dotted]; +} diff --git a/data/dataset_records_model_er.dot b/data/dataset_records_model_er.dot new file mode 100644 index 00000000..a71614e7 --- /dev/null +++ b/data/dataset_records_model_er.dot @@ -0,0 +1,138 @@ +digraph DatasetRecord { + graph [bb="0,0,463.07,319.15", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + DatasetRecord [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#dataset-record", + label=DatasetRecord, + pos="71.535,147.15", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.9871]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="226.57,301.15", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="226.57,247.15", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="226.57,193.15", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="338.57,220.15", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="338.57,47.155", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ImportDataset [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#import-dataset", + label=ImportDataset, + pos="226.57,101.15", + shape=box, + style=filled, + target=_top, + width=1.3194]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="226.57,47.155", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="433.07,47.155", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + DatasetRecord -> PinboardItem [pos="e,191.12,283 87.516,169.38 106.53,196.45 141.41,242.47 179.07,274.15 180.23,275.13 181.43,276.09 182.66,277.04"]; + DatasetRecord -> Role [pos="e,199.3,232.36 102.44,168.53 123.58,183.42 152.72,203.51 179.07,220.15 182.71,222.45 186.55,224.8 190.4,227.11"]; + DatasetRecord -> VerifierRole [pos="e,184.94,180.94 124.35,162.73 140.72,167.65 158.78,173.08 175.06,177.97"]; + DatasetRecord -> Creator [dir=back, + pos="s,143.22,153.82 153.4,153.87 192.05,153.62 237.69,148.03 274.07,128.15 299.95,114.02 318.85,84.457 329.01,65.225", + style=dashed]; + DatasetRecord -> ImportDataset [dir=back, + pos="s,124.35,131.58 134.05,128.67 149.02,124.16 164.8,119.42 178.95,115.17", + style=dashed]; + DatasetRecord -> Project [dir=back, + pos="s,102.44,125.78 110.72,119.97 130.82,105.92 156.02,88.718 179.07,74.155 185.38,70.166 192.29,66.034 198.81,62.237", + style=dashed]; + DatasetRecord -> Updater [dir=back, + pos="s,83.249,125 88.21,115.94 105.65,85.097 137,39.777 179.07,20.155 254.8,-15.163 285.13,3.8128 367.07,20.155 379.17,22.568 391.84,\ +27.28 402.75,32.101", + style=dashed]; + Role -> Verifier [pos="e,309.77,226.98 253.64,240.76 267.37,237.39 284.46,233.19 299.64,229.47", + style=invis]; + VerifierRole -> Verifier [pos="e,309.77,213.33 268.22,203.13 278.59,205.68 289.7,208.4 299.91,210.91", + style=dotted]; + Creator -> Updater [pos="e,402.9,47.155 367.07,47.155 375.1,47.155 384.03,47.155 392.64,47.155", + style=invis]; + Project -> Creator [pos="e,310.04,47.155 254.2,47.155 267.94,47.155 284.94,47.155 299.99,47.155", + style=invis]; +} diff --git a/data/depictions_model_er.dot b/data/depictions_model_er.dot new file mode 100644 index 00000000..294eab28 --- /dev/null +++ b/data/depictions_model_er.dot @@ -0,0 +1,223 @@ +digraph Depiction { + graph [bb="0,0,589.72,544", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Depiction [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="83.428,272", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.479]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="83.428,160", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="83.428,214", + shape=oval, + style=filled, + target=_top, + width=0.75]; + } + subgraph core { + } + subgraph supporting { + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="289.65,18", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="289.65,526", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="289.65,472", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="289.65,418", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="465.22,445", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="465.22,272", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="289.65,326", + shape=box, + style=filled, + target=_top, + width=0.75]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="289.65,272", + shape=box, + style=filled, + target=_top, + width=0.76389]; + SledImage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#sled-image", + label=SledImage, + pos="289.65,218", + shape=box, + style=filled, + target=_top, + width=1.0417]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="559.72,272", + shape=box, + style=filled, + target=_top, + width=0.83333]; + SqedDepiction [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#sqed-depiction", + label=SqedDepiction, + pos="289.65,126", + shape=box, + style=filled, + target=_top, + width=1.3472]; + } + Depiction -> DataAttribute [pos="e,37.409,171.33 38.294,258.58 25.746,252.55 13.572,243.99 6.2837,232 -2.0278,218.33 -2.128,209.61 6.2837,196 11.587,187.42 19.546,\ +180.86 28.367,175.84"]; + Depiction -> Tag [pos="e,83.428,232.12 83.428,249.88 83.428,247.38 83.428,244.89 83.428,242.39"]; + Depiction -> PinboardItem [pos="e,243.9,524.29 87.01,294.24 93.529,339.88 114.95,444.41 178.57,499 193.9,512.15 214.62,519.09 233.95,522.7"]; + Depiction -> Role [pos="e,262.51,471.43 90.134,294.13 100.89,331.25 127.79,405.87 178.57,445 199.66,461.25 229.2,467.86 252.37,470.49"]; + Depiction -> VerifierRole [pos="e,248,412.18 97.1,294.29 112.91,320.12 142.33,362.17 178.57,386 196.35,397.69 218.49,405.2 238.23,409.98"]; + Depiction -> Creator [dir=back, + pos="s,101.87,294.07 108.78,301.78 126.05,320.41 150.98,342.76 178.57,353 271.14,387.34 311.94,396.21 400.72,353 427.39,340.02 446.17,\ +309.81 456.08,290.18", + style=dashed]; + Depiction -> Image [dir=back, + pos="s,129.34,285.27 139.04,288.05 151.98,291.74 165.74,295.59 178.57,299 207.1,306.59 239.98,314.55 262.33,319.85", + style=dashed]; + Depiction -> Project [dir=back, + pos="s,136.75,272 146.87,272 185.46,272 233.01,272 262.06,272", + style=dashed]; + Depiction -> SledImage [dir=back, + pos="s,129.34,258.73 139.04,255.95 151.98,252.26 165.74,248.41 178.57,245 202.91,238.53 230.43,231.78 251.86,226.65", + style=dashed]; + Depiction -> Updater [dir=back, + pos="s,120.84,255.89 129.71,250.58 134.25,247.64 138.64,244.44 142.57,241 163.19,222.98 154.2,203.48 178.57,191 266.45,145.99 304.74,\ +167.83 400.72,191 450.91,203.12 503.06,234.05 533.12,254", + style=dashed]; + Depiction -> SqedDepiction [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,122.71,256.36 e,240.88,130.66 131.35,250.79 135.43,247.85 139.26,244.59 142.57,241 169.84,211.45 148.4,184.58 178.57,158 193.13,\ +145.18 212.56,137.48 231.04,132.86"]; + "Objects with Depictions" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with depiction", + label="Objects with Depictions", + pos="289.65,72", + shape=hexagon, + style=filled, + target=_top, + width=3.0853]; + Depiction -> "Objects with Depictions" [dir=back, + pos="s,123.79,256.85 132.14,251.19 136.03,248.18 139.6,244.8 142.57,241 182.73,189.75 132.36,144.86 178.57,99 186.53,91.1 196.41,85.38 \ +206.95,81.26", + style=dashed]; + Tag -> Keyword [pos="e,255.93,17.492 109.01,207.94 120.74,203.86 134.05,197.28 142.57,187 184.13,136.88 132.36,90.859 178.57,45 196.14,27.573 223,20.752 \ +245.79,18.322", + style=dotted]; + Role -> Verifier [pos="e,436.46,449.32 317.01,467.9 346.1,463.37 393.19,456.05 426.25,450.91", + style=invis]; + VerifierRole -> Verifier [pos="e,436.5,440.69 331.34,424.33 360.04,428.79 398.21,434.73 426.28,439.1", + style=dotted]; + Creator -> Updater [pos="e,529.55,272 493.72,272 501.75,272 510.68,272 519.29,272", + style=invis]; + Project -> Creator [pos="e,436.59,272 317.39,272 346.56,272 393.49,272 426.43,272", + style=invis]; +} diff --git a/data/derived_collection_objects_model_er.dot b/data/derived_collection_objects_model_er.dot new file mode 100644 index 00000000..24d8185c --- /dev/null +++ b/data/derived_collection_objects_model_er.dot @@ -0,0 +1,153 @@ +digraph DerivedCollectionObject { + graph [bb="0,0,621.86,381.19", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="345.36,362.69", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + } + subgraph supporting { + DerivedCollectionObject [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#derived-collection-object", + label=DerivedCollectionObject, + pos="110.93,172.69", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.0814]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="345.36,307.69", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="345.36,253.69", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="345.36,199.69", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="497.36,226.69", + shape=box, + style=filled, + target=_top, + width=0.79167]; + CollectionObjectObservation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collection-object-observation", + label=CollectionObjectObservation, + pos="345.36,145.69", + shape=box, + style=filled, + target=_top, + width=2.4306]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="497.36,53.689", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="345.36,53.689", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="591.86,53.689", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + DerivedCollectionObject -> CollectionObject [dir=back, + pos="s,126.2,194.93 132.16,203.64 157.44,239.99 203.99,299.75 257.86,334.69 267.79,341.13 279.33,346.2 290.68,350.15", + style=dashed]; + DerivedCollectionObject -> PinboardItem [pos="e,299.68,296.85 136.31,194.78 163.99,218.85 211.35,257.07 257.86,280.69 267.85,285.76 278.97,290.1 289.83,293.72"]; + DerivedCollectionObject -> Role [pos="e,318.13,245.89 165.06,193.1 192.63,203.5 226.92,216.14 257.86,226.69 274.35,232.31 292.76,238.12 308.35,242.9"]; + DerivedCollectionObject -> VerifierRole [pos="e,303.65,194.96 215.23,184.69 242.36,187.84 270.43,191.1 293.45,193.78"]; + DerivedCollectionObject -> CollectionObjectObservation [dir=back, + pos="s,215.23,160.69 225.24,159.53 236.16,158.26 247.11,156.99 257.71,155.76", + style=dashed]; + DerivedCollectionObject -> Creator [dir=back, + pos="s,163.01,151.78 172.36,148.16 198.39,138.16 229.34,127.02 257.86,118.69 334.26,96.379 357.02,104.81 432.86,80.689 444.85,76.877 \ +457.68,71.65 468.66,66.81", + style=dashed]; + DerivedCollectionObject -> Project [dir=back, + pos="s,144.87,150.67 153.39,145.19 182,126.91 221.33,103.16 257.86,85.689 277.36,76.366 300.35,67.977 317.73,62.129", + style=dashed]; + DerivedCollectionObject -> Updater [dir=back, + pos="s,125.61,150.53 131.38,141.99 155.9,106.49 201.7,49.959 257.86,26.689 367.9,-18.905 409.05,3.3937 525.86,26.689 537.97,29.103 550.64,\ +33.815 561.54,38.636", + style=dashed]; + Role -> Verifier [pos="e,468.76,231.66 372.49,248.99 396.38,244.69 431.99,238.28 458.91,233.43", + style=invis]; + VerifierRole -> Verifier [pos="e,468.55,221.68 386.95,207 409.27,211.01 436.79,215.97 458.64,219.9", + style=dotted]; + Creator -> Updater [pos="e,561.7,53.689 525.86,53.689 533.89,53.689 542.82,53.689 551.43,53.689", + style=invis]; + Project -> Creator [pos="e,468.76,53.689 373.18,53.689 396.98,53.689 432.02,53.689 458.65,53.689", + style=invis]; +} diff --git a/data/descriptors_model_er.dot b/data/descriptors_model_er.dot new file mode 100644 index 00000000..a4b7b2f8 --- /dev/null +++ b/data/descriptors_model_er.dot @@ -0,0 +1,457 @@ +digraph Descriptor { + graph [bb="0,0,850.39,732", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph core { + Descriptor [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="238.89,347", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.5572]; + Observation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#observation", + label=Observation, + pos="445.39,605", + shape=Mrecord, + style=filled, + target=_top, + width=1.1528]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="637.39,605", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="445.39,495", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="238.89,714", + shape=box, + style=filled, + target=_top, + width=2.0972]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="238.89,660", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="238.89,289", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Documentation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="445.39,310", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="637.39,310", + shape=box, + style=filled, + target=_top, + width=1.0278]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="238.89,235", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="238.89,181", + shape=box, + style=filled, + target=_top, + width=0.93056]; + ObservationMatrixColumn [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-column", + label=ObservationMatrixColumn, + pos="445.39,550", + shape=box, + style=filled, + target=_top, + width=2.2778]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="637.39,550", + shape=box, + style=filled, + target=_top, + width=1.6667]; + ObservationMatrixColumnItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-column-item", + label=ObservationMatrixColumnItem, + pos="445.39,18", + shape=box, + style=filled, + target=_top, + width=2.6389]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="445.39,440", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="445.39,164", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="637.39,475", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="792.39,475", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="445.39,660", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="445.39,218", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="637.39,191", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="637.39,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="445.39,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="792.39,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="637.39,402", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,641", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="63.694,505", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="63.694,289", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="63.694,451", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="63.694,235", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="63.694,397", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="63.694,181", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="63.694,343", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + AlternateValue -> AlternateValueLanguage [pos="e,186.36,696 96.379,656.64 115.58,665.9 140.68,677.61 163.39,687 167.77,688.81 172.32,690.62 176.91,692.4", + style=dotted]; + Citation -> Source [pos="e,418.3,495.69 102.84,504 176.18,502.06 335.95,497.86 407.93,495.96", + style=dotted]; + Citation -> CitationTopic [pos="e,217.71,641.94 82.577,521 112.79,548.04 174.14,602.95 210.03,635.07", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,184.28,289 114.79,289 133.34,289 154.62,289 174.21,289", + style=dotted]; + Depiction -> Image [pos="e,211.74,235 109.3,235 137.96,235 174.73,235 201.61,235", + style=dotted]; + Tag -> Keyword [pos="e,205.11,181 90.999,181 118.58,181 162.36,181 194.96,181", + style=dotted]; + Descriptor -> AlternateValue [pos="e,75.268,623.05 224.92,369.01 193.7,422 114.43,556.58 80.497,614.17"]; + Descriptor -> Citation [pos="e,96.202,494.75 223.94,369.22 205.07,397.72 168.96,447.15 127.39,478 120.76,482.92 113.09,487.16 105.45,490.73"]; + Descriptor -> Confidence [pos="e,101.42,301.3 194.48,332.46 169.05,323.95 136.94,313.2 111.03,304.52"]; + Descriptor -> DataAttribute [pos="e,100.77,436.94 211.63,367.57 189.84,384.07 157.63,407.18 127.39,424 121.88,427.06 115.96,430.02 110.03,432.78"]; + Descriptor -> Depiction [pos="e,99.906,246 192.55,333.12 182.3,328.68 171.93,323.03 163.39,316 141.12,297.67 149.55,280.47 127.39,262 122.01,257.51 115.77,253.66 \ +109.35,250.39"]; + Descriptor -> Identifier [pos="e,99.743,386.88 191.39,360.42 165.95,367.77 134.57,376.83 109.41,384.09"]; + Descriptor -> Tag [pos="e,89.582,186.5 189.94,334.14 180.15,329.7 170.64,323.8 163.39,316 128.93,278.95 161.62,245.26 127.39,208 119.86,199.8 109.41,193.98 \ +99.195,189.9"]; + Descriptor -> Note [pos="e,91.756,343.62 182.73,345.73 156.39,345.12 125.56,344.41 102.02,343.86"]; + Descriptor -> Observation [pos="e,403.81,600.44 244.29,369.34 254.5,415.23 284.16,520.51 350.39,577 362.61,587.42 378.59,593.97 393.9,598.08"]; + Descriptor -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,254.76,369.42 e,418.1,491.07 260.8,377.81 280.79,405.02 313.32,443.86 350.39,467 367.86,477.9 389.8,484.76 408.09,488.95", + style=dotted]; + Descriptor -> Documentation [pos="e,394.81,318.97 294.96,337.04 322.67,332.02 356.3,325.94 384.64,320.81"]; + Descriptor -> ObservationMatrixColumn [pos="e,364.87,531.9 247.66,369.03 262,406.42 296.18,482.23 350.39,523 352.21,524.37 354.09,525.67 356.04,526.9"]; + Descriptor -> ObservationMatrixColumnItem [pos="e,366.35,36.252 289.73,334.73 299.18,330.28 308.07,324.22 314.39,316 387.11,221.43 274.58,142.12 350.39,50 352.7,47.186 355.28,44.618 \ +358.05,42.276"]; + Descriptor -> PinboardItem [pos="e,399.78,426.6 270.58,365.86 292.35,378.76 322.53,395.68 350.39,408 362.95,413.55 376.8,418.75 389.92,423.28"]; + Descriptor -> Role [pos="e,418.23,164.84 288.46,334.18 298.1,329.75 307.39,323.84 314.39,316 352.88,272.86 309.49,231.87 350.39,191 365.56,175.84 388.64,\ +169.07 408.13,166.1"]; + Descriptor -> SubsequentCitation [pos="e,614.15,456.92 283.66,361.37 303.83,367.66 328.17,374.77 350.39,380 433.82,399.63 460.56,381.79 540.39,413 563.89,422.19 587.74,\ +437.55 605.78,450.68"]; + Descriptor -> VerifierRole [pos="e,403.59,224.93 286.08,333.48 296.18,329.04 306.27,323.31 314.39,316 339.22,293.65 324.83,271.52 350.39,250 362.72,239.62 378.59,\ +232.55 393.76,227.76"]; + Descriptor -> Creator [dir=back, + pos="s,289.61,334.64 298.68,329.73 304.65,326 310.09,321.48 314.39,316 379.04,233.54 270.84,151.2 350.39,83 424.6,19.374 552.82,69.002 \ +608.85,95.761", + style=dashed]; + Descriptor -> Project [dir=back, + pos="s,288.95,334.6 298.2,329.69 304.31,325.96 309.91,321.46 314.39,316 365.88,253.28 295.39,196.66 350.39,137 367.54,118.4 396.57,112.3 \ +417.84,110.46", + style=dashed]; + Descriptor -> Updater [dir=back, + pos="s,282.55,332.23 291.71,328.2 299.54,324.58 307.34,320.5 314.39,316 332.68,304.32 330.97,292.7 350.39,283 491.14,212.68 562.02,296.49 \ +698.39,218 736.35,196.15 766.27,152.89 781.13,128.27", + style=dashed]; + Descriptor -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,294.99,351.12 e,589.73,390.16 305.25,351.98 366.33,357.15 459.91,366.41 540.39,380 553.16,382.16 566.78,384.96 579.63,387.85"]; + Observation -> Otu [pos="e,610.29,605 487.15,605 520.65,605 567.69,605 599.96,605", + style=dotted]; + Observation -> ObservationMatrix [pos="e,577.3,567.1 487.15,593.2 510.55,586.43 540.56,577.74 567.53,569.93", + style=invis]; + Source -> SubsequentCitation [pos="e,576.33,481.32 472.41,492.26 496.54,489.72 533.56,485.82 566.32,482.38", + style=invis]; + Source -> OriginCitation [pos="e,613.92,420.14 472.71,489.45 492,484.83 518.54,477.35 540.39,467 563.52,456.04 587.37,439.93 605.5,426.49", + style=invis]; + CitationTopic -> Topic [pos="e,418.12,660 285.02,660 322.01,660 373.68,660 408.05,660", + style=dotted]; + Documentation -> Document [pos="e,600.31,310 496.31,310 525.39,310 561.81,310 590.23,310", + style=dotted]; + ObservationMatrixColumn -> ObservationMatrix [pos="e,577.37,550 527.52,550 540.73,550 554.31,550 567.2,550", + style=dotted]; + Role -> Verifier [pos="e,608.84,187.08 472.41,167.7 505.11,172.34 561.47,180.35 598.84,185.66", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,734.03,475 698.42,475 706.75,475 715.36,475 723.82,475", + style=dotted]; + VerifierRole -> Verifier [pos="e,608.88,194.91 487.15,212.21 520.31,207.5 566.72,200.9 598.95,196.32", + style=dotted]; + Creator -> Updater [pos="e,762.33,110 666.1,110 690.12,110 725.16,110 752.08,110", + style=invis]; + Project -> Creator [pos="e,608.78,110 473.21,110 505.89,110 561.31,110 598.38,110", + style=invis]; +} diff --git a/data/documentation_model_er.dot b/data/documentation_model_er.dot new file mode 100644 index 00000000..958463e0 --- /dev/null +++ b/data/documentation_model_er.dot @@ -0,0 +1,203 @@ +digraph Documentation { + graph [bb="0,0,756.57,382", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,240", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,130", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,186", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + } + subgraph supporting { + Documentation [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="196.85,187", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.0848]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="196.85,129", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="437.73,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="437.73,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="437.73,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="632.07,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="632.07,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="437.73,164", + shape=box, + style=filled, + target=_top, + width=1.0278]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="437.73,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="726.57,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,163.19,129.21 70.017,129.83 92.789,129.68 126.26,129.46 152.96,129.28", + style=dotted]; + Documentation -> Identifier [pos="e,76.493,228.63 146.84,204.09 127.23,210.93 104.87,218.73 86.004,225.31"]; + Documentation -> Tag [pos="e,66.974,138.66 148.92,169.4 125.43,160.58 97.575,150.14 76.457,142.21"]; + Documentation -> Note [pos="e,71.062,186.18 121.65,186.51 107.65,186.42 93.572,186.33 81.315,186.25"]; + Documentation -> PinboardItem [pos="e,391.98,362.51 207.6,209.1 223.51,242.44 258.34,305.08 307.9,337 329.75,351.08 357.62,357.97 381.85,361.29"]; + Documentation -> Role [pos="e,410.53,308.4 216.97,209.33 237.25,231.53 271.36,264.81 307.9,283 337.07,297.52 373.71,304.24 400.45,307.35"]; + Documentation -> VerifierRole [pos="e,396.18,246.82 246.06,204.15 265.2,210.71 287.48,218.04 307.9,224 333.55,231.48 362.39,238.75 386.27,244.47"]; + Documentation -> Creator [dir=back, + pos="s,253.51,202.34 263.57,204.62 340.64,221.59 470.21,238.38 567.57,191 594.24,178.02 613.02,147.81 622.93,128.18", + style=dashed]; + Documentation -> Document [dir=back, + pos="s,272.12,179.85 282.29,178.87 322.84,174.97 369.28,170.49 400.56,167.48", + style=dashed]; + Documentation -> Project [dir=back, + pos="s,242.77,168.95 252.4,164.82 259.01,161.94 265.63,158.96 271.9,156 288.26,148.28 290.88,143.14 307.9,137 342.19,124.63 383.76,117.2 \ +410.23,113.35", + style=dashed]; + Documentation -> Updater [dir=back, + pos="s,250.12,170.77 259.17,165.69 263.74,162.82 268.06,159.61 271.9,156 298.25,131.22 277.18,102.1 307.9,83 374.45,41.615 583.71,67.672 \ +660.57,83 672.67,85.414 685.34,90.126 696.25,94.947", + style=dashed]; + "Objects with Documentation" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with documentation", + label="Objects with Documentation", + pos="437.73,18", + shape=hexagon, + style=filled, + target=_top, + width=3.6065]; + Documentation -> "Objects with Documentation" [dir=back, + pos="s,251.57,171.06 260.46,165.7 264.63,162.85 268.51,159.63 271.9,156 305.84,119.63 271.27,83.674 307.9,50 318.5,40.251 331.61,33.355 \ +345.36,28.5", + style=dashed]; + Role -> Verifier [pos="e,603.49,286.87 465.07,306.3 498.27,301.64 555.55,293.6 593.38,288.29", + style=invis]; + VerifierRole -> Verifier [pos="e,603.37,279.11 479.52,261.73 513.15,266.45 560.49,273.09 593.27,277.69", + style=dotted]; + Creator -> Updater [pos="e,696.4,110 660.57,110 668.6,110 677.53,110 686.14,110", + style=invis]; + Project -> Creator [pos="e,603.31,110 465.48,110 498.69,110 555.55,110 593.22,110", + style=invis]; +} diff --git a/data/documents_model_er.dot b/data/documents_model_er.dot new file mode 100644 index 00000000..05c4303d --- /dev/null +++ b/data/documents_model_er.dot @@ -0,0 +1,199 @@ +digraph Document { + graph [bb="0,0,559.91,322.72", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,195.22", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,86.224", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,141.22", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="435.41,304.22", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + Document [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#document", + label=Document, + pos="177.85,142.22", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.5572]; + Documentation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="320.41,304.22", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="177.85,84.224", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="320.41,250.22", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="320.41,196.22", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="320.41,142.22", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="435.41,169.22", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="435.41,50.224", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="320.41,50.224", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="529.91,50.224", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,144.04,84.718 70.164,85.829 88.291,85.557 112.81,85.188 133.77,84.872", + style=dotted]; + Document -> Identifier [pos="e,74.733,182.93 137.1,158.07 120.4,164.73 101.01,172.46 84.255,179.14"]; + Document -> Tag [pos="e,66.15,95.597 138.36,126.01 118.4,117.61 94.331,107.47 75.481,99.528"]; + Document -> Note [pos="e,71.122,141.43 121.67,141.81 108.04,141.71 93.758,141.6 81.206,141.5"]; + Document -> Documentation [pos="e,281.61,286.15 189.7,164.71 204.54,193.65 233.53,244.11 269.91,277.22 271.02,278.23 272.17,279.22 273.36,280.18"]; + Document -> PinboardItem [pos="e,283.93,232.16 200.85,164.39 218.58,181.6 244.65,205.45 269.91,223.22 271.56,224.39 273.27,225.54 275.01,226.67"]; + Document -> Role [pos="e,293.32,186.2 219.13,157.7 239.53,165.54 264.09,174.97 283.79,182.54"]; + Document -> VerifierRole [pos="e,278.76,142.22 234,142.22 245.42,142.22 257.41,142.22 268.66,142.22"]; + Document -> Creator [dir=back, + pos="s,223.43,128.19 233.44,124.97 272.09,112.45 325.01,94.719 370.91,77.224 382.77,72.701 395.7,67.295 406.78,62.512", + style=dashed]; + Document -> Project [dir=back, + pos="s,212.58,124.4 221.39,119.22 225.68,116.62 229.92,113.93 233.91,111.22 250.92,99.701 253.26,94.262 269.91,82.224 277.21,76.948 285.34,\ +71.518 292.86,66.663", + style=dashed]; + Document -> Updater [dir=back, + pos="s,216.33,125.67 224.56,119.92 227.96,117.27 231.13,114.37 233.91,111.22 261.87,79.543 234.83,46.778 269.91,23.224 340.85,-24.402 \ +448.21,13.012 499.55,35.857", + style=dashed]; + Documentation -> Source [pos="e,408.16,304.22 370.97,304.22 380.08,304.22 389.43,304.22 398.06,304.22", + style=dotted]; + Role -> Verifier [pos="e,406.77,175.83 347.62,189.96 362.17,186.49 380.52,182.1 396.59,178.26", + style=invis]; + VerifierRole -> Verifier [pos="e,406.75,162.62 362.2,151.97 373.53,154.68 385.77,157.6 396.9,160.26", + style=dotted]; + Creator -> Updater [pos="e,499.74,50.224 463.91,50.224 471.94,50.224 480.87,50.224 489.48,50.224", + style=invis]; + Project -> Creator [pos="e,406.64,50.224 348.19,50.224 362.64,50.224 380.73,50.224 396.6,50.224", + style=invis]; +} diff --git a/data/er.dot b/data/er.dot new file mode 100644 index 00000000..161978d1 --- /dev/null +++ b/data/er.dot @@ -0,0 +1,359 @@ +digraph G { + graph [bb="0,0,544.14,707.5", + label="Generated 2022-02-08 10:47:04 -0600 via 'rake tw:docs:er'.", + lheight=0.21, + lp="272.07,11.5", + lwidth=4.51, + outputorder=edgesfirst + ]; + node [label="\N"]; + CollectingEvent [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collecting-event", + label=CollectingEvent, + pos="301.14,41.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.4444]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="301.14,185.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + CollectingEvent -> CollectionObject [pos="e,301.14,167.41 301.14,59.738 301.14,84.299 301.14,128.25 301.14,157.15"]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="193.14,41.5", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + CollectionObject -> Source [pos="e,206.71,59.59 287.46,167.26 268.56,142.05 234.33,96.41 212.71,67.595", + style=dashed]; + BiologicalAssociation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#biological-association", + label=BiologicalAssociation, + pos="445.14,185.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.9028]; + CollectionObject -> BiologicalAssociation [pos="e,376.4,185.5 355.99,185.5 359.33,185.5 362.72,185.5 366.13,185.5"]; + Observation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#observation", + label=Observation, + pos="445.14,329.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.1528]; + CollectionObject -> Observation [pos="e,427.05,311.41 319.38,203.74 344.81,229.16 391.02,275.37 419.79,304.14"]; + TypeMaterial [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#type-material", + label=TypeMaterial, + pos="373.14,401.5", + shape=box, + style=filled, + target=_top, + width=1.2639]; + CollectionObject -> TypeMaterial [pos="e,367.09,383.35 307.16,203.54 319.73,241.27 348.87,328.68 363.86,373.66"]; + TaxonDetermination [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-determination", + label=TaxonDetermination, + pos="229.14,257.5", + shape=box, + style=filled, + target=_top, + width=1.8056]; + CollectionObject -> TaxonDetermination [pos="e,247.56,239.09 282.97,203.67 274.43,212.22 264.09,222.56 254.76,231.88"]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="301.14,329.5", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + AssertedDistribution [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#asserted-distribution", + label=AssertedDistribution, + pos="229.14,401.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.7917]; + Otu -> AssertedDistribution [pos="e,247.56,383.09 282.97,347.67 274.43,356.22 264.09,366.56 254.76,375.88"]; + Otu -> BiologicalAssociation [pos="e,427.05,203.59 319.38,311.26 344.81,285.84 391.02,239.63 419.79,210.86"]; + Otu -> Observation [pos="e,403.45,329.5 328.23,329.5 346.51,329.5 371.24,329.5 393.24,329.5"]; + Otu -> TaxonDetermination [pos="e,247.56,275.91 282.97,311.33 274.43,302.78 264.09,292.44 254.76,283.12"]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="85.142,329.5", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Otu -> Identifier [pos="e,128.29,329.5 273.79,329.5 239.91,329.5 181.45,329.5 138.56,329.5", + style=dashed]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="85.142,617.5", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Otu -> Depiction [pos="e,98.1,600.22 287.63,347.52 250.56,396.95 147.16,534.81 104.22,592.07", + style=dashed]; + TaxonName [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#taxon-name", + label=TaxonName, + pos="301.14,473.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.1667]; + TaxonName -> Otu [pos="e,301.14,347.59 301.14,455.26 301.14,430.7 301.14,386.75 301.14,357.85"]; + TaxonName -> TypeMaterial [pos="e,354.73,419.91 319.31,455.33 327.86,446.78 338.2,436.44 347.52,427.12"]; + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="445.14,257.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + Descriptor -> Observation [pos="e,445.14,311.09 445.14,275.67 445.14,283.37 445.14,292.53 445.14,301.08"]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="85.142,41.5", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Source -> Citation [pos="e,124.22,41.5 165.89,41.5 156.32,41.5 145.26,41.5 134.45,41.5"]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="85.142,113.5", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + Source -> AlternateValue [pos="e,110.17,96.818 165.89,59.669 151.58,69.211 133.91,80.988 118.75,91.092", + style=dashed]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="85.142,401.5", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + AssertedDistribution -> Confidence [pos="e,136.24,401.5 164.3,401.5 158.43,401.5 152.48,401.5 146.63,401.5", + style=dashed]; + Sequence [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#sequence", + label=Sequence, + pos="445.14,473.5", + shape=Mrecord, + style=filled, + target=_top, + width=0.94444]; + OriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="445.14,617.5", + shape=box, + style=filled, + target=_top, + width=1.6667]; + Sequence -> OriginRelationship [pos="e,445.14,599.41 445.14,491.74 445.14,516.3 445.14,560.25 445.14,589.15", + style=dashed]; + ControlledVocabularyTerm [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#controlled-vocabulary-term", + label=ControlledVocabularyTerm, + pos="301.14,545.5", + shape=Mrecord, + style=filled, + target=_top, + width=2.3056]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="85.142,545.5", + shape=oval, + style=filled, + target=_top, + width=0.75]; + ControlledVocabularyTerm -> Tag [pos="e,112.37,545.5 217.94,545.5 185.04,545.5 148.89,545.5 122.63,545.5", + style=dashed]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="85.142,473.5", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + ControlledVocabularyTerm -> DataAttribute [pos="e,125.08,486.81 246.92,527.42 212.45,515.94 168.18,501.18 134.67,490.01", + style=dashed]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="229.14,617.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + Image -> Depiction [pos="e,130.79,617.5 202.06,617.5 184.83,617.5 161.9,617.5 140.91,617.5"]; + Attribution [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#attribution", + label=Attribution, + pos="85.142,689.5", + shape=oval, + style=filled, + target=_top, + width=1.3902]; + Image -> Attribution [pos="e,114.58,674.78 202.06,631.04 179.95,642.1 148.44,657.85 123.7,670.22", + style=dashed]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="85.142,257.5", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + TaxonDetermination -> Note [pos="e,113.44,257.5 163.88,257.5 150.19,257.5 136.16,257.5 123.81,257.5", + style=dashed]; + ProtocolRelationship [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="85.142,185.5", + shape=oval, + style=filled, + target=_top, + width=2.3651]; + TaxonDetermination -> ProtocolRelationship [pos="e,118.51,202.18 192.81,239.33 173.01,229.43 148.4,217.13 127.71,206.78", + style=dashed]; + Georeference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeference", + label=Georeference, + pos="445.14,41.5", + shape=box, + style=filled, + target=_top, + width=1.2361]; + Georeference -> CollectingEvent [pos="e,353.2,41.5 400.37,41.5 388.69,41.5 375.9,41.5 363.49,41.5"]; + Person [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#person", + label=Person, + pos="517.14,113.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + "Role:Collector" [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role:collector", + label="Role:Collector", + pos="373.14,113.5", + shape=box, + style=filled, + target=_top, + width=1.3333]; + Person -> "Role:Collector" [pos="e,421.38,113.5 490.06,113.5 473.54,113.5 451.77,113.5 431.5,113.5", + style=dashed]; + "Role:Collector" -> CollectionObject [pos="e,319.56,167.09 354.97,131.67 346.43,140.22 336.09,150.56 326.76,159.88", + style=dashed]; +} diff --git a/data/extracts_model_er.dot b/data/extracts_model_er.dot new file mode 100644 index 00000000..7d7414dd --- /dev/null +++ b/data/extracts_model_er.dot @@ -0,0 +1,424 @@ +digraph Extract { + graph [bb="0,0,804.08,964.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph core { + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="748.08,946", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="748.08,891", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Sequence [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#sequence", + label=Sequence, + pos="575.58,673", + shape=Mrecord, + style=filled, + target=_top, + width=0.94444]; + } + subgraph supporting { + Extract [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#extract", + label=Extract, + pos="249.68,325", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.2054]; + RelatedOriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-origin-relationship", + label=RelatedOriginRelationship, + pos="575.58,728", + shape=box, + style=filled, + target=_top, + width=2.2361]; + OriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="394.08,618", + shape=box, + style=filled, + target=_top, + width=1.6667]; + DerivedExtract [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#derived-extract", + label=DerivedExtract, + pos="575.58,618", + shape=box, + style=filled, + target=_top, + width=1.375]; + DerivedSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#derived-sequence", + label=DerivedSequence, + pos="575.58,564", + shape=box, + style=filled, + target=_top, + width=1.5556]; + ExtractorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#extractor-role", + label=ExtractorRole, + pos="394.08,510", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Extractor [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#extractor", + label=Extractor, + pos="575.58,510", + shape=box, + style=filled, + target=_top, + width=0.93056]; + OriginExtract [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-extract", + label=OriginExtract, + pos="748.08,836", + shape=box, + style=filled, + target=_top, + width=1.2639]; + OriginLot [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-lot", + label=OriginLot, + pos="748.08,782", + shape=box, + style=filled, + target=_top, + width=0.98611]; + OriginOtu [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-otu", + label=OriginOtu, + pos="748.08,728", + shape=box, + style=filled, + target=_top, + width=1]; + OriginRangedLot [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-ranged-lot", + label=OriginRangedLot, + pos="748.08,674", + shape=box, + style=filled, + target=_top, + width=1.5556]; + OriginSpecimen [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-specimen", + label=OriginSpecimen, + pos="748.08,620", + shape=box, + style=filled, + target=_top, + width=1.4722]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="394.08,456", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Protocol [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#protocol", + label=Protocol, + pos="249.68,267", + shape=box, + style=filled, + target=_top, + width=0.86111]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="394.08,402", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="394.08,348", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="575.58,375", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="575.58,256", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="394.08,256", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Repository [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#repository", + label=Repository, + pos="394.08,202", + shape=box, + style=filled, + target=_top, + width=1.0556]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="748.08,256", + shape=box, + style=filled, + target=_top, + width=0.83333]; + Container [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#container", + label=Container, + pos="394.08,110", + shape=box, + style=filled, + target=_top, + width=0.97222]; + ContainerItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#container-item", + label=ContainerItem, + pos="575.58,110", + shape=box, + style=filled, + target=_top, + width=1.3194]; + ParentContainerItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#parent-container-item", + label=ParentContainerItem, + pos="394.08,18", + shape=box, + style=filled, + target=_top, + width=1.8056]; + } + subgraph annotator_cluster { + graph [rank=min]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="85.142,378", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="85.142,324", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + ProtocolRelationship [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="85.142,269", + shape=oval, + style=filled, + target=_top, + width=2.3651]; + } + ProtocolRelationship -> Protocol [pos="e,218.63,267.37 170.27,267.96 183.55,267.8 196.74,267.64 208.39,267.5", + style=dotted]; + Extract -> DataAttribute [pos="e,126.83,365.03 211.22,337.51 198.26,341.81 183.64,346.64 170.28,351 159.34,354.57 147.59,358.37 136.44,361.95"]; + Extract -> Identifier [pos="e,128.42,324.26 206.33,324.74 185.61,324.61 160.48,324.46 138.56,324.32"]; + Extract -> ProtocolRelationship [pos="e,132.06,284.08 212.83,312.01 199.5,307.23 184.22,301.81 170.28,297 161.1,293.83 151.34,290.53 141.83,287.34"]; + Extract -> RelatedOriginRelationship [pos="e,494.98,713.32 253.86,347.11 262.62,410.96 289.14,592.49 329.08,636 369.01,679.52 432.56,700.23 484.99,711.3"]; + Extract -> OriginRelationship [pos="e,376.01,599.9 256.35,347.04 267.08,386.7 292.58,471.98 329.08,537 340.18,556.78 355.95,576.8 369.05,591.99"]; + Extract -> ExtractorRole [pos="e,347.9,495.81 256.29,347.13 265.86,380.72 288.37,444.71 329.08,483 332.14,485.88 335.56,488.48 339.17,490.82"]; + Extract -> PinboardItem [pos="e,348.35,440.74 262.69,347.23 276.17,370.38 300.01,406.34 329.08,429 332.25,431.47 335.68,433.76 339.25,435.87"]; + Extract -> Role [pos="e,366.77,392.07 276.16,342.8 291.18,352.89 310.78,365.39 329.08,375 338.03,379.7 347.99,384.22 357.33,388.17"]; + Extract -> VerifierRole [pos="e,352.13,341.39 293.02,331.84 308.35,334.32 325.83,337.14 341.85,339.73"]; + Extract -> Creator [dir=back, + pos="s,293.07,316.85 303.11,314.9 345.31,306.65 406.1,294.53 459.08,283 489.06,276.48 523.27,268.4 546.62,262.79", + style=dashed]; + Extract -> Project [dir=back, + pos="s,281.93,309.86 291.17,305.38 315.22,293.73 345.05,279.27 366.21,269.02", + style=dashed]; + Extract -> Repository [dir=back, + pos="s,277.73,307.95 285.78,301.31 288.37,298.98 290.84,296.53 293.08,294 314.92,269.23 304.51,251.07 329.08,229 336.7,222.15 346.32,\ +216.87 355.76,212.88", + style=dashed]; + Extract -> Updater [dir=back, + pos="s,279.02,308.28 286.59,301.6 288.98,299.22 291.18,296.68 293.08,294 325.03,248.92 284.71,207.93 329.08,175 451.65,84.024 648.46,\ +192.52 719.98,237.88", + style=dashed]; + Extract -> Container [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,279.27,308.45 e,359,120.47 286.77,301.73 289.12,299.31 291.26,296.73 293.08,294 331.47,236.16 285.97,196.42 329.08,142 334.62,\ +135 342.11,129.4 350,124.98", + style=dotted]; + Extract -> ContainerItem [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,279.55,308.63 e,539.85,91.92 286.97,301.85 289.27,299.41 291.35,296.79 293.08,294 343.14,213.11 256.37,144.35 329.08,83 385.34,\ +35.523 476.56,63.873 530.54,87.696"]; + Extract -> ParentContainerItem [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,279.64,308.69 e,343.77,36.181 287.04,301.89 289.32,299.44 291.38,296.81 293.08,294 349.71,200.15 264.78,138.78 329.08,50 331.04,\ +47.284 333.31,44.784 335.78,42.486", + style=dotted]; + RelatedOriginRelationship -> CollectionObject [pos="e,704.05,927.97 583.41,746.1 598.12,782.99 636.07,867.69 692.08,919 693.2,920.03 694.38,921.03 695.59,922.01", + style=dotted]; + RelatedOriginRelationship -> Otu [pos="e,720.91,880.27 588.58,746.15 607.76,774.1 647.73,828.08 692.08,863 698.04,867.69 704.91,871.93 711.73,875.61", + style=dotted]; + RelatedOriginRelationship -> Extract [pos="e,252.87,347.18 494.98,728.39 440.85,720.81 371.59,700.32 329.08,654 289.45,610.82 263.03,431.73 254.07,357.36", + style=dotted]; + RelatedOriginRelationship -> OriginExtract [pos="e,708.21,817.86 600.19,746.19 623.03,763.4 658.98,789.43 692.08,809 694.4,810.37 696.8,811.74 699.25,813.09", + style=dotted]; + RelatedOriginRelationship -> OriginLot [pos="e,712.35,771 633.82,746.13 656.29,753.25 681.67,761.29 702.71,767.95", + style=dotted]; + RelatedOriginRelationship -> OriginOtu [pos="e,711.67,728 656.33,728 671.81,728 687.52,728 701.42,728", + style=dotted]; + RelatedOriginRelationship -> OriginRangedLot [pos="e,692,691.44 633.82,709.87 649.37,704.95 666.31,699.58 682.23,694.54", + style=dotted]; + RelatedOriginRelationship -> OriginSpecimen [pos="e,704.48,638.02 641.79,709.95 646.84,707.34 651.68,704.37 656.08,701 678.95,683.43 670.38,666.01 692.08,647 693.37,645.87 694.72,\ +644.77 696.11,643.71", + style=dotted]; + OriginRelationship -> Sequence [pos="e,541.35,662.82 453.85,636.01 479.26,643.79 508.44,652.74 531.75,659.88", + style=dotted]; + OriginRelationship -> RelatedOriginRelationship [pos="e,513.67,709.91 412.72,636.14 431.61,654.66 463.18,683.15 495.08,701 498.09,702.69 501.23,704.3 504.45,705.82", + style=invis]; + OriginRelationship -> DerivedExtract [pos="e,525.84,618 454.35,618 474.09,618 496.06,618 515.77,618", + style=dotted]; + OriginRelationship -> DerivedSequence [pos="e,519.32,580.62 454.35,600.17 472.01,594.86 491.46,589 509.48,583.58", + style=dotted]; + ExtractorRole -> Extractor [pos="e,542.04,510 440.37,510 468.46,510 504.32,510 531.9,510", + style=dotted]; + Role -> Verifier [pos="e,546.97,379.15 421.18,398.07 451.58,393.5 502.05,385.91 536.75,380.69", + style=invis]; + VerifierRole -> Verifier [pos="e,546.84,370.83 435.81,354.13 466.16,358.69 507.29,364.88 536.89,369.33", + style=dotted]; + Creator -> Updater [pos="e,717.89,256 604.35,256 632.41,256 676.02,256 707.66,256", + style=invis]; + Project -> Creator [pos="e,546.93,256 421.95,256 452.44,256 502.38,256 536.79,256", + style=invis]; + Container -> ContainerItem [pos="e,527.97,110 429.26,110 454.28,110 488.81,110 517.92,110", + style=invis]; +} diff --git a/data/gene_attributes_model_er.dot b/data/gene_attributes_model_er.dot new file mode 100644 index 00000000..62a54dac --- /dev/null +++ b/data/gene_attributes_model_er.dot @@ -0,0 +1,203 @@ +digraph GeneAttribute { + graph [bb="0,0,578.05,379.31", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,222.81", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,113.81", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,168.81", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="343.55,360.81", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + Sequence [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#sequence", + label=Sequence, + pos="343.55,305.81", + shape=Mrecord, + style=filled, + target=_top, + width=0.94444]; + } + subgraph supporting { + GeneAttribute [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#gene-attribute", + label=GeneAttribute, + pos="191.92,169.81", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.948]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="191.92,111.81", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="343.55,250.81", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="343.55,196.81", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="343.55,142.81", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="453.55,169.81", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="453.55,50.812", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="343.55,50.812", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="548.05,50.812", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,158.17,112.26 70.181,113.45 91.814,113.16 122.91,112.74 148.13,112.39", + style=dotted]; + GeneAttribute -> Identifier [pos="e,76.161,211.18 144.5,186.54 125.66,193.34 104.05,201.13 85.703,207.74"]; + GeneAttribute -> Tag [pos="e,66.869,122.56 145.91,152.67 123.45,144.11 96.786,133.96 76.353,126.17"]; + GeneAttribute -> Note [pos="e,70.863,169 121.58,169.34 107.64,169.25 93.505,169.15 81.178,169.07"]; + GeneAttribute -> Descriptor [dir=back, + pos="s,203.02,191.95 207.6,201.31 225.27,236.72 257.67,294.41 298.05,333.81 301.28,336.97 304.95,339.92 308.76,342.63", + style=dashed]; + GeneAttribute -> Sequence [dir=back, + pos="s,211.7,192.02 218.47,199.7 238.78,222.51 268.57,253.96 298.05,277.81 302.31,281.26 307.01,284.62 311.72,287.76", + style=dashed]; + GeneAttribute -> PinboardItem [pos="e,309.22,232.77 229.14,189.42 250.58,201.02 277.84,215.78 300.26,227.92"]; + GeneAttribute -> Role [pos="e,316.2,192.06 258.11,181.58 274.59,184.55 291.7,187.64 306.18,190.25"]; + GeneAttribute -> VerifierRole [pos="e,301.69,150.18 258.11,158.05 269.33,156.02 280.85,153.95 291.62,152"]; + GeneAttribute -> Creator [dir=back, + pos="s,235.44,151.93 244.7,147.6 250.61,144.76 256.5,141.81 262.05,138.81 278.76,129.79 281.23,124.61 298.05,115.81 336.88,95.493 348.66,\ +94.831 389.05,77.812 400.75,72.881 413.65,67.404 424.75,62.679", + style=dashed]; + GeneAttribute -> Project [dir=back, + pos="s,240.12,153.1 249.13,148.09 253.72,145.3 258.1,142.21 262.05,138.81 284.48,119.51 277.68,104.27 298.05,82.812 303.29,77.29 309.6,\ +72.095 315.8,67.561", + style=dashed]; + GeneAttribute -> Updater [dir=back, + pos="s,242.52,153.89 251.1,148.51 255.11,145.65 258.83,142.43 262.05,138.81 297.62,98.771 254.89,55.525 298.05,23.812 364.1,-24.723 467.88,\ +12.856 518.02,36.047", + style=dashed]; + Role -> Verifier [pos="e,424.76,176.76 370.69,190.28 383.98,186.95 400.37,182.86 414.98,179.2", + style=invis]; + VerifierRole -> Verifier [pos="e,424.92,162.9 385.07,152.94 394.93,155.41 405.44,158.03 415.15,160.46", + style=dotted]; + Creator -> Updater [pos="e,517.88,50.812 482.05,50.812 490.08,50.812 499.01,50.812 507.62,50.812", + style=invis]; + Project -> Creator [pos="e,425.03,50.812 371.25,50.812 384.41,50.812 400.52,50.812 414.92,50.812", + style=invis]; +} diff --git a/data/geographic_area_types_model_er.dot b/data/geographic_area_types_model_er.dot new file mode 100644 index 00000000..667f92f6 --- /dev/null +++ b/data/geographic_area_types_model_er.dot @@ -0,0 +1,120 @@ +digraph GeographicAreaType { + graph [bb="0,0,434.54,270.76", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + GeographicAreaType [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#geographic-area-type", + label=GeographicAreaType, + pos="98.268,117.76", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.7297]; + GeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-area", + label=GeographicArea, + pos="285.54,252.76", + shape=box, + style=filled, + target=_top, + width=1.4722]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="285.54,198.76", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="285.54,144.76", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="285.54,90.763", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="404.54,117.76", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="285.54,36.763", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="404.54,36.763", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + GeographicAreaType -> GeographicArea [pos="e,247.36,234.64 123.65,140.06 149.53,163.1 192.18,199.32 232.54,225.76 234.44,227.01 236.4,228.24 238.41,229.46"]; + GeographicAreaType -> PinboardItem [pos="e,243.17,180.68 146.02,138.2 172.77,149.9 206.36,164.58 233.76,176.56"]; + GeographicAreaType -> Role [pos="e,258.16,140.92 186.48,130.47 208.29,133.65 230.5,136.89 248.26,139.48"]; + GeographicAreaType -> VerifierRole [pos="e,243.96,96.676 186.48,105.05 202.64,102.7 219.02,100.31 233.65,98.179"]; + GeographicAreaType -> Creator [dir=back, + pos="s,146.02,97.323 155.27,93.28 188.85,78.599 230.08,60.572 256.81,48.884", + style=dashed]; + GeographicAreaType -> Updater [dir=back, + pos="s,117.71,95.575 124.51,88.118 149.02,61.819 188.85,25.243 232.54,9.7631 276.94,-5.9711 292.33,0.5491 338.54,9.7631 350.64,12.177 \ +363.31,16.889 374.22,21.71", + style=dashed]; + Role -> Verifier [pos="e,375.74,124.18 312.79,138.7 328.45,135.09 348.59,130.44 365.91,126.44", + style=invis]; + VerifierRole -> Verifier [pos="e,375.89,111.38 327.13,100.13 339.71,103.03 353.51,106.22 365.89,109.07", + style=dotted]; + Creator -> Updater [pos="e,374.37,36.763 314.26,36.763 329.12,36.763 347.68,36.763 364.02,36.763", + style=invis]; +} diff --git a/data/geographic_areas_geographic_items_model_er.dot b/data/geographic_areas_geographic_items_model_er.dot new file mode 100644 index 00000000..69eb40e8 --- /dev/null +++ b/data/geographic_areas_geographic_items_model_er.dot @@ -0,0 +1,105 @@ +digraph GeographicAreasGeographicItem { + graph [bb="0,0,524.4,252", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + GeographicAreasGeographicItem [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#geographic-areas-geographic-item", + label=GeographicAreasGeographicItem, + pos="144.7,126", + shape=doubleoctagon, + style=filled, + target=_top, + width=4.0194]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="378.4,234", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="378.4,180", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="378.4,126", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="495.9,153", + shape=box, + style=filled, + target=_top, + width=0.79167]; + GeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-area", + label=GeographicArea, + pos="378.4,72", + shape=box, + style=filled, + target=_top, + width=1.4722]; + GeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-item", + label=GeographicItem, + pos="378.4,18", + shape=box, + style=filled, + target=_top, + width=1.4583]; + } + GeographicAreasGeographicItem -> PinboardItem [pos="e,338.46,215.85 193.15,148.12 232.86,166.63 289.28,192.93 329.2,211.53"]; + GeographicAreasGeographicItem -> Role [pos="e,351.39,173.94 227.39,145.04 266.31,154.11 310.89,164.5 341.27,171.58"]; + GeographicAreasGeographicItem -> VerifierRole [pos="e,336.73,126 289.47,126 302.62,126 315.25,126 326.64,126"]; + GeographicAreasGeographicItem -> GeographicArea [dir=back, + pos="s,227.39,106.96 237.42,104.62 267.3,97.66 299.42,90.174 325.34,84.132", + style=dashed]; + GeographicAreasGeographicItem -> GeographicItem [dir=back, + pos="s,193.15,103.88 202.47,99.538 244.7,79.851 301.25,53.496 338.46,36.147", + style=dashed]; + Role -> Verifier [pos="e,467.18,159.48 405.61,173.87 420.82,170.32 440.24,165.78 457.09,161.84", + style=invis]; + VerifierRole -> Verifier [pos="e,467.2,146.53 420.12,135.52 432.17,138.34 445.32,141.41 457.17,144.18", + style=dotted]; +} diff --git a/data/geographic_areas_model_er.dot b/data/geographic_areas_model_er.dot new file mode 100644 index 00000000..4acdb709 --- /dev/null +++ b/data/geographic_areas_model_er.dot @@ -0,0 +1,289 @@ +digraph GeographicArea { + graph [bb="0,0,554.14,842.97", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + AssertedDistribution [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#asserted-distribution", + label=AssertedDistribution, + pos="293.14,824.47", + shape=Mrecord, + style=filled, + target=_top, + width=1.7917]; + CollectingEvent [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collecting-event", + label=CollectingEvent, + pos="293.14,769.47", + shape=Mrecord, + style=filled, + target=_top, + width=1.4444]; + } + subgraph supporting { + GeographicArea [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#geographic-area", + label=GeographicArea, + pos="78.57,417.47", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.1825]; + AncestorHierarchy [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#ancestor-hierarchy", + label=AncestorHierarchy, + pos="293.14,714.47", + shape=box, + style=filled, + target=_top, + width=1.6528]; + Child [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#child", + label=Child, + pos="293.14,660.47", + shape=box, + style=filled, + target=_top, + width=0.75]; + DescendantHierarchy [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#descendant-hierarchy", + label=DescendantHierarchy, + pos="293.14,606.47", + shape=box, + style=filled, + target=_top, + width=1.8611]; + GeographicAreasGeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-areas-geographic-item", + label=GeographicAreasGeographicItem, + pos="293.14,552.47", + shape=box, + style=filled, + target=_top, + width=2.7778]; + GeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-item", + label=GeographicItem, + pos="491.64,552.47", + shape=box, + style=filled, + target=_top, + width=1.4583]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="293.14,498.47", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="293.14,444.47", + shape=box, + style=filled, + target=_top, + width=0.75]; + SelfAndAncestor [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#self-and-ancestor", + label=SelfAndAncestor, + pos="491.64,714.47", + shape=box, + style=filled, + target=_top, + width=1.5278]; + SelfAndDescendant [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#self-and-descendant", + label=SelfAndDescendant, + pos="491.64,606.47", + shape=box, + style=filled, + target=_top, + width=1.7361]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="293.14,390.47", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="491.64,417.47", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="293.14,336.47", + shape=box, + style=filled, + target=_top, + width=0.79167]; + GeographicAreaType [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-area-type", + label=GeographicAreaType, + pos="293.14,282.47", + shape=box, + style=filled, + target=_top, + width=1.8611]; + Level0 [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#level0", + label=Level0, + pos="293.14,228.47", + shape=box, + style=filled, + target=_top, + width=0.75]; + Level1 [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#level1", + label=Level1, + pos="293.14,174.47", + shape=box, + style=filled, + target=_top, + width=0.75]; + Level2 [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#level2", + label=Level2, + pos="293.14,120.47", + shape=box, + style=filled, + target=_top, + width=0.75]; + Parent [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#parent", + label=Parent, + pos="293.14,66.472", + shape=box, + style=filled, + target=_top, + width=0.75]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="491.64,336.47", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + GeographicArea -> AssertedDistribution [pos="e,228.51,817.23 79.228,439.62 79.484,504.56 89.421,696.23 193.14,797.47 200.41,804.57 209.35,809.84 218.85,813.75"]; + GeographicArea -> CollectingEvent [pos="e,240.9,764.52 80.609,439.67 84.567,498.05 103.47,657.16 193.14,741.47 203.56,751.27 217.14,757.68 230.9,761.86"]; + GeographicArea -> AncestorHierarchy [pos="e,233.62,707.71 82.341,439.79 89.962,491.45 116.07,619.95 193.14,687.47 201.9,695.14 212.64,700.66 223.77,704.62"]; + GeographicArea -> Child [pos="e,265.99,659.02 84.869,439.61 96.544,483.5 128.72,581.75 193.14,633.47 210.89,647.72 235.57,654.47 255.85,657.66"]; + GeographicArea -> DescendantHierarchy [pos="e,225.9,595.28 88.937,439.51 105,474.6 141.16,542.92 193.14,579.47 200.23,584.46 208.21,588.53 216.48,591.84"]; + GeographicArea -> GeographicAreasGeographicItem [pos="e,212.12,534.41 97.222,439.91 117.72,464.47 153.79,503.29 193.14,525.47 196.22,527.21 199.42,528.84 202.7,530.37"]; + GeographicArea -> PinboardItem [pos="e,247.25,488.03 117.73,437.71 139.43,448.68 167.35,461.91 193.14,471.47 207.26,476.71 222.84,481.43 237.38,485.4"]; + GeographicArea -> Role [pos="e,265.97,441.15 157.22,427.33 190.93,431.62 228.8,436.43 255.82,439.86"]; + GeographicArea -> VerifierRole [pos="e,251.37,395.65 157.22,407.61 185.26,404.05 216.17,400.12 241.32,396.93"]; + GeographicArea -> Creator [dir=back, + pos="s,117.73,397.24 126.69,392.76 146.81,382.82 170.77,371.77 193.14,363.47 216.69,354.74 244.33,347.44 264.41,342.64", + style=dashed]; + GeographicArea -> GeographicAreaType [dir=back, + pos="s,97.222,395.04 103.94,387.14 125.08,362.76 157.79,329.4 193.14,309.47 203.23,303.79 214.58,299.25 225.89,295.64", + style=dashed]; + GeographicArea -> Level0 [dir=back, + pos="s,88.937,395.44 93.293,386.17 111.04,349.35 145.42,289.02 193.14,255.47 214.85,240.2 244.83,233.56 266.09,230.68", + style=dashed]; + GeographicArea -> Level1 [dir=back, + pos="s,84.869,395.34 87.554,385.6 101.09,338.23 133.12,249.66 193.14,201.47 213.98,184.74 244.39,178.35 265.99,175.92", + style=dashed]; + GeographicArea -> Level2 [dir=back, + pos="s,82.341,395.15 83.936,384.96 93.31,328.16 120.73,210.91 193.14,147.47 213.37,129.75 244.18,123.54 266.05,121.43", + style=dashed]; + GeographicArea -> Parent [dir=back, + pos="s,80.565,395.23 81.306,385.16 86.581,320.13 107.83,172.94 193.14,93.472 212.82,75.137 243.73,69.038 265.77,67.119", + style=dashed]; + GeographicArea -> Updater [dir=back, + pos="s,82.75,395.39 84.269,385.47 97.228,302.1 136.33,81.726 193.14,39.472 264.47,-13.573 321.15,-12.666 393.14,39.472 485.88,106.64 \ +491.98,264.85 491.26,318.39", + style=dashed]; + AncestorHierarchy -> SelfAndAncestor [pos="e,436.61,714.47 352.83,714.47 375.98,714.47 402.65,714.47 426.32,714.47", + style=dotted]; + DescendantHierarchy -> SelfAndDescendant [pos="e,428.98,606.47 360.39,606.47 379.19,606.47 399.73,606.47 418.84,606.47", + style=dotted]; + GeographicAreasGeographicItem -> GeographicItem [pos="e,439.02,552.47 393.25,552.47 405.38,552.47 417.48,552.47 428.83,552.47", + style=dotted]; + Role -> Verifier [pos="e,462.85,421.29 320.23,440.89 354.26,436.21 414,428 452.94,422.65", + style=invis]; + VerifierRole -> Verifier [pos="e,462.94,413.67 334.86,396.07 369.59,400.84 419.15,407.65 452.98,412.3", + style=dotted]; + Creator -> Updater [pos="e,461.44,336.47 321.88,336.47 355.63,336.47 412.83,336.47 451.17,336.47", + style=invis]; +} diff --git a/data/geographic_items_model_er.dot b/data/geographic_items_model_er.dot new file mode 100644 index 00000000..4055b20b --- /dev/null +++ b/data/geographic_items_model_er.dot @@ -0,0 +1,244 @@ +digraph GeographicItem { + graph [bb="0,0,1007.7,574.79", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + GeographicItem [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#geographic-item", + label=GeographicItem, + pos="77.867,286.79", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.163]; + GeoreferencesThroughErrorGeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeferences-through-error-geographic-item", + label=GeoreferencesThroughErrorGeographicItem, + pos="320.73,556.79", + shape=box, + style=filled, + target=_top, + width=3.5833]; + CollectingEventsThroughGeoreferenceErrorGeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collecting-events-through-georeference-error-geographic-item", + label=CollectingEventsThroughGeoreferenceErrorGeographicItem, + pos="658.73,556.79", + shape=box, + style=filled, + target=_top, + width=4.8056]; + Georeference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeference", + label=Georeference, + pos="320.73,502.79", + shape=box, + style=filled, + target=_top, + width=1.2361]; + CollectingEventsThroughGeoreference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collecting-events-through-georeference", + label=CollectingEventsThroughGeoreference, + pos="658.73,502.79", + shape=box, + style=filled, + target=_top, + width=3.1806]; + GadmGeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#gadm-geographic-area", + label=GadmGeographicArea, + pos="320.73,448.79", + shape=box, + style=filled, + target=_top, + width=1.9444]; + GeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-area", + label=GeographicArea, + pos="658.73,394.79", + shape=box, + style=filled, + target=_top, + width=1.4722]; + GeographicAreaType [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-area-type", + label=GeographicAreaType, + pos="937.73,421.79", + shape=box, + style=filled, + target=_top, + width=1.8611]; + GeographicAreasGeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-areas-geographic-item", + label=GeographicAreasGeographicItem, + pos="320.73,394.79", + shape=box, + style=filled, + target=_top, + width=2.7778]; + NeGeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#ne-geographic-area", + label=NeGeographicArea, + pos="320.73,340.79", + shape=box, + style=filled, + target=_top, + width=1.6944]; + ParentGeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#parent-geographic-area", + label=ParentGeographicArea, + pos="937.73,367.79", + shape=box, + style=filled, + target=_top, + width=1.9444]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="320.73,286.79", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="320.73,232.79", + shape=box, + style=filled, + target=_top, + width=0.75]; + TdwgGeographicArea [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#tdwg-geographic-area", + label=TdwgGeographicArea, + pos="320.73,178.79", + shape=box, + style=filled, + target=_top, + width=1.9028]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="320.73,124.79", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="658.73,178.79", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="320.73,70.788", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="658.73,70.788", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + GeographicItem -> GeoreferencesThroughErrorGeographicItem [pos="e,205.11,538.65 82.387,308.99 91.272,357.29 119.29,472.17 191.73,529.79 193.3,531.03 194.91,532.23 196.56,533.37"]; + GeographicItem -> Georeference [pos="e,276.2,502.21 85.512,308.95 98.74,349.04 132.33,433.36 191.73,475.79 213.16,491.09 241.43,498.07 265.96,501.13"]; + GeographicItem -> GadmGeographicArea [pos="e,250.5,442.8 90.935,308.95 108.77,339.45 145.13,393.78 191.73,421.79 206.46,430.64 223.66,436.62 240.59,440.65"]; + GeographicItem -> GeographicAreasGeographicItem [pos="e,220.59,378.2 103.43,309.08 125.13,327.56 158.41,353.1 191.73,367.79 197.88,370.5 204.31,372.94 210.88,375.14"]; + GeographicItem -> NeGeographicArea [pos="e,259.43,328.42 139.13,301.52 156.12,305.59 174.63,309.94 191.73,313.79 210.42,317.99 230.69,322.36 249.47,326.32"]; + GeographicItem -> PinboardItem [pos="e,275.1,286.79 155.74,286.79 191.27,286.79 232.65,286.79 264.95,286.79"]; + GeographicItem -> Role [pos="e,293.7,238.07 139.13,272.06 156.12,267.99 174.63,263.64 191.73,259.79 222.7,252.82 258,245.41 283.67,240.12"]; + GeographicItem -> TdwgGeographicArea [pos="e,251.99,187.66 103.43,264.5 125.13,246.02 158.41,220.48 191.73,205.79 207.46,198.86 225.06,193.67 242.07,189.79"]; + GeographicItem -> VerifierRole [pos="e,279.18,126.54 90.935,264.63 108.77,234.13 145.13,179.8 191.73,151.79 215,137.8 244.45,130.99 269.23,127.7"]; + GeographicItem -> Creator [dir=back, + pos="s,85.512,264.63 88.796,255.01 103.87,212.25 136.74,137.06 191.73,97.788 221.49,76.538 264.44,71.337 292.23,70.404", + style=dashed]; + GeographicItem -> Updater [dir=back, + pos="s,81.395,264.55 82.927,254.39 91.709,199.79 118.03,90.823 191.73,43.788 333.14,-46.45 550.55,26.897 628.59,58.281", + style=dashed]; + GeoreferencesThroughErrorGeographicItem -> CollectingEventsThroughGeoreferenceErrorGeographicItem [pos="e,485.49,556.79 450.2,556.79 458.52,556.79 466.98,556.79 475.49,556.79", + style=dotted]; + Georeference -> CollectingEventsThroughGeoreference [pos="e,544.17,502.79 365.32,502.79 407.95,502.79 474.91,502.79 534,502.79", + style=dotted]; + GeographicArea -> GeographicAreaType [pos="e,870.67,415.35 711.84,399.87 753.74,403.95 813.21,409.75 860.47,414.35", + style=dotted]; + GeographicArea -> ParentGeographicArea [pos="e,867.6,374.53 711.84,389.71 752.86,385.71 810.73,380.07 857.49,375.51", + style=dotted]; + GeographicAreasGeographicItem -> GeographicArea [pos="e,605.29,394.79 421.18,394.79 477.55,394.79 546.34,394.79 595.18,394.79", + style=dotted]; + Role -> Verifier [pos="e,630.02,183.24 347.82,228.6 406.92,219.1 551.24,195.9 620.05,184.85", + style=invis]; + VerifierRole -> Verifier [pos="e,630.2,174.36 362.26,131.3 427.9,141.85 556.52,162.52 620.19,172.75", + style=dotted]; + Creator -> Updater [pos="e,628.49,70.788 349.52,70.788 409.06,70.788 549.17,70.788 618.07,70.788", + style=invis]; +} diff --git a/data/georeferences_model_er.dot b/data/georeferences_model_er.dot new file mode 100644 index 00000000..f21a7b76 --- /dev/null +++ b/data/georeferences_model_er.dot @@ -0,0 +1,411 @@ +digraph Georeference { + graph [bb="0,0,819.51,673.66", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph core { + CollectingEvent [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collecting-event", + label=CollectingEvent, + pos="442.51,360.66", + shape=Mrecord, + style=filled, + target=_top, + width=1.4444]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="606.51,360.66", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="442.51,600.66", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + Georeference [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#georeference", + label=Georeference, + pos="272.9,332.66", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.8503]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="272.9,655.66", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="272.9,274.66", + shape=box, + style=filled, + target=_top, + width=1.5139]; + GeoreferencerRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeferencer-role", + label=GeoreferencerRole, + pos="442.51,305.66", + shape=box, + style=filled, + target=_top, + width=1.6528]; + Georeferencer [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeferencer", + label=Georeferencer, + pos="606.51,305.66", + shape=box, + style=filled, + target=_top, + width=1.3056]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="272.9,220.66", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="442.51,251.66", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Protocol [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#protocol", + label=Protocol, + pos="272.9,166.66", + shape=box, + style=filled, + target=_top, + width=0.86111]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="442.51,197.66", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="606.51,480.66", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="761.51,480.66", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="442.51,655.66", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="442.51,143.66", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="606.51,170.66", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="606.51,51.662", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ErrorGeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#error-geographic-item", + label=ErrorGeographicItem, + pos="442.51,507.66", + shape=box, + style=filled, + target=_top, + width=1.8611]; + GeographicItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-item", + label=GeographicItem, + pos="442.51,453.66", + shape=box, + style=filled, + target=_top, + width=1.4583]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="442.51,51.662", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="761.51,51.662", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="606.51,576.66", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="85.142,600.66", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="85.142,275.66", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="85.142,384.66", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="85.142,220.66", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="85.142,330.66", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + ProtocolRelationship [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="85.142,166.66", + shape=oval, + style=filled, + target=_top, + width=2.3651]; + } + Citation -> Source [pos="e,415.22,600.66 124.17,600.66 193.01,600.66 337.38,600.66 405.04,600.66", + style=dotted]; + Citation -> CitationTopic [pos="e,226.69,642.28 118.5,610.24 145.63,618.28 184.96,629.92 217,639.41", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,218.07,274.95 135.92,275.39 158.01,275.28 184.29,275.13 207.82,275.01", + style=dotted]; + Tag -> Keyword [pos="e,239.24,220.66 112.36,220.66 142.67,220.66 193,220.66 229.03,220.66", + style=dotted]; + ProtocolRelationship -> Protocol [pos="e,241.77,166.66 170.32,166.66 191.67,166.66 213.63,166.66 231.65,166.66", + style=dotted]; + CollectingEvent -> CollectionObject [pos="e,551.79,360.66 494.76,360.66 509.67,360.66 526.13,360.66 541.71,360.66", + style=dotted]; + Source -> SubsequentCitation [pos="e,581.2,498.67 468.11,582.44 496.1,561.7 541.94,527.75 572.89,504.82", + style=invis]; + Source -> OriginCitation [pos="e,558.95,583.56 469.53,596.81 490.87,593.65 521.84,589.06 548.83,585.06", + style=invis]; + Georeference -> Citation [pos="e,98.045,583.49 256.54,354.82 222.36,404.14 140.15,522.75 103.86,575.1"]; + Georeference -> Confidence [pos="e,124.18,287.33 222.26,317.43 194.84,309.02 160.94,298.62 133.84,290.3"]; + Georeference -> DataAttribute [pos="e,129.22,372.6 220.12,347.16 194.85,354.23 164.49,362.73 139.07,369.85"]; + Georeference -> Tag [pos="e,111.73,224.69 227.9,315.89 220.25,311.89 212.7,307.15 206.28,301.66 184.65,283.15 192.99,265.84 170.28,248.66 156.18,237.99 137.8,\ +231.26 121.82,227.08"]; + Georeference -> Note [pos="e,113.15,330.95 205.94,331.95 178.24,331.65 147.04,331.32 123.43,331.06"]; + Georeference -> ProtocolRelationship [pos="e,147.93,178.9 225.23,316.5 218.2,312.49 211.55,307.6 206.28,301.66 172.71,263.81 206.26,229.24 170.28,193.66 166.33,189.75 161.81,\ +186.41 156.96,183.55"]; + Georeference -> CollectingEvent [dir=back, + pos="s,338.7,343.49 348.84,345.18 362.89,347.53 377.27,349.93 390.38,352.12", + style=dashed]; + Georeference -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,278.16,354.91 e,415.34,592.47 280.34,364.69 291.71,413.89 319.61,508.58 375.51,567.66 383.88,576.52 395.15,583.35 406,588.43", + style=dotted]; + Georeference -> GeoreferencerRole [pos="e,382.74,315.13 339.66,322.07 350.54,320.32 361.85,318.49 372.81,316.73"]; + Georeference -> PinboardItem [pos="e,396.98,268.59 313.86,314.77 322.42,310.67 331.35,306.17 339.51,301.66 356.12,292.48 358.65,287.4 375.51,278.66 379.45,276.62 383.58,\ +274.62 387.77,272.69"]; + Georeference -> Role [pos="e,415.5,203.45 319.31,316.33 326.65,312.32 333.73,307.46 339.51,301.66 366.17,274.9 348.15,250.71 375.51,224.66 383.95,216.62 395.11,\ +210.84 405.85,206.75"]; + Georeference -> SubsequentCitation [pos="e,577.39,462.58 306.89,352.85 326.35,364.16 351.76,377.91 375.51,387.66 432.88,411.23 452.32,402.63 509.51,426.66 529.77,435.18 \ +551.2,446.94 568.65,457.31"]; + Georeference -> VerifierRole [pos="e,400.82,153.6 320.84,316.73 327.83,312.7 334.4,307.74 339.51,301.66 378.35,255.43 335.45,215.84 375.51,170.66 380.03,165.56 385.67,\ +161.4 391.72,158.02"]; + Georeference -> Creator [dir=back, + pos="s,322.23,316.92 330.56,311.05 333.92,308.27 336.96,305.16 339.51,301.66 412.58,201.3 282.24,106.6 375.51,24.662 432.44,-25.354 530.23,\ +12.925 577.84,36.589", + style=dashed]; + Georeference -> ErrorGeographicItem [dir=back, + pos="s,283.9,354.74 288.47,363.94 305.27,396.97 335.76,448.61 375.51,480.66 379.65,484 384.26,486.99 389.07,489.63", + style=dashed]; + Georeference -> GeographicItem [dir=back, + pos="s,295.48,354.66 302.82,361.76 322.28,380.35 349.11,404.16 375.51,421.66 383.04,426.66 391.47,431.34 399.73,435.51", + style=dashed]; + Georeference -> Project [dir=back, + pos="s,321.72,316.98 329.97,311.31 333.54,308.47 336.79,305.27 339.51,301.66 398.67,223.28 316.74,162.34 375.51,83.662 385.03,70.909 \ +400.99,62.981 414.83,58.206", + style=dashed]; + Georeference -> Updater [dir=back, + pos="s,321.57,316.86 329.86,311.23 333.45,308.4 336.74,305.23 339.51,301.66 390.92,235.53 314.45,174 375.51,116.66 423.21,71.867 603.45,\ +92.046 667.51,78.662 689.23,74.123 713.28,67.087 731.48,61.335", + style=dashed]; + Georeference -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,278.23,354.76 e,558.78,573.03 280.58,364.67 291.83,410.09 319.09,492.43 375.51,534.66 402.21,554.66 489.45,566.29 548.48,572.06"]; + CitationTopic -> Topic [pos="e,415.43,655.66 319.25,655.66 346.23,655.66 379.99,655.66 405.2,655.66", + style=dotted]; + GeoreferencerRole -> Georeferencer [pos="e,559.3,305.66 502.45,305.66 517.67,305.66 534.01,305.66 549.09,305.66", + style=dotted]; + Role -> Verifier [pos="e,577.92,175.26 469.53,193.32 496.1,188.9 537.59,181.98 567.76,176.95", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,703.15,480.66 667.54,480.66 675.87,480.66 684.48,480.66 692.93,480.66", + style=dotted]; + VerifierRole -> Verifier [pos="e,577.89,166.06 484.39,150.48 509.98,154.74 542.71,160.2 567.7,164.36", + style=dotted]; + Creator -> Updater [pos="e,731.44,51.662 635.21,51.662 659.24,51.662 694.28,51.662 721.2,51.662", + style=invis]; + Project -> Creator [pos="e,577.9,51.662 470.26,51.662 496.87,51.662 537.93,51.662 567.83,51.662", + style=invis]; +} diff --git a/data/identifiers_model_er.dot b/data/identifiers_model_er.dot new file mode 100644 index 00000000..caf36ea4 --- /dev/null +++ b/data/identifiers_model_er.dot @@ -0,0 +1,164 @@ +digraph Identifier { + graph [bb="0,0,542,436", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="50.431,210", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.4008]; + } + subgraph core { + } + subgraph supporting { + Label [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#label", + label=Label, + pos="244.93,418", + shape=box, + style=filled, + target=_top, + width=0.75]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="244.93,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="244.93,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="244.93,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="417.5,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="417.5,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Namespace [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#namespace", + label=Namespace, + pos="244.93,164", + shape=box, + style=filled, + target=_top, + width=1.1111]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="244.93,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="512,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Identifier -> Label [pos="e,217.8,417.52 55.501,232.13 63.749,270.5 86.144,349.28 136.86,391 156.67,407.3 185.02,413.93 207.58,416.56"]; + Identifier -> PinboardItem [pos="e,199.21,360.08 60.251,232.06 72.867,260.73 98.821,310.25 136.86,337 152.07,347.69 171.12,354.16 188.91,358.07"]; + Identifier -> Role [pos="e,217.65,306.81 71.513,231.95 87.661,248.32 111.73,270.01 136.86,283 158.96,294.42 186.17,301.2 207.62,305.11"]; + Identifier -> VerifierRole [pos="e,203.2,246.27 98.522,221.25 127.2,228.11 163.83,236.86 193.15,243.87"]; + Identifier -> Creator [dir=back, + pos="s,100.92,218.67 111.2,219.98 174.96,227.61 277.03,230.98 353,191 379.09,177.27 397.93,147.59 408.03,128.22", + style=dashed]; + Identifier -> Namespace [dir=back, + pos="s,98.522,198.75 108.35,196.4 139.4,188.98 177.04,179.98 204.78,173.36", + style=dashed]; + Identifier -> Project [dir=back, + pos="s,71.513,188.05 78.776,180.87 94.452,165.75 115.27,148.16 136.86,137 162.41,123.8 194.78,116.8 217.2,113.26", + style=dashed]; + Identifier -> Updater [dir=back, + pos="s,58.859,187.75 62.59,178.34 75.294,147.69 99.295,103 136.86,83 258.13,18.42 311.26,56.128 446,83 458.11,85.414 470.78,90.126 481.68,\ +94.947", + style=dashed]; + "Objects with Identifiers" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with identifier", + label="Objects with Identifiers", + pos="244.93,18", + shape=hexagon, + style=filled, + target=_top, + width=3.002]; + Identifier -> "Objects with Identifiers" [dir=back, + pos="s,57.258,187.85 60.217,178.27 71.859,142.06 95.86,83.523 136.86,50 147.53,41.281 160.51,34.937 173.71,30.321", + style=dashed]; + Role -> Verifier [pos="e,388.78,287.39 272.21,305.84 300.71,301.33 346.46,294.09 378.79,288.97", + style=invis]; + VerifierRole -> Verifier [pos="e,388.76,278.61 286.79,262.47 314.75,266.89 351.56,272.72 378.82,277.04", + style=dotted]; + Creator -> Updater [pos="e,481.84,110 446,110 454.03,110 462.96,110 471.57,110", + style=invis]; + Project -> Creator [pos="e,388.91,110 272.58,110 301.04,110 346.37,110 378.54,110", + style=invis]; +} diff --git a/data/images_model_er.dot b/data/images_model_er.dot new file mode 100644 index 00000000..f371aa99 --- /dev/null +++ b/data/images_model_er.dot @@ -0,0 +1,513 @@ +digraph Image { + graph [bb="0,0,818.28,1223.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="85.142,851", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="85.142,441", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="85.142,274", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="85.142,220", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="85.142,382", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + ProtocolRelationship [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="85.142,166", + shape=oval, + style=filled, + target=_top, + width=2.3651]; + Attribution [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#attribution", + label=Attribution, + pos="85.142,328", + shape=oval, + style=filled, + target=_top, + width=1.3902]; + } + subgraph supporting { + Image [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#image", + label=Image, + pos="293.78,278", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.1077]; + CharacterState [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#character-state", + label=CharacterState, + pos="293.78,1040", + shape=box, + style=filled, + target=_top, + width=1.3333]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="293.78,496", + shape=box, + style=filled, + target=_top, + width=1.2778]; + CollectionObjectObservation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collection-object-observation", + label=CollectionObjectObservation, + pos="293.78,986", + shape=box, + style=filled, + target=_top, + width=2.4306]; + Content [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#content", + label=Content, + pos="293.78,932", + shape=box, + style=filled, + target=_top, + width=0.81944]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="293.78,220", + shape=box, + style=filled, + target=_top, + width=0.93056]; + Label [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#label", + label=Label, + pos="293.78,878", + shape=box, + style=filled, + target=_top, + width=0.75]; + Loan [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan", + label=Loan, + pos="293.78,824", + shape=box, + style=filled, + target=_top, + width=0.75]; + Person [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#person", + label=Person, + pos="293.78,770", + shape=box, + style=filled, + target=_top, + width=0.75]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="462.78,126", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Protocol [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#protocol", + label=Protocol, + pos="293.78,166", + shape=box, + style=filled, + target=_top, + width=0.86111]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="462.78,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="605.28,435", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="760.28,435", + shape=box, + style=filled, + target=_top, + width=1.6111]; + TaxonDetermination [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-determination", + label=TaxonDetermination, + pos="293.78,716", + shape=box, + style=filled, + target=_top, + width=1.8056]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="462.78,496", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="462.78,72", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="605.28,45", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="605.28,180", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="462.78,180", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="760.28,180", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="605.28,375", + shape=box, + style=filled, + target=_top, + width=1.3194]; + SledImage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#sled-image", + label=SledImage, + pos="462.78,272", + shape=box, + style=filled, + target=_top, + width=1.0417]; + } + subgraph core { + CollectingEvent [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collecting-event", + label=CollectingEvent, + pos="293.78,661", + shape=Mrecord, + style=filled, + target=_top, + width=1.4444]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="293.78,606", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="293.78,551", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + Observation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#observation", + label=Observation, + pos="293.78,1205", + shape=Mrecord, + style=filled, + target=_top, + width=1.1528]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="293.78,1150", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="462.78,441", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + TaxonName [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#taxon-name", + label=TaxonName, + pos="293.78,1095", + shape=Mrecord, + style=filled, + target=_top, + width=1.1667]; + } + Depiction -> CollectingEvent [pos="e,241.34,671.91 94.546,833.3 111.19,800.11 151.54,728.32 206.28,689 213.99,683.46 222.85,678.98 231.89,675.37", + style=dotted]; + Depiction -> CollectionObject [pos="e,239.26,616.43 91.145,832.88 103.52,791.42 139.48,689.04 206.28,634 213.19,628.31 221.28,623.77 229.68,620.15", + style=dotted]; + Depiction -> Descriptor [pos="e,256.53,555.76 88.941,832.79 97.358,784.24 126.94,650.58 206.28,579 217.52,568.86 232.47,562.39 246.78,558.26", + style=dotted]; + Depiction -> Observation [pos="e,252.26,1200.2 87.371,869.21 92.065,924.15 113.62,1089.8 206.28,1178 216.18,1187.4 229.32,1193.6 242.36,1197.6", + style=dotted]; + Depiction -> Otu [pos="e,266.52,1147.6 88.9,869.26 97.214,917.92 126.56,1051.8 206.28,1123 220.09,1135.3 239.46,1142 256.37,1145.7", + style=dotted]; + Depiction -> TaxonName [pos="e,251.37,1088.3 91.171,869.04 103.59,910.31 139.66,1012.2 206.28,1067 216.39,1075.3 229.01,1081.2 241.46,1085.3", + style=dotted]; + Depiction -> CharacterState [pos="e,245.4,1031 94.508,868.75 111.09,902.04 151.33,973.97 206.28,1013 215.12,1019.3 225.47,1024.1 235.87,1027.9", + style=dotted]; + Depiction -> CollectionObjectObservation [pos="e,225,967.98 100.72,868.09 121.76,891.74 162.9,934.31 206.28,959 209.32,960.73 212.47,962.35 215.71,963.89", + style=dotted]; + Depiction -> Content [pos="e,264.05,923.97 114.38,864.85 138.48,876.39 174.21,892.84 206.28,905 221.7,910.85 239,916.43 254.04,920.99", + style=dotted]; + Depiction -> Label [pos="e,266.55,874.57 128.46,856.53 166.18,861.46 220.8,868.59 256.55,873.27", + style=dotted]; + Depiction -> Loan [pos="e,266.55,827.43 128.46,845.47 166.18,840.54 220.8,833.41 256.55,828.73", + style=dotted]; + Depiction -> Person [pos="e,266.77,777.23 114.38,837.15 138.48,825.61 174.21,809.16 206.28,797 222.7,790.78 241.23,784.85 256.92,780.14", + style=dotted]; + Depiction -> TaxonDetermination [pos="e,228.63,732.58 100.72,833.91 121.76,810.26 162.9,767.69 206.28,743 210.43,740.64 214.8,738.47 219.29,736.46", + style=dotted]; + Citation -> Source [pos="e,435.56,441 124.23,441 196.79,441 353.97,441 425.28,441", + style=dotted]; + Citation -> CitationTopic [pos="e,247.72,484.01 119.34,449.84 151.29,458.34 200.16,471.35 237.89,481.39", + style=dotted]; + Tag -> Keyword [pos="e,260.02,220 112.31,220 146.95,220 208.48,220 249.94,220", + style=dotted]; + ProtocolRelationship -> Protocol [pos="e,262.5,166 170.49,166 198.75,166 228.97,166 252.3,166", + style=dotted]; + Source -> SubsequentCitation [pos="e,544.23,437.56 489.88,439.89 502.45,439.35 518.18,438.68 533.92,438", + style=invis]; + Source -> OriginCitation [pos="e,565.86,393.05 489.88,428.74 508.56,419.97 534.24,407.9 556.54,397.43", + style=invis]; + Image -> Depiction [pos="e,91.014,832.84 281.64,300.27 264.23,335.52 230.13,406.6 206.28,469 156.57,599.11 111.09,759.53 93.659,823.14"]; + Image -> Citation [pos="e,119.38,432.22 277.34,299.92 256.16,328.57 215.53,378.63 170.28,409 157.86,417.34 142.96,423.92 129.17,428.89"]; + Image -> Identifier [pos="e,128.21,274.81 253.92,277.25 221.31,276.62 174.42,275.71 138.5,275.01"]; + Image -> Tag [pos="e,110.25,226.77 255.21,267.45 216.68,256.64 157.27,239.96 120.11,229.53"]; + Image -> Note [pos="e,111.43,375.67 268.95,295.52 244.98,312.52 206.49,338.14 170.28,355 154.66,362.28 136.53,368.37 121.12,372.91"]; + Image -> ProtocolRelationship [pos="e,144.35,178.97 253.96,269.8 238.03,265.05 220.11,257.81 206.28,247 183.56,229.24 193.31,210.38 170.28,193 165.22,189.18 159.6,185.89 \ +153.73,183.05"]; + Image -> Attribution [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,253.98,287.39 e,127.46,318 243.93,289.82 211.82,297.59 169.88,307.74 137.32,315.62"]; + Image -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,312.42,298.9 e,435.76,422.9 319.04,306.54 342.84,333.85 380.79,375.56 417.28,408 420.61,410.96 424.19,413.92 427.81,416.79", + style=dotted]; + Image -> PinboardItem [pos="e,426.46,144.26 333.54,271.59 350.04,267.13 368.4,259.61 381.28,247 413.26,215.71 388.62,187.34 417.28,153 417.78,152.4 418.3,151.81 \ +418.83,151.23"]; + Image -> Role [pos="e,435.72,28.873 333.83,272.9 350.79,268.69 369.45,261.01 381.28,247 440.14,177.34 365.73,120.22 417.28,45 420.02,41.017 423.54,37.52 \ +427.42,34.481"]; + Image -> SubsequentCitation [pos="e,554.37,416.96 318.88,295.37 343.04,312.34 381.67,338.28 417.28,357 458.59,378.71 507.29,398.86 544.64,413.25"]; + Image -> VerifierRole [pos="e,425.61,90.281 333.88,272.45 350.64,268.15 369.12,260.52 381.28,247 426.56,196.67 377.29,153.62 417.28,99 417.65,98.499 418.03,\ +98.005 418.42,97.519"]; + Image -> Creator [dir=back, + pos="s,330.89,266.57 340.5,263.53 405.64,242.9 523.19,205.68 576.57,188.77", + style=dashed]; + Image -> Project [dir=back, + pos="s,333.86,267.9 343.49,264.63 356.3,260.04 369.74,254.2 381.28,247 400.22,235.19 400.18,226.33 417.28,212 422.83,207.36 429,202.65 \ +434.94,198.33", + style=dashed]; + Image -> Updater [dir=back, + pos="s,332.25,288.8 342.02,291.16 385.64,301.31 451.99,311.67 508.28,299 595.09,279.46 687.15,226.28 731.8,198.09", + style=dashed]; + Image -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,324.37,292.94 e,557.5,366.79 333.4,297.28 357.15,308.56 388.47,322.43 417.28,332 460.05,346.2 509.84,357.4 547.29,364.81"]; + Image -> SledImage [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,333.94,276.59 e,425.16,273.32 343.98,276.23 366.42,275.43 392.86,274.48 415,273.68"]; + CitationTopic -> Topic [pos="e,435.32,496 339.98,496 366.69,496 400.07,496 425.13,496", + style=dotted]; + Role -> Verifier [pos="e,576.4,39.642 489.88,23.015 511.41,27.152 542.24,33.076 566.47,37.733", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,701.93,435 666.32,435 674.65,435 683.25,435 691.71,435", + style=dotted]; + VerifierRole -> Verifier [pos="e,576.64,50.313 504.42,64.19 524.07,60.415 547.5,55.912 566.73,52.218", + style=dotted]; + Creator -> Updater [pos="e,730.22,180 633.99,180 658.02,180 693.06,180 719.98,180", + style=invis]; + Project -> Creator [pos="e,576.67,180 490.54,180 512.04,180 542.5,180 566.49,180", + style=invis]; +} diff --git a/data/import_datasets_model_er.dot b/data/import_datasets_model_er.dot new file mode 100644 index 00000000..64d61a35 --- /dev/null +++ b/data/import_datasets_model_er.dot @@ -0,0 +1,174 @@ +digraph ImportDataset { + graph [bb="0,0,594.66,484.91", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + ImportDataset [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#import-dataset", + label=ImportDataset, + pos="70.832,235.91", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.9675]; + DatasetRecordField [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#dataset-record-field", + label=DatasetRecordField, + pos="239.66,466.91", + shape=box, + style=filled, + target=_top, + width=1.7222]; + DatasetRecord [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#dataset-record", + label=DatasetRecord, + pos="239.66,412.91", + shape=box, + style=filled, + target=_top, + width=1.3333]; + OriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="239.66,358.91", + shape=box, + style=filled, + target=_top, + width=1.6667]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="239.66,304.91", + shape=box, + style=filled, + target=_top, + width=1.2639]; + RelatedOriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-origin-relationship", + label=RelatedOriginRelationship, + pos="418.16,358.91", + shape=box, + style=filled, + target=_top, + width=2.2361]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="239.66,212.91", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="239.66,158.91", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="418.16,185.91", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="418.16,66.906", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="239.66,66.906", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="564.66,66.906", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + ImportDataset -> DatasetRecordField [pos="e,189.48,448.83 77.902,257.94 90.224,298.92 121.85,387.44 177.66,439.91 178.77,440.95 179.93,441.95 181.12,442.92"]; + ImportDataset -> DatasetRecord [pos="e,191.5,395.2 82.544,258.1 98.997,290.16 133.29,349.54 177.66,385.91 179.24,387.2 180.89,388.44 182.6,389.64"]; + ImportDataset -> OriginRelationship [pos="e,193.49,340.89 92.041,257.94 112.2,278.98 144.81,310.53 177.66,331.91 179.83,333.32 182.08,334.68 184.39,336.01"]; + ImportDataset -> PinboardItem [pos="e,194.98,286.84 114.8,253.68 136.34,262.58 162.63,273.46 185.44,282.89"]; + ImportDataset -> RelatedOriginRelationship [pos="e,397.09,340.7 141.67,240.82 188.41,245.98 250.49,256.5 301.66,277.91 334.46,291.63 367.21,315.83 389.41,334.22"]; + ImportDataset -> Role [pos="e,212.34,216.53 141.62,226.29 162.52,223.4 184.59,220.36 202.39,217.91"]; + ImportDataset -> VerifierRole [pos="e,197.91,176.78 111.18,217.04 131.05,207.57 155.58,196.01 177.66,185.91 181.23,184.27 184.93,182.6 188.65,180.92"]; + ImportDataset -> Creator [dir=back, + pos="s,88.467,213.84 94.949,205.93 114.55,182.5 144.68,150.83 177.66,131.91 196.26,121.24 330.66,87.879 389.6,73.552", + style=dashed]; + ImportDataset -> Project [dir=back, + pos="s,84.658,213.84 90.116,205.06 109.08,175.06 141.04,129.63 177.66,98.906 187.83,90.374 200.65,83.224 211.91,77.863", + style=dashed]; + ImportDataset -> Updater [dir=back, + pos="s,76.11,213.75 78.473,203.75 89.853,157.96 117.89,75.562 177.66,39.906 300.19,-33.181 358.75,12.003 498.66,39.906 510.77,42.32 523.44,\ +47.032 534.34,51.853", + style=dashed]; + OriginRelationship -> RelatedOriginRelationship [pos="e,337.36,358.91 299.93,358.91 308.75,358.91 318.01,358.91 327.3,358.91", + style=invis]; + Role -> Verifier [pos="e,389.56,190.13 266.71,208.92 296.51,204.36 345.59,196.86 379.54,191.66", + style=invis]; + VerifierRole -> Verifier [pos="e,389.63,181.69 281.6,165.17 311.17,169.69 350.79,175.75 379.56,180.15", + style=dotted]; + Creator -> Updater [pos="e,534.51,66.906 446.68,66.906 468.68,66.906 499.8,66.906 524.41,66.906", + style=invis]; + Project -> Creator [pos="e,389.52,66.906 267.47,66.906 297.23,66.906 345.5,66.906 379.15,66.906", + style=invis]; +} diff --git a/data/labels_model_er.dot b/data/labels_model_er.dot new file mode 100644 index 00000000..7790e6bd --- /dev/null +++ b/data/labels_model_er.dot @@ -0,0 +1,203 @@ +digraph Label { + graph [bb="0,0,613.74,328", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="45.496,212", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="45.496,100", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="45.496,156", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + } + subgraph supporting { + Label [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#label", + label=Label, + pos="164.06,156", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.0296]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="164.06,214", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="164.06,98", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="330.93,310", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="330.93,256", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="330.93,202", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="489.24,229", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="489.24,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="330.93,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="583.74,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Depiction -> Image [pos="e,136.83,213.55 91.228,212.77 102.9,212.97 115.35,213.18 126.54,213.37", + style=dotted]; + Tag -> Keyword [pos="e,130.31,98.562 72.654,99.551 86.64,99.311 104.21,99.01 120.14,98.736", + style=dotted]; + Label -> Depiction [pos="e,75.01,198.3 134.03,169.95 118.96,177.19 100.37,186.12 84.203,193.88"]; + Label -> Tag [pos="e,67.875,110.27 133.91,142 116.61,133.68 94.685,123.15 77.125,114.72"]; + Label -> Note [pos="e,73.53,156 126.89,156 113.16,156 97.508,156 83.683,156"]; + Label -> PinboardItem [pos="e,285.12,305.51 188.52,173.13 193.13,177.29 197.62,181.99 201.12,187 227.22,224.36 203.7,252.02 237.12,283 247.62,292.73 261.42,\ +298.98 275.17,302.98"]; + Label -> Role [pos="e,303.84,252.54 186.9,173.84 191.71,178.02 196.69,182.56 201.12,187 218.49,204.4 216.46,215.68 237.12,229 254.18,240 275.83,246.63 \ +293.93,250.57"]; + Label -> VerifierRole [pos="e,289.2,190.64 201.24,166.09 224.17,172.49 254.16,180.86 279.42,187.91"]; + Label -> Creator [dir=back, + pos="s,201.34,157.06 211.35,157.15 263.84,157.42 351.63,154.7 424.74,137 436.85,134.07 449.6,129.06 460.47,124.15", + style=dashed]; + Label -> Project [dir=back, + pos="s,201.24,145.91 210.99,143.18 240.73,134.89 278.41,124.37 303.3,117.43", + style=dashed]; + Label -> Updater [dir=back, + pos="s,186.9,138.16 194.6,131.26 196.84,129.18 199.04,127.08 201.12,125 218.49,107.6 214.78,93.273 237.12,83 350.43,30.884 395.43,58.607 \ +517.74,83 529.85,85.414 542.52,90.126 553.42,94.947", + style=dashed]; + "Objects with Labels" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with label", + label="Objects with Labels", + pos="330.93,18", + shape=hexagon, + style=filled, + target=_top, + width=2.6059]; + Label -> "Objects with Labels" [dir=back, + pos="s,188.19,138.63 195.41,131.65 197.45,129.5 199.38,127.27 201.12,125 223.62,95.658 209.51,74.592 237.12,50 246.54,41.611 258.27,35.398 \ +270.18,30.804", + style=dashed]; + Role -> Verifier [pos="e,460.68,233.76 358.09,251.48 383.41,247.11 422.03,240.44 450.64,235.5", + style=invis]; + VerifierRole -> Verifier [pos="e,460.59,224.22 372.59,209.02 396.7,213.19 427.06,218.43 450.61,222.5", + style=dotted]; + Creator -> Updater [pos="e,553.58,110 517.75,110 525.77,110 534.7,110 543.32,110", + style=invis]; + Project -> Creator [pos="e,460.54,110 358.45,110 383.63,110 421.75,110 450.17,110", + style=invis]; +} diff --git a/data/languages_model_er.dot b/data/languages_model_er.dot new file mode 100644 index 00000000..7288d1f4 --- /dev/null +++ b/data/languages_model_er.dot @@ -0,0 +1,143 @@ +digraph Language { + graph [bb="0,0,397.49,388.07", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="221.99,369.57", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + Language [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#language", + label=Language, + pos="53.244,179.57", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.479]; + AlternateValueTranslation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-translation", + label=AlternateValueTranslation, + pos="221.99,314.57", + shape=box, + style=filled, + target=_top, + width=2.2083]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="221.99,260.57", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="221.99,206.57", + shape=box, + style=filled, + target=_top, + width=0.75]; + Serial [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#serial", + label=Serial, + pos="221.99,152.57", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="221.99,98.574", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="367.49,152.57", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="221.99,44.574", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="367.49,44.574", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Language -> Source [pos="e,194.91,365.23 60.629,201.72 71.706,236.35 97.696,303.28 142.49,341.57 154.55,351.89 170.69,358.5 185.2,362.7"]; + Language -> AlternateValueTranslation [pos="e,157.74,296.38 67.067,201.71 82.196,226.01 109.51,264.6 142.49,287.57 144.41,288.91 146.4,290.19 148.45,291.41"]; + Language -> PinboardItem [pos="e,176.31,247.09 82.374,198.97 99.285,210.07 121.53,223.7 142.49,233.57 150.17,237.19 158.48,240.58 166.72,243.64"]; + Language -> Role [pos="e,194.97,202.36 106.55,188.04 132.06,192.17 162.09,197.04 184.99,200.75"]; + Language -> Serial [pos="e,194.97,156.79 106.55,171.11 132.06,166.97 162.09,162.11 184.99,158.4"]; + Language -> VerifierRole [pos="e,180.39,110.66 82.374,160.18 99.285,149.08 121.53,135.45 142.49,125.57 151.49,121.34 161.33,117.42 170.92,113.96"]; + Language -> Creator [dir=back, + pos="s,67.067,157.43 72.46,148.99 88.239,124.89 113.12,92.037 142.49,71.574 157.74,60.947 177.56,54.174 193.46,50.069", + style=dashed]; + Language -> Updater [dir=back, + pos="s,58.728,157.57 61.193,147.86 71.541,109.25 95.095,45.727 142.49,17.574 204.12,-19.034 292.1,10.493 337.27,30.309", + style=dashed]; + Role -> Verifier [pos="e,338.81,164.52 249.3,197.98 264.62,192.87 284.24,186.12 301.49,179.57 310.65,176.1 320.44,172.16 329.58,168.37", + style=invis]; + VerifierRole -> Verifier [pos="e,338.81,140.63 263.5,111.97 275.76,116.17 289.23,120.92 301.49,125.57 310.65,129.05 320.44,132.99 329.58,136.77", + style=dotted]; + Creator -> Updater [pos="e,337.43,44.574 250.66,44.574 272.37,44.574 302.87,44.574 327.12,44.574", + style=invis]; +} diff --git a/data/loan_items_model_er.dot b/data/loan_items_model_er.dot new file mode 100644 index 00000000..294651aa --- /dev/null +++ b/data/loan_items_model_er.dot @@ -0,0 +1,202 @@ +digraph LoanItem { + graph [bb="0,0,712.43,382", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,240", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,130", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,186", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + } + subgraph supporting { + LoanItem [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#loan-item", + label=LoanItem, + pos="207.53,187", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.479]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="207.53,129", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="410.1,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="410.1,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="410.1,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="587.93,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="587.93,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Loan [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan", + label=Loan, + pos="410.1,164", + shape=box, + style=filled, + target=_top, + width=0.75]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="410.1,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="682.43,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,173.93,129.22 86.316,129.82 107.86,129.67 138.82,129.46 163.92,129.29", + style=dotted]; + LoanItem -> DataAttribute [pos="e,97.844,226.35 165.88,201.72 147.75,208.28 126.27,216.06 107.43,222.88"]; + LoanItem -> Tag [pos="e,83.018,138.91 167.3,171.73 143.94,162.63 114.65,151.22 92.594,142.63"]; + LoanItem -> Note [pos="e,87.336,186.19 154,186.64 135.32,186.51 114.68,186.37 97.519,186.26"]; + LoanItem -> PinboardItem [pos="e,364.33,361.4 215.31,209.15 226.63,242.26 252.59,304.27 296.78,337 313.32,349.25 334.64,356.02 354.26,359.73"]; + LoanItem -> Role [pos="e,382.96,308.07 222.99,209.21 238.56,231.32 265.36,264.52 296.78,283 320.02,296.67 349.82,303.43 372.88,306.76"]; + LoanItem -> VerifierRole [pos="e,368.45,245.68 244.65,203.29 260.48,210.13 279.38,217.9 296.78,224 316.74,231 339.08,237.61 358.55,242.98"]; + LoanItem -> Creator [dir=back, + pos="s,254.32,199.81 264.46,202.15 330.09,216.79 440.48,231.37 523.43,191 550.1,178.02 568.88,147.81 578.79,128.18", + style=dashed]; + LoanItem -> Loan [dir=back, + pos="s,260.97,180.99 271.34,179.8 308.98,175.48 354.84,170.22 383,166.99", + style=dashed]; + LoanItem -> Project [dir=back, + pos="s,239.63,168.82 248.42,163.73 269.26,151.69 291.51,139.08 296.78,137 325.14,125.81 359.42,118.39 382.59,114.21", + style=dashed]; + LoanItem -> Updater [dir=back, + pos="s,243.25,170.27 251.67,164.3 254.95,161.73 258.04,158.96 260.78,156 285.35,129.45 266.06,102.1 296.78,83 357.1,45.49 546.77,69.107 \ +616.43,83 628.53,85.414 641.2,90.126 652.11,94.947", + style=dashed]; + "Objects with Loan items" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with loan item", + label="Objects with Loan items", + pos="410.1,18", + shape=hexagon, + style=filled, + target=_top, + width=3.1479]; + LoanItem -> "Objects with Loan items" [dir=back, + pos="s,244.37,170.41 252.64,164.23 255.62,161.7 258.38,158.96 260.78,156 292.12,117.35 260.73,84.293 296.78,50 306.62,40.636 319.01,33.982 \ +331.93,29.26", + style=dashed]; + Role -> Verifier [pos="e,559.26,287.25 437.42,305.96 467.12,301.4 515.64,293.95 549.32,288.77", + style=invis]; + VerifierRole -> Verifier [pos="e,559.24,278.75 451.88,262.26 481.25,266.77 520.57,272.81 549.21,277.21", + style=dotted]; + Creator -> Updater [pos="e,652.26,110 616.43,110 624.46,110 633.39,110 642,110", + style=invis]; + Project -> Creator [pos="e,559.39,110 437.81,110 467.45,110 515.54,110 549.06,110", + style=invis]; +} diff --git a/data/loans_model_er.dot b/data/loans_model_er.dot new file mode 100644 index 00000000..46468ddd --- /dev/null +++ b/data/loans_model_er.dot @@ -0,0 +1,328 @@ +digraph Loan { + graph [bb="0,0,623.2,520.67", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,336.67", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="59.145,174.67", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="59.145,282.67", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,120.67", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,228.67", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + } + subgraph supporting { + Loan [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#loan", + label=Loan, + pos="189.24,232.67", + shape=doubleoctagon, + style=filled, + target=_top, + width=0.97094]; + Documentation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="324.2,502.67", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="475.7,502.67", + shape=box, + style=filled, + target=_top, + width=1.0278]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="189.24,174.67", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="189.24,120.67", + shape=box, + style=filled, + target=_top, + width=0.93056]; + LoanItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan-item", + label=LoanItem, + pos="324.2,448.67", + shape=box, + style=filled, + target=_top, + width=0.97222]; + LoanRecipientRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan-recipient-role", + label=LoanRecipientRole, + pos="324.2,394.67", + shape=box, + style=filled, + target=_top, + width=1.6944]; + LoanRecipient [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan-recipient", + label=LoanRecipient, + pos="475.7,394.67", + shape=box, + style=filled, + target=_top, + width=1.3333]; + LoanSupervisorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan-supervisor-role", + label=LoanSupervisorRole, + pos="324.2,340.67", + shape=box, + style=filled, + target=_top, + width=1.7778]; + LoanSupervisor [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan-supervisor", + label=LoanSupervisor, + pos="475.7,340.67", + shape=box, + style=filled, + target=_top, + width=1.4306]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="324.2,286.67", + shape=box, + style=filled, + target=_top, + width=0.75]; + Person [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#person", + label=Person, + pos="475.7,286.67", + shape=box, + style=filled, + target=_top, + width=0.75]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="475.7,178.67", + shape=box, + style=filled, + target=_top, + width=1.2639]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="324.2,232.67", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="475.7,232.67", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="324.2,178.67", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="475.7,48.666", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="324.2,48.666", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="593.2,48.666", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Depiction -> Image [pos="e,161.95,174.67 104.95,174.67 120.27,174.67 137.22,174.67 151.81,174.67", + style=dotted]; + Tag -> Keyword [pos="e,155.67,120.67 86.376,120.67 103.38,120.67 125.92,120.67 145.47,120.67", + style=dotted]; + Loan -> DataAttribute [pos="e,96.462,322.53 173.16,253.42 160.11,270.26 139.97,293.72 118.29,309.67 114.35,312.56 110.05,315.26 105.63,317.74"]; + Loan -> Depiction [pos="e,89.855,188.12 159.58,219.69 141.74,211.61 118.57,201.12 99.085,192.3"]; + Loan -> Identifier [pos="e,91.154,270.56 157.52,244.66 140.42,251.33 118.92,259.72 100.48,266.92"]; + Loan -> Tag [pos="e,83.925,128.29 167.35,215.07 162.84,210.87 158.24,206.27 154.29,201.67 135.5,179.78 140.19,166.44 118.29,147.67 110.97,141.39 101.94,\ +136.27 93.201,132.24"]; + Loan -> Note [pos="e,87.311,229.51 154.26,231.6 136.76,231.06 115.39,230.39 97.432,229.83"]; + Loan -> Documentation [pos="e,273.5,486.64 190.54,254.75 192.34,301.32 202.82,410.66 260.2,475.67 261.73,477.41 263.4,479.04 265.17,480.57"]; + Loan -> LoanItem [pos="e,289.03,439.78 192.75,254.88 198.22,293.57 214.63,373.74 260.2,421.67 265.67,427.43 272.58,432.02 279.8,435.66"]; + Loan -> LoanRecipientRole [pos="e,272.09,376.55 196.5,254.71 205.86,284.09 226.17,336.04 260.2,367.67 261.31,368.7 262.48,369.71 263.68,370.67"]; + Loan -> LoanSupervisorRole [pos="e,274.81,322.67 204.47,254.01 217.28,271.89 237.55,297.1 260.2,313.67 262.03,315.01 263.94,316.3 265.91,317.54"]; + Loan -> Role [pos="e,297.18,276.1 220.41,244.92 240.39,253.03 266.67,263.71 287.66,272.23"]; + Loan -> PinboardItem [pos="e,434.77,160.63 211.01,214.96 215.53,210.77 220.16,206.2 224.2,201.67 242.41,181.21 235.83,164.15 260.2,151.67 312.02,125.12 379.79,\ +140.66 425.16,157.03"]; + Loan -> VerifierRole [pos="e,282.45,232.67 224.48,232.67 239,232.67 256.22,232.67 272.18,232.67"]; + Loan -> Version [pos="e,294.97,190.13 220.41,220.41 239.73,212.57 264.94,202.33 285.56,193.95"]; + Loan -> Creator [dir=back, + pos="s,212.57,216.07 219.66,208.35 221.35,206.21 222.89,203.98 224.2,201.67 264.32,130.63 197.1,73.39 260.2,21.666 314.04,-22.475 402.48,\ +11.53 447.1,33.608", + style=dashed]; + Loan -> Project [dir=back, + pos="s,212.22,215.86 219.43,208.21 221.17,206.1 222.79,203.91 224.2,201.67 254,154.13 224.27,123.76 260.2,80.666 269.55,69.454 283.82,\ +61.751 296.41,56.717", + style=dashed]; + Loan -> Updater [dir=back, + pos="s,211.51,215.37 218.95,207.88 220.81,205.85 222.58,203.77 224.2,201.67 245.29,174.25 232.66,153.6 260.2,132.67 356.79,59.221 411.35,\ +111.76 527.2,75.666 539.21,71.922 552.08,66.82 563.17,62.059", + style=dashed]; + Documentation -> Document [pos="e,438.37,502.67 374.98,502.67 392.14,502.67 411.29,502.67 428.18,502.67", + style=dotted]; + LoanRecipientRole -> LoanRecipient [pos="e,427.43,394.67 385.57,394.67 396.03,394.67 406.87,394.67 417.24,394.67", + style=dotted]; + LoanSupervisorRole -> LoanSupervisor [pos="e,423.88,340.67 388.6,340.67 396.97,340.67 405.54,340.67 413.87,340.67", + style=dotted]; + Role -> Person [pos="e,448.45,286.67 351.24,286.67 375.31,286.67 411.33,286.67 438.26,286.67", + style=dotted]; + Role -> Verifier [pos="e,447.18,242.6 351.24,277.26 375.15,268.62 410.86,255.73 437.72,246.02", + style=invis]; + VerifierRole -> Verifier [pos="e,447.12,232.67 366.05,232.67 388.19,232.67 415.36,232.67 437,232.67", + style=dotted]; + Version -> PinboardItem [pos="e,429.95,178.67 353.32,178.67 372.02,178.67 397.21,178.67 419.79,178.67", + style=invis]; + Creator -> Updater [pos="e,563.15,48.666 504.36,48.666 518.92,48.666 537.03,48.666 553.01,48.666", + style=invis]; + Project -> Creator [pos="e,447.19,48.666 351.92,48.666 375.65,48.666 410.57,48.666 437.11,48.666", + style=invis]; +} diff --git a/data/namespaces_model_er.dot b/data/namespaces_model_er.dot new file mode 100644 index 00000000..c31e6f82 --- /dev/null +++ b/data/namespaces_model_er.dot @@ -0,0 +1,133 @@ +digraph Namespace { + graph [bb="0,0,488.35,234.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,117.37", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + } + subgraph core { + } + subgraph supporting { + Namespace [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#namespace", + label=Namespace, + pos="182.07,117.37", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.6744]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="442.85,198.37", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="319.85,144.37", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="319.85,90.373", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="442.85,117.37", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="319.85,198.37", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="319.85,36.373", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="442.85,36.373", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Namespace -> Identifier [pos="e,85.799,117.37 122,117.37 113.34,117.37 104.47,117.37 95.961,117.37"]; + Namespace -> PinboardItem [pos="e,403.9,216.5 194.99,139.83 210.3,166 239.61,207.89 278.35,225.37 315.11,241.96 360.63,232.29 394.3,220.14"]; + Namespace -> Role [pos="e,292.6,139.15 239.87,128.67 254.32,131.54 269.46,134.55 282.57,137.16"]; + Namespace -> VerifierRole [pos="e,277.97,98.502 239.87,106.08 249.16,104.23 258.74,102.33 267.88,100.51"]; + Namespace -> Version [pos="e,290.59,181.51 215.25,136.57 235.29,148.52 261.12,163.94 281.98,176.38"]; + Namespace -> Creator [dir=back, + pos="s,215.25,98.178 223.93,92.997 245.62,80.059 271.71,64.498 291.04,52.965", + style=dashed]; + Namespace -> Updater [dir=back, + pos="s,194.99,94.918 200.3,86.16 216.59,60.183 243.69,25.015 278.35,9.3735 322.41,-10.509 379.05,7.3322 412.79,21.947", + style=dashed]; + Role -> Verifier [pos="e,413.96,123.6 347.11,138.51 363.76,134.8 385.58,129.93 404.08,125.8", + style=invis]; + VerifierRole -> Verifier [pos="e,414.11,111.18 361.48,99.439 375.27,102.52 390.6,105.94 404.15,108.96", + style=dotted]; + Version -> PinboardItem [pos="e,396.88,198.37 348.92,198.37 360.15,198.37 373.51,198.37 386.54,198.37", + style=invis]; + Creator -> Updater [pos="e,412.53,36.373 348.61,36.373 364.44,36.373 384.55,36.373 402.04,36.373", + style=invis]; +} diff --git a/data/notes_model_er.dot b/data/notes_model_er.dot new file mode 100644 index 00000000..e3dafa1e --- /dev/null +++ b/data/notes_model_er.dot @@ -0,0 +1,163 @@ +digraph Note { + graph [bb="0,0,475.12,382", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Note [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#note", + label=Note, + pos="34.25,187", + shape=doubleoctagon, + style=filled, + target=_top, + width=0.95139]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="34.25,85", + shape=oval, + style=filled, + target=_top, + width=0.75]; + } + subgraph core { + } + subgraph supporting { + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="195.31,18", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="195.31,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="195.31,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="195.31,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="350.62,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="350.62,164", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="195.31,164", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="445.12,164", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Note -> Tag [pos="e,34.25,103.33 34.25,164.77 34.25,147.65 34.25,130.53 34.25,113.41"]; + Note -> PinboardItem [pos="e,149.52,358.27 39.445,209.04 46.815,241.73 65.196,302.86 104.5,337 114.49,345.68 127.19,351.57 139.87,355.56"]; + Note -> Role [pos="e,167.95,306.69 45.863,209.33 57.364,231.19 77.72,263.92 104.5,283 120.24,294.21 140.69,300.83 158.1,304.71"]; + Note -> VerifierRole [pos="e,153.57,242.92 60.452,201.63 73.39,208.84 89.541,217.38 104.5,224 117.05,229.55 130.88,234.86 143.85,239.5"]; + Note -> Creator [dir=back, + pos="s,68.543,192.04 78.761,193.32 129.21,199.35 214.59,205.58 286.12,191 298.33,188.51 311.1,183.59 321.95,178.62", + style=dashed]; + Note -> Project [dir=back, + pos="s,68.594,182.18 78.676,180.72 107.1,176.61 143.33,171.37 167.59,167.86", + style=dashed]; + Note -> Updater [dir=back, + pos="s,53.984,168.43 61.822,161.79 73.875,152.05 88.909,142.04 104.5,137 220.64,99.456 259.42,113.13 379.12,137 391.22,139.41 403.89,\ +144.13 414.8,148.95", + style=dashed]; + "Objects with Notes" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with note", + label="Objects with Notes", + pos="195.31,72", + shape=hexagon, + style=filled, + target=_top, + width=2.5225]; + Note -> "Objects with Notes" [dir=back, + pos="s,48.666,165.11 54.341,156.86 66.774,139.34 84.392,118.02 104.5,104 115.09,96.616 127.57,90.761 139.79,86.188", + style=dashed]; + Tag -> Keyword [pos="e,161.66,25.858 54.03,72.554 67.619,63.951 86.658,52.711 104.5,45 119.58,38.483 136.72,32.909 151.96,28.547", + style=dotted]; + Role -> Verifier [pos="e,321.93,287.88 222.32,305.42 246.86,301.1 283.94,294.57 311.76,289.67", + style=invis]; + VerifierRole -> Verifier [pos="e,321.84,278.11 236.99,263.16 260.22,267.26 289.16,272.35 311.88,276.35", + style=dotted]; + Creator -> Updater [pos="e,414.95,164 379.12,164 387.15,164 396.08,164 404.69,164", + style=invis]; + Project -> Creator [pos="e,321.93,164 223.01,164 247.58,164 284.28,164 311.85,164", + style=invis]; +} diff --git a/data/observation_matrices_model_er.dot b/data/observation_matrices_model_er.dot new file mode 100644 index 00000000..b5cd7d39 --- /dev/null +++ b/data/observation_matrices_model_er.dot @@ -0,0 +1,382 @@ +digraph ObservationMatrix { + graph [bb="0,0,1074.1,662.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,589.5", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,430.5", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="59.145,376.5", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,268.5", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,322.5", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="882.13,73.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="1037.1,128.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="882.13,18.5", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="452.63,589.5", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + ObservationMatrix [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="242.71,351.5", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.4561]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="242.71,644.5", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ObservationMatrixRow [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-row", + label=ObservationMatrixRow, + pos="669.13,128.5", + shape=box, + style=filled, + target=_top, + width=2.0278]; + ObservationMatrixColumn [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-column", + label=ObservationMatrixColumn, + pos="882.13,128.5", + shape=box, + style=filled, + target=_top, + width=2.2778]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="242.71,268.5", + shape=box, + style=filled, + target=_top, + width=0.93056]; + ObservationMatrixColumnItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-column-item", + label=ObservationMatrixColumnItem, + pos="669.13,182.5", + shape=box, + style=filled, + target=_top, + width=2.6389]; + ObservationMatrixRowItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-row-item", + label=ObservationMatrixRowItem, + pos="452.63,144.5", + shape=box, + style=filled, + target=_top, + width=2.375]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="452.63,90.5", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="452.63,274.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="669.13,512.5", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="882.13,512.5", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="452.63,644.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="452.63,328.5", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="669.13,301.5", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="669.13,420.5", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="452.63,420.5", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="882.13,420.5", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="669.13,581.5", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,425.54,589.5 98.395,589.5 173.95,589.5 341.39,589.5 415.33,589.5", + style=dotted]; + Citation -> CitationTopic [pos="e,196.71,630.87 92.187,599.21 118.37,607.14 155.97,618.53 186.92,627.9", + style=dotted]; + Tag -> Keyword [pos="e,208.98,268.5 86.158,268.5 115.48,268.5 163.62,268.5 198.59,268.5", + style=dotted]; + Source -> SubsequentCitation [pos="e,617.87,530.54 479.93,580.06 511.69,568.66 566.09,549.13 608.26,533.99", + style=invis]; + Source -> OriginCitation [pos="e,621.22,583.25 479.93,588.52 512.38,587.31 568.47,585.22 611,583.63", + style=invis]; + ObservationMatrix -> Citation [pos="e,73.202,572.38 224.91,373.52 191.12,417.82 115.11,517.45 79.385,564.28"]; + ObservationMatrix -> DataAttribute [pos="e,93.87,415.83 196.18,371.31 167.76,383.68 131.38,399.51 103.39,411.68"]; + ObservationMatrix -> Identifier [pos="e,100.44,370.95 158.01,363.02 141.73,365.27 125.14,367.55 110.36,369.59"]; + ObservationMatrix -> Tag [pos="e,82.046,278.51 197.9,331.47 165.01,316.44 120.77,296.21 91.399,282.79"]; + ObservationMatrix -> Note [pos="e,86.546,326.72 163,338.93 139.88,335.24 115.7,331.37 96.597,328.32"]; + ObservationMatrix -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,251.44,373.57 e,425.3,583.97 255.07,383 272.61,427.47 310.29,508.57 367.13,556.5 380.99,568.19 399.47,576.04 415.61,581.14", + style=dotted]; + ObservationMatrix -> ObservationMatrixRow [pos="e,642.45,110.26 289.66,331.81 305.17,322.92 321.09,310.9 331.13,295.5 388.09,208.08 287.89,131.39 367.13,63.5 444.32,-2.6415 572.91,\ +65.333 633.95,104.68"]; + ObservationMatrix -> ObservationMatrixColumn [pos="e,861.8,146.62 283.28,330.27 299.08,320.78 316.87,308.75 331.13,295.5 350.67,277.35 343.87,260.55 367.13,247.5 444.42,204.13 680.89,\ +239.93 764.13,209.5 798.23,197.03 831.73,172.19 854.09,153.28"]; + ObservationMatrix -> ObservationMatrixColumnItem [pos="e,573.94,182.45 286.2,331.02 301.87,321.86 318.8,309.86 331.13,295.5 356.8,265.61 335.28,237.69 367.13,214.5 397.76,192.2 489.41,\ +184.87 563.6,182.72"]; + ObservationMatrix -> ObservationMatrixRowItem [pos="e,385.1,162.65 287.61,331.53 303.27,322.5 319.82,310.45 331.13,295.5 364.45,251.43 329.41,216.88 367.13,176.5 370.02,173.4 373.24,\ +170.61 376.69,168.08"]; + ObservationMatrix -> PinboardItem [pos="e,406.74,95.696 289.28,331.56 304.75,322.64 320.74,310.67 331.13,295.5 376.72,228.9 313.27,177.62 367.13,117.5 375,108.72 385.72,\ +102.77 396.88,98.754"]; + ObservationMatrix -> Role [pos="e,425.57,282.27 289.69,331.91 312.77,322.32 341.26,310.86 367.13,301.5 382.9,295.8 400.54,290.06 415.6,285.35"]; + ObservationMatrix -> SubsequentCitation [pos="e,607.88,514.49 259.67,373.6 280.86,401.07 321,447.08 367.13,469.5 440.21,505.02 534.23,513.37 597.59,514.38"]; + ObservationMatrix -> VerifierRole [pos="e,410.86,333.01 331.28,341.81 355.03,339.19 379.95,336.43 400.91,334.11"]; + ObservationMatrix -> Creator [dir=back, + pos="s,263.35,373.76 270.37,380.97 293.39,404.05 328.9,434.38 367.13,447.5 463.16,480.45 585.98,448.16 640.24,430.43", + style=dashed]; + ObservationMatrix -> Project [dir=back, + pos="s,297.52,369.36 307.09,372.53 346.61,385.65 395.41,401.84 424.99,411.66", + style=dashed]; + ObservationMatrix -> Updater [dir=back, + pos="s,331.18,354.65 341.44,355.12 446.4,360 617.84,370.84 764.13,393.5 794.41,398.19 828.49,406.4 852.03,412.53", + style=dashed]; + ObservationMatrix -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,255.43,373.77 e,621.5,573.3 260.51,382.61 281.03,417.61 319.03,473.59 367.13,504.5 407.27,530.3 535.7,557.22 611.21,571.38"]; + CitationTopic -> Topic [pos="e,425.6,644.5 288.82,644.5 326.71,644.5 380.13,644.5 415.31,644.5", + style=dotted]; + ObservationMatrixRow -> CollectionObject [pos="e,827.61,87.449 739.22,110.49 764.46,103.91 792.88,96.503 817.62,90.055", + style=dotted]; + ObservationMatrixRow -> Otu [pos="e,854.96,25.439 694.47,110.36 719.83,92.101 761.21,64.057 800.13,45.5 814.34,38.723 830.7,32.921 844.98,28.452", + style=dotted]; + ObservationMatrixRow -> ObservationMatrixColumn [pos="e,800.01,128.5 742.15,128.5 757.43,128.5 773.75,128.5 789.64,128.5", + style=invis]; + ObservationMatrixColumn -> Descriptor [pos="e,999.97,128.5 964.56,128.5 973.19,128.5 981.74,128.5 989.76,128.5", + style=dotted]; + ObservationMatrixRowItem -> ObservationMatrixRow [pos="e,596.08,133.87 538.4,138.18 554.06,137.01 570.39,135.79 585.97,134.63", + style=invis]; + ObservationMatrixRowItem -> ObservationMatrixColumnItem [pos="e,574.06,165.84 538.4,159.52 546.82,161.01 555.43,162.54 564.01,164.06", + style=invis]; + Role -> Verifier [pos="e,640.59,298.03 479.93,277.81 517.65,282.56 587.32,291.33 630.49,296.76", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,823.77,512.5 730.31,512.5 756.34,512.5 786.91,512.5 813.71,512.5", + style=dotted]; + VerifierRole -> Verifier [pos="e,640.32,305 494.23,323.39 533.3,318.47 591.94,311.09 630.13,306.28", + style=dotted]; + Creator -> Updater [pos="e,851.84,420.5 697.71,420.5 734.48,420.5 799.76,420.5 841.71,420.5", + style=invis]; + Project -> Creator [pos="e,640.38,420.5 480.36,420.5 518.13,420.5 587.28,420.5 630.3,420.5", + style=invis]; +} diff --git a/data/observation_matrix_column_items_model_er.dot b/data/observation_matrix_column_items_model_er.dot new file mode 100644 index 00000000..e3195fe2 --- /dev/null +++ b/data/observation_matrix_column_items_model_er.dot @@ -0,0 +1,188 @@ +digraph ObservationMatrixColumnItem { + graph [bb="0,0,742.12,324.89", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,205.89", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,95.893", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,151.89", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + } + subgraph supporting { + ObservationMatrixColumnItem [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#observation-matrix-column-item", + label=ObservationMatrixColumnItem, + pos="259.46,152.89", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.824]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="259.46,94.893", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="493.12,306.89", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="493.12,252.89", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="493.12,198.89", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="617.62,225.89", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="617.62,52.893", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="493.12,106.89", + shape=box, + style=filled, + target=_top, + width=1.6667]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="493.12,52.893", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="712.12,52.893", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,225.61,95.046 70.205,95.771 106.39,95.602 171.95,95.297 215.35,95.094", + style=dotted]; + ObservationMatrixColumnItem -> Identifier [pos="e,80.293,196.9 181.32,171.95 150.78,179.49 116.68,187.91 90.093,194.48"]; + ObservationMatrixColumnItem -> Tag [pos="e,66.888,104.23 173.2,134.93 156.1,130.94 138.31,126.51 121.79,121.89 106.77,117.69 90.351,112.33 76.482,107.57"]; + ObservationMatrixColumnItem -> Note [pos="e,71.07,152.02 121.39,152.25 106.83,152.19 93.068,152.12 81.292,152.07"]; + ObservationMatrixColumnItem -> PinboardItem [pos="e,449.68,288.75 286.78,174.93 319.66,201.81 378.27,247.63 433.12,279.89 435.58,281.34 438.13,282.76 440.72,284.15"]; + ObservationMatrixColumnItem -> Role [pos="e,465.89,241.57 311.58,174.96 355.56,193.95 417.85,220.84 456.58,237.55"]; + ObservationMatrixColumnItem -> VerifierRole [pos="e,451.6,190.85 348.7,170.42 380.11,176.65 414.39,183.46 441.55,188.85"]; + ObservationMatrixColumnItem -> Creator [dir=back, + pos="s,376.51,166.69 386.51,166.88 440.59,167.43 502.77,160.45 553.12,133.89 579.2,120.14 598.04,90.465 608.14,71.108", + style=dashed]; + ObservationMatrixColumnItem -> ObservationMatrix [dir=back, + pos="s,348.7,135.37 358.67,133.39 383.9,128.38 410.26,123.15 432.83,118.67", + style=dashed]; + ObservationMatrixColumnItem -> Project [dir=back, + pos="s,362.92,137.3 372.4,133.88 381.04,130.51 389.39,126.55 397.12,121.89 418.17,109.2 413.48,94.687 433.12,79.893 442.84,72.573 454.86,\ +66.623 465.5,62.191", + style=dashed]; + ObservationMatrixColumnItem -> Updater [dir=back, + pos="s,370.82,138.36 380,133.78 386.12,130.4 391.89,126.46 397.12,121.89 431.45,91.931 395.67,51.849 433.12,25.893 509.64,-27.137 627.76,\ +14.565 682.03,38.731", + style=dashed]; + Role -> Verifier [pos="e,589.11,231.96 520.4,247.1 537.56,243.32 560.23,238.32 579.26,234.13", + style=invis]; + VerifierRole -> Verifier [pos="e,588.75,219.75 534.91,207.88 549.14,211.02 565.03,214.52 578.98,217.6", + style=dotted]; + Creator -> Updater [pos="e,681.95,52.893 646.12,52.893 654.15,52.893 663.08,52.893 671.69,52.893", + style=invis]; + Project -> Creator [pos="e,588.82,52.893 520.7,52.893 537.68,52.893 559.96,52.893 578.78,52.893", + style=invis]; +} diff --git a/data/observation_matrix_columns_model_er.dot b/data/observation_matrix_columns_model_er.dot new file mode 100644 index 00000000..c1fffaa4 --- /dev/null +++ b/data/observation_matrix_columns_model_er.dot @@ -0,0 +1,206 @@ +digraph ObservationMatrixColumn { + graph [bb="0,0,709.64,419.32", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="27.948,254.82", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="27.948,198.82", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Observation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#observation", + label=Observation, + pos="412.14,400.82", + shape=Mrecord, + style=filled, + target=_top, + width=1.1528]; + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="412.14,345.82", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + } + subgraph supporting { + ObservationMatrixColumn [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#observation-matrix-column", + label=ObservationMatrixColumn, + pos="211.27,198.82", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.3159]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="211.27,256.82", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="412.14,290.82", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="412.14,198.82", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="412.14,144.82", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="553.64,171.82", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="553.64,52.824", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="553.64,322.82", + shape=box, + style=filled, + target=_top, + width=1.6667]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="412.14,52.824", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="679.64,52.824", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,177.74,256.47 55.313,255.11 84.687,255.44 132.61,255.97 167.4,256.35", + style=dotted]; + Observation -> ObservationMatrix [pos="e,519.98,341.09 445.5,382.73 464.99,371.83 490.01,357.84 510.97,346.12", + style=invis]; + ObservationMatrixColumn -> Tag [pos="e,51.137,245.24 136.3,216.71 121.5,220.71 106.13,225.15 91.895,229.82 81.588,233.21 70.536,237.4 60.613,241.37"]; + ObservationMatrixColumn -> Note [pos="e,56.093,198.82 91.781,198.82 82.712,198.82 74.054,198.82 66.222,198.82"]; + ObservationMatrixColumn -> Observation [pos="e,374.99,382.53 307.25,213.43 315.9,217.66 323.92,223.03 330.64,229.82 377.03,276.73 327.5,320.72 366.64,373.82 367.01,374.32 367.39,\ +374.82 367.78,375.3"]; + ObservationMatrixColumn -> Descriptor [dir=back, + pos="s,304.82,213.79 313.86,218.23 319.87,221.52 325.54,225.36 330.64,229.82 362.43,257.67 339.46,285.47 366.64,317.82 369.69,321.46 \ +373.34,324.77 377.22,327.74", + style=dashed]; + ObservationMatrixColumn -> PinboardItem [pos="e,385.55,272.79 294.17,215.42 306.71,219.33 319.26,224.08 330.64,229.82 348.99,239.08 350.29,246.38 366.64,258.82 370.05,261.42 \ +373.63,264.09 377.23,266.73"]; + ObservationMatrixColumn -> Role [pos="e,385.09,198.82 330.54,198.82 346.57,198.82 361.92,198.82 374.85,198.82"]; + ObservationMatrixColumn -> VerifierRole [pos="e,370.56,155.84 280.99,180.16 307.24,173.04 336.65,165.05 360.87,158.48"]; + ObservationMatrixColumn -> Creator [dir=back, + pos="s,250.51,176.74 259.52,171.71 289.63,155.02 329.78,133.83 366.64,117.82 421.55,93.979 488.3,72.36 525.05,61.066", + style=dashed]; + ObservationMatrixColumn -> ObservationMatrix [dir=back, + pos="s,297.84,214.89 307.88,217.15 354.2,227.77 409.98,243.19 457.64,263.82 482.94,274.78 509.4,291.73 527.95,304.66", + style=dashed]; + ObservationMatrixColumn -> Project [dir=back, + pos="s,242.07,176.64 250.47,170.4 281.65,147.26 326.89,113.79 366.64,84.824 372.79,80.341 379.45,75.534 385.69,71.045", + style=dashed]; + ObservationMatrixColumn -> Updater [dir=back, + pos="s,223.67,176.8 228.68,167.96 252.65,126.59 301.58,54.967 366.64,25.824 466.83,-19.051 505.98,4.3536 613.64,25.824 625.74,28.238 \ +638.41,32.95 649.32,37.771", + style=dashed]; + Role -> Verifier [pos="e,525.09,177.16 439.38,193.75 460.79,189.6 491.3,183.7 515.26,179.06", + style=invis]; + VerifierRole -> Verifier [pos="e,524.91,166.46 453.86,152.71 473.14,156.44 496,160.86 514.88,164.52", + style=dotted]; + Creator -> Updater [pos="e,649.47,52.824 582.16,52.824 598.94,52.824 620.66,52.824 639.24,52.824", + style=invis]; + Project -> Creator [pos="e,524.74,52.824 439.71,52.824 460.92,52.824 490.91,52.824 514.66,52.824", + style=invis]; +} diff --git a/data/observation_matrix_row_items_model_er.dot b/data/observation_matrix_row_items_model_er.dot new file mode 100644 index 00000000..2466c369 --- /dev/null +++ b/data/observation_matrix_row_items_model_er.dot @@ -0,0 +1,291 @@ +digraph ObservationMatrixRowItem { + graph [bb="0,0,836.39,514", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph supporting { + ObservationMatrixRowItem [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#observation-matrix-row-item", + label=ObservationMatrixRowItem, + pos="246.09,272", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.4527]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="246.09,496", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="246.09,214", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="466.39,126", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="466.39,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="623.39,435", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="778.39,435", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="466.39,496", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="466.39,72", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="623.39,45", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="623.39,218", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="466.39,272", + shape=box, + style=filled, + target=_top, + width=1.6667]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="466.39,218", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="778.39,218", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="623.39,375", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="42.896,441", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,324", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,215", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,270", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="466.39,441", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + Citation -> Source [pos="e,439.16,441 82.044,441 162.65,441 349.4,441 428.71,441", + style=dotted]; + Citation -> CitationTopic [pos="e,199.77,483.61 77.119,450.08 107.72,458.45 153.73,471.02 189.86,480.9", + style=dotted]; + Tag -> Keyword [pos="e,212.45,214.16 70.199,214.87 103.81,214.7 162.41,214.41 202.44,214.21", + style=dotted]; + Source -> SubsequentCitation [pos="e,562.11,437.33 493.68,439.98 509.79,439.36 531.24,438.53 552,437.72", + style=invis]; + Source -> OriginCitation [pos="e,579.85,393.11 493.68,429.8 514.68,420.86 544.76,408.05 570.56,397.07", + style=invis]; + ObservationMatrixRowItem -> Citation [pos="e,62.463,425.4 218.71,294.16 180.12,326.58 108.69,386.58 70.161,418.94"]; + ObservationMatrixRowItem -> Identifier [pos="e,79.866,314.7 173.18,290.59 145.36,297.77 114.35,305.79 89.679,312.17"]; + ObservationMatrixRowItem -> Tag [pos="e,67.27,223.32 169.53,253.97 153.7,249.92 137.15,245.49 121.79,241 106.93,236.66 90.65,231.32 76.837,226.61"]; + ObservationMatrixRowItem -> Note [pos="e,71.03,270.27 121.84,270.77 107.25,270.63 93.326,270.49 81.393,270.37"]; + ObservationMatrixRowItem -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,269.93,294.04 e,439.17,427.77 277.38,301.03 308.39,329.97 358.66,374.76 406.39,408 413.87,413.21 422.26,418.31 430.3,422.87", + style=dotted]; + ObservationMatrixRowItem -> PinboardItem [pos="e,423.5,144.1 343.94,257.04 353.51,252.9 362.56,247.64 370.39,241 401.04,214.98 379.23,187.65 406.39,158 409.06,155.09 412.05,152.38 \ +415.24,149.89"]; + ObservationMatrixRowItem -> Role [pos="e,439.26,24.039 347.64,257.71 356.11,253.4 363.9,247.92 370.39,241 430.96,176.38 351.97,114.88 406.39,45 412.33,37.364 420.93,31.812 \ +429.74,27.805"]; + ObservationMatrixRowItem -> SubsequentCitation [pos="e,562.2,417.14 282.88,294.09 314.59,313.09 362.53,340.44 406.39,360 453.98,381.22 509.56,400.4 552.42,414.05"]; + ObservationMatrixRowItem -> VerifierRole [pos="e,424.6,84.778 346.57,257.55 355.36,253.28 363.51,247.86 370.39,241 416.47,195.01 364.7,149.01 406.39,99 409.15,95.691 412.4,92.767 \ +415.93,90.189"]; + ObservationMatrixRowItem -> Creator [dir=back, + pos="s,339.42,256.48 348.81,252.72 356.41,249.42 363.7,245.54 370.39,241 393.04,225.62 382.02,203.48 406.39,191 467.94,159.47 551.87,\ +186.82 594.73,204.97", + style=dashed]; + ObservationMatrixRowItem -> ObservationMatrix [dir=back, + pos="s,370.27,272 380.44,272 389.37,272 398.07,272 406.29,272", + style=dashed]; + ObservationMatrixRowItem -> Project [dir=back, + pos="s,321,253.72 331.14,251.21 369.44,241.73 412.09,231.18 438.83,224.57", + style=dashed]; + ObservationMatrixRowItem -> Updater [dir=back, + pos="s,330.67,288.88 340.76,290.57 362.24,294.07 385.03,297.2 406.39,299 459.53,303.47 473.7,307.29 526.39,299 609.39,285.94 702.36,249.98 \ +748.37,230.67", + style=dashed]; + ObservationMatrixRowItem -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,298.38,293.77 e,575.51,367.94 307.69,297.5 337.1,309.18 373.18,322.51 406.39,332 459.59,347.21 521.68,358.96 565.59,366.31"]; + CitationTopic -> Topic [pos="e,439.36,496 292.32,496 332.79,496 391.35,496 428.89,496", + style=dotted]; + Role -> Verifier [pos="e,594.65,40.169 493.68,22.58 518.68,26.935 556.55,33.532 584.75,38.443", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,720.03,435 684.42,435 692.75,435 701.36,435 709.81,435", + style=dotted]; + VerifierRole -> Verifier [pos="e,594.63,49.835 508.11,64.906 531.76,60.787 561.35,55.632 584.49,51.601", + style=dotted]; + Creator -> Updater [pos="e,748.32,218 652.09,218 676.12,218 711.16,218 738.08,218", + style=invis]; + Project -> Creator [pos="e,594.79,218 494.03,218 518.98,218 556.5,218 584.55,218", + style=invis]; +} diff --git a/data/observation_matrix_rows_model_er.dot b/data/observation_matrix_rows_model_er.dot new file mode 100644 index 00000000..7afa48b4 --- /dev/null +++ b/data/observation_matrix_rows_model_er.dot @@ -0,0 +1,319 @@ +digraph ObservationMatrixRow { + graph [bb="0,0,801.21,625", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="42.896,552", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,381", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,272", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,327", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="431.21,552", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="431.21,236", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="431.21,181", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + ObservationMatrixRow [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#observation-matrix-row", + label=ObservationMatrixRow, + pos="228.5,329", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.9642]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="228.5,607", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="228.5,271", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="431.21,126", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="431.21,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="588.21,546", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="743.21,546", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="431.21,607", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="431.21,72", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="588.21,45", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="588.21,329", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="431.21,383", + shape=box, + style=filled, + target=_top, + width=1.6667]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="431.21,329", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="743.21,329", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="588.21,486", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,404.04,552 81.995,552 156.56,552 320.87,552 393.94,552", + style=dotted]; + Citation -> CitationTopic [pos="e,182.34,593.47 76.299,561.71 102.87,569.66 141.07,581.11 172.42,590.5", + style=dotted]; + Tag -> Keyword [pos="e,194.73,271.18 70.202,271.86 100.07,271.69 149.25,271.43 184.68,271.23", + style=dotted]; + Source -> SubsequentCitation [pos="e,526.93,548.33 458.51,550.98 474.61,550.36 496.06,549.53 516.82,548.72", + style=invis]; + Source -> OriginCitation [pos="e,544.67,504.11 458.51,540.8 479.51,531.86 509.59,519.05 535.39,508.07", + style=invis]; + ObservationMatrixRow -> Citation [pos="e,57.696,535.24 209.28,351.13 174.78,393.03 100.17,483.65 64.158,527.39"]; + ObservationMatrixRow -> Identifier [pos="e,78.863,371.1 163.31,347.18 138.71,354.15 111.19,361.94 88.773,368.29"]; + ObservationMatrixRow -> Tag [pos="e,67.343,280.08 163.94,310.77 150.02,306.67 135.39,302.26 121.79,298 107.01,293.37 90.75,287.99 76.924,283.32"]; + ObservationMatrixRow -> Note [pos="e,70.988,327.3 121.41,327.84 106.96,327.69 92.994,327.53 80.992,327.4"]; + ObservationMatrixRow -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,241.87,351.3 e,404,540.35 247.07,360.17 271.04,400.64 317.25,471.68 371.21,519 378.34,525.25 386.84,530.84 395.15,535.57", + style=dotted]; + ObservationMatrixRow -> CollectionObject [dir=back, + pos="s,301.23,312.13 310.79,308.75 319.22,305.59 327.52,302.02 335.21,298 353.42,288.48 354.19,280.5 371.21,269 378.9,263.81 387.46,258.68 \ +395.62,254.07", + style=dashed]; + ObservationMatrixRow -> Otu [dir=back, + pos="s,310.68,313.7 319.69,309.12 325.27,305.94 330.52,302.26 335.21,298 367.09,269.02 341.5,239.2 371.21,208 380.07,198.7 392.74,192.33 \ +404.07,188.12", + style=dashed]; + ObservationMatrixRow -> PinboardItem [pos="e,385.53,140.98 312.61,314.11 321.01,309.97 328.79,304.69 335.21,298 381.17,250.07 328.82,204.11 371.21,153 373.07,150.76 375.15,\ +148.71 377.39,146.81"]; + ObservationMatrixRow -> Role [pos="e,404.2,23.795 314.07,314.34 322.04,310.14 329.33,304.8 335.21,298 409.54,212.12 303.25,136 371.21,45 377.12,37.096 385.88,31.44 \ +394.87,27.419"]; + ObservationMatrixRow -> SubsequentCitation [pos="e,527.06,534.06 245.56,351.12 269.53,382.68 317.66,440.48 371.21,474 416.07,502.08 473.08,520.48 517.27,531.65"]; + ObservationMatrixRow -> VerifierRole [pos="e,389.69,84.185 313.56,314.25 321.68,310.07 329.14,304.76 335.21,298 395.3,231.16 316.08,169.99 371.21,99 374.01,95.4 377.39,92.263 \ +381.11,89.533"]; + ObservationMatrixRow -> Creator [dir=back, + pos="s,301.87,312.22 311.97,310.37 363.58,301.22 431.4,293.75 491.21,302 514.71,305.24 540.55,312.75 559.5,319.02", + style=dashed]; + ObservationMatrixRow -> ObservationMatrix [dir=back, + pos="s,295.78,346.83 305.61,349.48 327.3,355.31 350.59,361.58 371.1,367.1", + style=dashed]; + ObservationMatrixRow -> Project [dir=back, + pos="s,335.44,329 345.46,329 367.16,329 387.85,329 403.36,329", + style=dashed]; + ObservationMatrixRow -> Updater [dir=back, + pos="s,257.66,351.04 266.1,357.05 293.41,376.14 332.54,399.73 371.21,410 497.37,443.51 650.31,376.73 713.14,344.75", + style=dashed]; + ObservationMatrixRow -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,250.27,351.26 e,540.55,483.16 257.36,358.36 284.06,384.68 326.76,422.24 371.21,443 421.99,466.72 485.44,477.37 530.39,482.15"]; + CitationTopic -> Topic [pos="e,404.06,607 274.55,607 310.53,607 360.3,607 393.79,607", + style=dotted]; + Role -> Verifier [pos="e,559.48,40.169 458.51,22.58 483.51,26.935 521.37,33.532 549.57,38.443", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,684.86,546 649.24,546 657.58,546 666.18,546 674.64,546", + style=dotted]; + VerifierRole -> Verifier [pos="e,559.46,49.835 472.94,64.906 496.58,60.787 526.17,55.632 549.32,51.601", + style=dotted]; + Creator -> Updater [pos="e,713.15,329 616.92,329 640.94,329 675.98,329 702.9,329", + style=invis]; + Project -> Creator [pos="e,559.61,329 458.86,329 483.8,329 521.33,329 549.37,329", + style=invis]; +} diff --git a/data/observations_model_er.dot b/data/observations_model_er.dot new file mode 100644 index 00000000..ab04844f --- /dev/null +++ b/data/observations_model_er.dot @@ -0,0 +1,398 @@ +digraph Observation { + graph [bb="0,0,734.07,672.41", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,599.41", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="59.145,470.41", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,416.41", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="59.145,254.41", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="59.145,362.41", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,200.41", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,308.41", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Observation [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#observation", + label=Observation, + pos="216.68,337.41", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.7331]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="369.57,599.41", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="369.57,267.41", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="369.57,212.41", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="369.57,157.41", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="216.68,654.41", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="216.68,470.41", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="216.68,254.41", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="216.68,200.41", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="369.57,102.41", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="369.57,360.41", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="521.07,591.41", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="676.07,591.41", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="369.57,654.41", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="369.57,468.41", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="521.07,418.41", + shape=box, + style=filled, + target=_top, + width=0.79167]; + CharacterState [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#character-state", + label=CharacterState, + pos="369.57,414.41", + shape=box, + style=filled, + target=_top, + width=1.3333]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="521.07,48.413", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="369.57,48.413", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="676.07,48.413", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="521.07,522.41", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,342.23,599.41 98.273,599.41 158.05,599.41 273.07,599.41 331.93,599.41", + style=dotted]; + Citation -> CitationTopic [pos="e,170.66,638.49 90.503,610.15 110.55,617.24 137.39,626.73 161.08,635.11", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,161.95,470.41 110.21,470.41 123.38,470.41 137.76,470.41 151.55,470.41", + style=dotted]; + Depiction -> Image [pos="e,189.58,254.41 104.71,254.41 128.43,254.41 157.21,254.41 179.52,254.41", + style=dotted]; + Tag -> Keyword [pos="e,183.07,200.41 86.178,200.41 109.8,200.41 145.06,200.41 172.84,200.41", + style=dotted]; + Observation -> Citation [pos="e,70.591,581.82 202.48,359.64 173.94,407.72 106.58,521.2 75.879,572.91"]; + Observation -> Confidence [pos="e,94.307,457.27 199.48,359.7 181.67,382.97 151.18,419.37 118.29,443.41 113.74,446.74 108.72,449.8 103.58,452.58"]; + Observation -> DataAttribute [pos="e,92.895,401.59 181.22,356.42 162.69,366.48 139.39,378.89 118.29,389.41 113.06,392.02 107.52,394.7 102.03,397.3"]; + Observation -> Depiction [pos="e,89.966,267.66 183.17,317.77 164.42,306.68 140.28,292.81 118.29,281.41 112.18,278.25 105.63,275.04 99.214,271.98"]; + Observation -> Identifier [pos="e,99.393,356.1 154.34,347.27 139.45,349.67 123.73,352.19 109.48,354.48"]; + Observation -> Tag [pos="e,83.925,208.04 189.56,316.09 178.12,306.14 164.91,293.78 154.29,281.41 135.5,259.53 140.19,246.19 118.29,227.41 110.97,221.14 101.94,\ +216.01 93.201,211.99"]; + Observation -> Note [pos="e,86.178,313.27 156.25,326.33 136,322.56 114,318.45 96.156,315.13"]; + Observation -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,232.74,359.74 e,342.49,588.33 238.27,368.37 251.3,388.98 267.76,417.02 279.07,443.41 301.5,495.77 280.53,521.12 315.07,566.41 \ +320.05,572.94 326.72,578.48 333.66,583.05", + style=dotted]; + Observation -> CollectionObject [dir=back, + pos="s,255.76,319.75 265.05,315.44 285.86,305.78 309.99,294.59 329.72,285.44", + style=dashed]; + Observation -> Descriptor [dir=back, + pos="s,242.82,315.74 250.54,308.8 259.97,300.22 270.13,290.64 279.07,281.41 296.18,263.76 295.72,254.58 315.07,239.41 320.39,235.24 326.46,\ +231.45 332.55,228.11", + style=dashed]; + Observation -> Otu [dir=back, + pos="s,245.84,316.65 253.53,309.94 262.77,301.56 272.07,291.78 279.07,281.41 304.78,243.29 284.42,218.7 315.07,184.41 322.42,176.19 332.85,\ +170.15 342.56,165.89", + style=dashed]; + Observation -> PinboardItem [pos="e,324.34,120.47 246.95,316.89 258.55,307.35 271.02,295.09 279.07,281.41 314.28,221.58 272.07,183.92 315.07,129.41 315.65,128.68 \ +316.25,127.97 316.88,127.27"]; + Observation -> Role [pos="e,342.24,356.4 279.05,346.77 297.12,349.52 316.31,352.45 332.27,354.88"]; + Observation -> SubsequentCitation [pos="e,459.83,577.5 231.56,359.77 244.5,380.96 264,413.86 279.07,443.41 296.97,478.51 285.82,498.02 315.07,524.41 335.34,542.71 399.05,\ +561.9 450.13,575.04"]; + Observation -> VerifierRole [pos="e,328.76,450.32 234.45,359.47 252.51,382.13 282.99,417.39 315.07,441.41 316.66,442.61 318.32,443.77 320.01,444.91"]; + Observation -> CharacterState [dir=back, + pos="s,253.27,355.76 262.21,360.35 278.79,368.88 297.78,378.61 315.07,387.41 320.73,390.29 326.72,393.33 332.58,396.29", + style=dashed]; + Observation -> Creator [dir=back, + pos="s,247.6,317.25 255.32,310.63 264.48,302.3 273.3,292.38 279.07,281.41 306.23,229.8 271.09,59.725 315.07,21.413 364.87,-21.972 448.99,\ +10.957 492.36,32.912", + style=dashed]; + Observation -> Project [dir=back, + pos="s,247.35,317.12 255.06,310.49 264.22,302.16 273.1,292.28 279.07,281.41 323.8,199.94 259.7,150.06 315.07,75.413 321.7,66.472 332.14,\ +60.288 342.04,56.119", + style=dashed]; + Observation -> Updater [dir=back, + pos="s,279.02,333.74 289.03,332.57 330.44,327.37 382.46,316.63 424.07,294.41 534.68,235.36 629.45,112.6 662.53,66.461", + style=dashed]; + Observation -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,230.7,359.65 e,473.45,527.15 235.86,368.41 262.31,413.28 308.92,491.43 315.07,495.41 359,523.86 419.4,528.66 463.24,527.53"]; + Source -> SubsequentCitation [pos="e,459.9,594.63 396.61,598.02 411.43,597.23 430.78,596.19 449.74,595.18", + style=invis]; + Source -> OriginCitation [pos="e,485.08,540.43 396.61,586 418.44,574.76 450.09,558.46 475.88,545.17", + style=invis]; + CitationTopic -> Topic [pos="e,342.2,654.41 262.95,654.41 285.08,654.41 311.36,654.41 332.17,654.41", + style=dotted]; + Role -> Verifier [pos="e,492.56,407.74 396.61,370.52 420.53,379.79 456.23,393.64 483.1,404.07", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,617.71,591.41 582.1,591.41 590.43,591.41 599.04,591.41 607.5,591.41", + style=dotted]; + VerifierRole -> Verifier [pos="e,492.5,427.63 411.42,454.75 433.76,447.28 461.23,438.09 482.96,430.83", + style=dotted]; + Creator -> Updater [pos="e,646.01,48.413 549.78,48.413 573.8,48.413 608.84,48.413 635.76,48.413", + style=invis]; + Project -> Creator [pos="e,492.56,48.413 397.3,48.413 421.02,48.413 455.94,48.413 482.48,48.413", + style=invis]; +} diff --git a/data/organizations_model_er.dot b/data/organizations_model_er.dot new file mode 100644 index 00000000..6a452889 --- /dev/null +++ b/data/organizations_model_er.dot @@ -0,0 +1,188 @@ +digraph Organization { + graph [bb="0,0,506.2,445.51", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,238.51", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,184.51", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + } + subgraph supporting { + Organization [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#organization", + label=Organization, + pos="187,211.51", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.8112]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="349.2,427.51", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="349.2,373.51", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="349.2,319.51", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="476.2,346.51", + shape=box, + style=filled, + target=_top, + width=0.79167]; + AreaServed [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#area-served", + label=AreaServed, + pos="349.2,265.51", + shape=box, + style=filled, + target=_top, + width=1.1111]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="349.2,211.51", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Department [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#department", + label=Department, + pos="349.2,157.51", + shape=box, + style=filled, + target=_top, + width=1.125]; + ParentOrganization [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#parent-organization", + label=ParentOrganization, + pos="349.2,103.51", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SameA [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#same-a", + label=SameA, + pos="349.2,49.515", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="476.2,211.51", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Organization -> Identifier [pos="e,82.351,231.21 125.04,223.1 114.06,225.18 102.76,227.33 92.205,229.34"]; + Organization -> Note [pos="e,69.96,189.47 125,199.93 109.63,197.01 93.626,193.96 79.932,191.36"]; + Organization -> PinboardItem [pos="e,303.49,411.49 194.47,233.71 206.78,272.37 236.99,352.51 288.2,400.51 290.31,402.49 292.59,404.34 294.98,406.07"]; + Organization -> Role [pos="e,322.07,365.11 199.65,233.64 216.01,262.87 248.29,314.4 288.2,346.51 295.44,352.34 304.14,357.19 312.64,361.1"]; + Organization -> VerifierRole [pos="e,307.45,302.89 211.79,233.7 231.31,251.14 260.19,275.29 288.2,292.51 291.4,294.49 294.78,296.4 298.22,298.23"]; + Organization -> AreaServed [dir=back, + pos="s,234.76,227.28 244.37,230.52 265.71,237.71 289.52,245.74 308.95,252.29", + style=dashed]; + Organization -> Creator [dir=back, + pos="s,252.23,211.51 262.31,211.51 282.98,211.51 304.16,211.51 320.32,211.51", + style=dashed]; + Organization -> Department [dir=back, + pos="s,234.76,195.75 244.33,192.53 265.59,185.36 289.29,177.37 308.69,170.83", + style=dashed]; + Organization -> ParentOrganization [dir=back, + pos="s,211.79,189.33 219.53,182.51 238.51,165.96 263.69,145.59 288.2,130.51 293.36,127.34 298.95,124.33 304.58,121.54", + style=dashed]; + Organization -> SameA [dir=back, + pos="s,199.65,189.39 204.66,180.61 222.13,150.67 252.03,105.62 288.2,76.515 297.72,68.853 309.77,62.879 320.56,58.52", + style=dashed]; + Organization -> Updater [dir=back, + pos="s,192.13,189.2 194.42,179.22 205.17,134.84 231.49,56.637 288.2,22.515 334.66,-5.4394 366.06,-8.9803 410.2,22.515 466.27,62.522 474.47,\ +154.12 475.32,193.25", + style=dashed]; + Role -> Verifier [pos="e,447.29,352.54 376.4,367.85 394.08,364.04 417.69,358.94 437.4,354.68", + style=invis]; + VerifierRole -> Verifier [pos="e,447.45,340.52 390.78,328.28 405.84,331.53 422.85,335.21 437.63,338.4", + style=dotted]; + Creator -> Updater [pos="e,445.79,211.51 377.94,211.51 394.93,211.51 416.95,211.51 435.74,211.51", + style=invis]; +} diff --git a/data/origin_relationships_model_er.dot b/data/origin_relationships_model_er.dot new file mode 100644 index 00000000..6f73d4ee --- /dev/null +++ b/data/origin_relationships_model_er.dot @@ -0,0 +1,138 @@ +digraph OriginRelationship { + graph [bb="0,0,697.53,328", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + OriginRelationship [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="88.419,156", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.4561]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="360.68,310", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="360.68,256", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="360.68,202", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="573.03,229", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="573.03,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="360.68,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="667.53,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + OriginRelationship -> PinboardItem [pos="e,314.96,308.82 104.24,178.23 124.91,207.32 165.25,257.57 212.84,283 240.94,298.02 275.9,304.84 304.67,307.87"]; + OriginRelationship -> Role [pos="e,333.48,253.98 119.84,178.14 143.92,194.61 179.03,216.35 212.84,229 249.11,242.57 293.05,249.5 323.36,252.91"]; + OriginRelationship -> VerifierRole [pos="e,319.14,195.1 166.14,169.06 211.94,176.85 268.82,186.53 309.03,193.38"]; + OriginRelationship -> Creator [dir=back, + pos="s,176.91,160.99 187.16,161.3 272.95,163.65 400.53,161.57 508.53,137 520.68,134.24 533.44,129.26 544.3,124.33", + style=dashed]; + OriginRelationship -> Project [dir=back, + pos="s,166.14,142.94 176.15,141.24 230.56,131.98 297.03,120.66 333.17,114.51", + style=dashed]; + OriginRelationship -> Updater [dir=back, + pos="s,116.85,133.89 125.08,127.91 148.55,111.27 180.76,91.777 212.84,83 379.47,37.41 432.11,49.213 601.53,83 613.63,85.414 626.3,90.126 \ +637.21,94.947", + style=dashed]; + "Objects with Origin relationships" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with origin relationship", + label="Objects with Origin relationships", + pos="360.68,18", + shape=hexagon, + style=filled, + target=_top, + width=4.1068]; + OriginRelationship -> "Objects with Origin relationships" [dir=back, + pos="s,108.89,133.66 115.97,126.14 139.16,101.94 174.97,68.862 212.84,50 229.42,41.741 248.1,35.602 266.44,31.042", + style=dashed]; + Role -> Verifier [pos="e,544.48,232.54 387.9,252.64 424.75,247.9 492.09,239.26 534.32,233.84", + style=invis]; + VerifierRole -> Verifier [pos="e,544.34,225.45 402.24,207.21 440.43,212.11 497.19,219.39 534.4,224.17", + style=dotted]; + Creator -> Updater [pos="e,637.36,110 601.53,110 609.56,110 618.49,110 627.1,110", + style=invis]; + Project -> Creator [pos="e,544.27,110 388.32,110 425.22,110 492.06,110 534.14,110", + style=invis]; +} diff --git a/data/otu_page_layout_sections_model_er.dot b/data/otu_page_layout_sections_model_er.dot new file mode 100644 index 00000000..ce3ab7d1 --- /dev/null +++ b/data/otu_page_layout_sections_model_er.dot @@ -0,0 +1,151 @@ +digraph OtuPageLayoutSection { + graph [bb="0,0,533.79,364.65", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + OtuPageLayoutSection [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#otu-page-layout-section", + label=OtuPageLayoutSection, + pos="103.9,169.65", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.886]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="294.29,346.65", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="294.29,292.65", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="294.29,238.65", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="409.29,265.65", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="409.29,92.655", + shape=box, + style=filled, + target=_top, + width=0.79167]; + OtuPageLayout [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#otu-page-layout", + label=OtuPageLayout, + pos="294.29,146.65", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="294.29,92.655", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="294.29,38.655", + shape=box, + style=filled, + target=_top, + width=0.75]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="503.79,92.655", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + OtuPageLayoutSection -> PinboardItem [pos="e,256.74,328.5 121.63,191.87 146,223.16 193.81,280.73 243.79,319.65 245.17,320.73 246.6,321.79 248.07,322.82"]; + OtuPageLayoutSection -> Role [pos="e,267.05,279.01 134.9,191.76 162.62,211.85 205.23,241.9 243.79,265.65 248.31,268.44 253.14,271.26 257.94,273.97"]; + OtuPageLayoutSection -> VerifierRole [pos="e,252.67,223.78 158.63,189.34 185.15,199.05 216.96,210.7 242.99,220.23"]; + OtuPageLayoutSection -> Creator [dir=back, + pos="s,173.34,186.68 183.23,188.31 232.1,195.87 294.95,197.91 344.79,173.65 371.46,160.67 390.24,130.47 400.15,110.84", + style=dashed]; + OtuPageLayoutSection -> OtuPageLayout [dir=back, + pos="s,202.13,157.78 212.22,156.55 223.15,155.22 233.84,153.91 243.69,152.71", + style=dashed]; + OtuPageLayoutSection -> Project [dir=back, + pos="s,154.89,149.22 164.36,145.35 198.68,131.32 240.16,114.37 266.63,103.55", + style=dashed]; + OtuPageLayoutSection -> Topic [dir=back, + pos="s,131.99,147.53 140.12,141.06 167.61,119.3 207.16,89.19 243.79,65.655 251.2,60.893 259.52,56.142 267.19,51.983", + style=dashed]; + OtuPageLayoutSection -> Updater [dir=back, + pos="s,116.17,147.54 121.31,138.41 143.34,100.25 186.43,37.605 243.79,11.655 327.5,-26.211 433.96,40.607 479.94,74.6", + style=dashed]; + Role -> Verifier [pos="e,380.65,272.26 321.5,286.39 336.05,282.92 354.4,278.53 370.48,274.69", + style=invis]; + VerifierRole -> Verifier [pos="e,380.63,259.05 336.09,248.4 347.41,251.11 359.65,254.03 370.78,256.69", + style=dotted]; + Creator -> Updater [pos="e,473.63,92.655 437.79,92.655 445.82,92.655 454.75,92.655 463.36,92.655", + style=invis]; + Project -> Creator [pos="e,380.52,92.655 322.07,92.655 336.53,92.655 354.61,92.655 370.48,92.655", + style=invis]; +} diff --git a/data/otu_page_layouts_model_er.dot b/data/otu_page_layouts_model_er.dot new file mode 100644 index 00000000..421eda72 --- /dev/null +++ b/data/otu_page_layouts_model_er.dot @@ -0,0 +1,162 @@ +digraph OtuPageLayout { + graph [bb="0,0,517.11,379.25", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + OtuPageLayout [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#otu-page-layout", + label=OtuPageLayout, + pos="75.053,172.25", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.0848]; + OtuPageLayoutSection [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#otu-page-layout-section", + label=OtuPageLayoutSection, + pos="257.11,361.25", + shape=box, + style=filled, + target=_top, + width=1.9722]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="257.11,307.25", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="257.11,253.25", + shape=box, + style=filled, + target=_top, + width=0.75]; + StandardSection [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#standard-section", + label=StandardSection, + pos="257.11,145.25", + shape=box, + style=filled, + target=_top, + width=1.4583]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="392.61,145.25", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="257.11,199.25", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="392.61,226.25", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="392.61,53.246", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="257.11,53.246", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="487.11,53.246", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + OtuPageLayout -> OtuPageLayoutSection [pos="e,199.77,343.13 85.645,194.25 101.69,228.67 137.11,295.34 186.11,334.25 187.67,335.49 189.31,336.68 190.99,337.83"]; + OtuPageLayout -> PinboardItem [pos="e,211.45,293.17 93.807,194.42 113.98,218.38 148.97,256.33 186.11,280.25 191.09,283.45 196.51,286.37 202.05,289.01"]; + OtuPageLayout -> Role [pos="e,229.95,243.78 114.12,191.95 135.13,202.57 161.83,215.63 186.11,226.25 197.18,231.09 209.43,235.97 220.54,240.22"]; + OtuPageLayout -> StandardSection [pos="e,204.57,152.97 149.03,161.3 164.16,159.03 179.95,156.67 194.62,154.47"]; + OtuPageLayout -> VerifierRole [pos="e,215.6,193.17 149.03,183.19 168.01,186.04 188.05,189.04 205.59,191.67"]; + OtuPageLayout -> Creator [dir=back, + pos="s,112.94,151.9 121.88,147.27 141.31,137.35 164.43,126.38 186.11,118.25 247.28,95.303 266.34,101.52 328.11,80.246 340,76.149 352.82,\ +70.87 363.8,66.069", + style=dashed]; + OtuPageLayout -> Project [dir=back, + pos="s,100.57,150.03 108.29,143.36 129.46,125.27 158.28,102.26 186.11,85.246 199.79,76.88 216.02,69.326 229.41,63.661", + style=dashed]; + OtuPageLayout -> Updater [dir=back, + pos="s,84.991,150 89.287,140.61 106,105.3 138.46,49.998 186.11,26.246 279.58,-20.35 318.68,5.8184 421.11,26.246 433.21,28.659 445.88,\ +33.371 456.79,38.192", + style=dashed]; + Role -> Verifier [pos="e,363.77,231.87 284.16,247.98 304.04,243.96 331.69,238.36 353.96,233.86", + style=invis]; + StandardSection -> Topic [pos="e,365.49,145.25 309.72,145.25 324.92,145.25 341.23,145.25 355.26,145.25", + style=dotted]; + VerifierRole -> Verifier [pos="e,363.75,220.61 298.89,207.49 316.28,211.01 336.47,215.1 353.56,218.55", + style=dotted]; + Creator -> Updater [pos="e,456.94,53.246 421.11,53.246 429.13,53.246 438.07,53.246 446.68,53.246", + style=invis]; + Project -> Creator [pos="e,364.04,53.246 284.8,53.246 304.64,53.246 331.97,53.246 354.01,53.246", + style=invis]; +} diff --git a/data/otus_model_er.dot b/data/otus_model_er.dot new file mode 100644 index 00000000..8d6e6f40 --- /dev/null +++ b/data/otus_model_er.dot @@ -0,0 +1,715 @@ +digraph Otu { + graph [bb="0,0,1181.3,1343", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,1270", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="59.145,629", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,683", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="59.145,575", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="59.145,791", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,521", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,737", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Otu [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#otu", + label=Otu, + pos="208.79,687", + shape=doubleoctagon, + style=filled, + target=_top, + width=0.86111]; + AssertedDistribution [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#asserted-distribution", + label=AssertedDistribution, + pos="384.79,1008", + shape=Mrecord, + style=filled, + target=_top, + width=1.7917]; + BiologicalAssociation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#biological-association", + label=BiologicalAssociation, + pos="384.79,953", + shape=Mrecord, + style=filled, + target=_top, + width=1.9028]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="633.29,511", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + CollectingEvent [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collecting-event", + label=CollectingEvent, + pos="856.29,511", + shape=Mrecord, + style=filled, + target=_top, + width=1.4444]; + Observation [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#observation", + label=Observation, + pos="384.79,859", + shape=Mrecord, + style=filled, + target=_top, + width=1.1528]; + Descriptor [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#descriptor", + label=Descriptor, + pos="633.29,859", + shape=Mrecord, + style=filled, + target=_top, + width=1.0278]; + Sequence [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#sequence", + label=Sequence, + pos="1066.8,566", + shape=Mrecord, + style=filled, + target=_top, + width=0.94444]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="384.79,1270", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + TaxonName [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#taxon-name", + label=TaxonName, + pos="384.79,711", + shape=Mrecord, + style=filled, + target=_top, + width=1.1667]; + } + subgraph supporting { + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="208.79,1325", + shape=box, + style=filled, + target=_top, + width=1.2778]; + TaxonDetermination [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-determination", + label=TaxonDetermination, + pos="384.79,510", + shape=box, + style=filled, + target=_top, + width=1.8056]; + CollectionProfile [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collection-profile", + label=CollectionProfile, + pos="384.79,618", + shape=box, + style=filled, + target=_top, + width=1.5139]; + CommonName [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#common-name", + label=CommonName, + pos="384.79,564", + shape=box, + style=filled, + target=_top, + width=1.4028]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="208.79,629", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Content [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#content", + label=Content, + pos="384.79,456", + shape=box, + style=filled, + target=_top, + width=0.81944]; + ContentTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#content-topic", + label=ContentTopic, + pos="633.29,456", + shape=box, + style=filled, + target=_top, + width=1.2639]; + OriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="384.79,348", + shape=box, + style=filled, + target=_top, + width=1.6667]; + DerivedExtract [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#derived-extract", + label=DerivedExtract, + pos="633.29,348", + shape=box, + style=filled, + target=_top, + width=1.375]; + DerivedSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#derived-sequence", + label=DerivedSequence, + pos="633.29,402", + shape=box, + style=filled, + target=_top, + width=1.5556]; + Extract [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#extract", + label=Extract, + pos="856.29,566", + shape=box, + style=filled, + target=_top, + width=0.77778]; + GeographicAreasFromAssertedDistribution [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-areas-from-asserted-distribution", + label=GeographicAreasFromAssertedDistribution, + pos="633.29,1008", + shape=box, + style=filled, + target=_top, + width=3.5278]; + GeographicAreasFromCollectingEvent [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#geographic-areas-from-collecting-event", + label=GeographicAreasFromCollectingEvent, + pos="1066.8,457", + shape=box, + style=filled, + target=_top, + width=3.1806]; + Georeference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeference", + label=Georeference, + pos="1066.8,511", + shape=box, + style=filled, + target=_top, + width=1.2361]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="208.79,575", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="208.79,521", + shape=box, + style=filled, + target=_top, + width=0.93056]; + LoanItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan-item", + label=LoanItem, + pos="384.79,218", + shape=box, + style=filled, + target=_top, + width=0.97222]; + Loan [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#loan", + label=Loan, + pos="633.29,218", + shape=box, + style=filled, + target=_top, + width=0.75]; + ObservationMatrixRow [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-row", + label=ObservationMatrixRow, + pos="633.29,766", + shape=box, + style=filled, + target=_top, + width=2.0278]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="856.29,766", + shape=box, + style=filled, + target=_top, + width=1.6667]; + ObservationMatrixRowItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-row-item", + label=ObservationMatrixRowItem, + pos="384.79,766", + shape=box, + style=filled, + target=_top, + width=2.375]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="633.29,126", + shape=box, + style=filled, + target=_top, + width=1.2639]; + RelatedBiologicalAssociation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-biological-association", + label=RelatedBiologicalAssociation, + pos="633.29,934", + shape=box, + style=filled, + target=_top, + width=2.4722]; + RelatedOriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-origin-relationship", + label=RelatedOriginRelationship, + pos="633.29,294", + shape=box, + style=filled, + target=_top, + width=2.2361]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="384.79,72", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="633.29,1264", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="856.29,1264", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="384.79,1325", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="384.79,18", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="633.29,45", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="384.79,126", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="633.29,1139", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="384.79,1139", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="856.29,1139", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="633.29,1204", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,357.51,1270 98.223,1270 161.09,1270 285.76,1270 347.46,1270", + style=dotted]; + Citation -> CitationTopic [pos="e,162.53,1308.1 90.023,1281.1 108.07,1287.9 131.63,1296.6 152.93,1304.6", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,154.06,629 110.13,629 120.96,629 132.55,629 143.82,629", + style=dotted]; + Depiction -> Image [pos="e,181.7,575 104.84,575 126.24,575 151.52,575 171.67,575", + style=dotted]; + Tag -> Keyword [pos="e,175.29,521 86.201,521 108.03,521 139.62,521 165.13,521", + style=dotted]; + Otu -> Citation [pos="e,64.725,1251.9 202.19,709.1 179.28,799.59 92.6,1141.8 67.188,1242.2"]; + Otu -> Confidence [pos="e,94.017,642.31 179.53,675.9 158.01,667.45 128.01,655.66 103.47,646.02"]; + Otu -> DataAttribute [pos="e,118.07,684.57 177.63,686.18 163.3,685.79 145.54,685.31 128.2,684.84"]; + Otu -> Depiction [pos="e,93.702,586.8 181.39,674.83 172.19,669.81 162.19,663.42 154.29,656 133.26,636.25 140.19,620.77 118.29,602 113.69,598.06 108.41,\ +594.57 102.96,591.52"]; + Otu -> Identifier [pos="e,90.863,778.65 189.79,705.14 172.52,721.87 145.17,746.67 118.29,764 112.57,767.69 106.27,771.15 99.983,774.29"]; + Otu -> Tag [pos="e,84.699,527.43 179.96,675.77 170.72,670.87 161.07,664.32 154.29,656 122.33,616.78 151.99,585.74 118.29,548 111.81,540.75 102.98,\ +535.3 94.157,531.27"]; + Otu -> Note [pos="e,84.195,728.86 178.15,697.04 153.76,705.3 119.21,717 93.789,725.61"]; + Otu -> AssertedDistribution [pos="e,319.87,994.36 210,709.14 211.71,763.09 223.66,902.57 299.29,980 302.75,983.54 306.67,986.64 310.88,989.34"]; + Otu -> BiologicalAssociation [pos="e,319.76,934.82 212.32,709.12 218.65,754.66 239.25,859.62 299.29,920 302.78,923.51 306.7,926.66 310.87,929.48"]; + Otu -> Observation [pos="e,357.9,840.94 224.52,706.81 241.4,728.93 270.48,765.27 299.29,793 314.79,807.92 333.52,822.83 349.41,834.68"]; + Otu -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,210.53,709.11 e,357.61,1266.7 210.93,719.12 215.28,824.31 234.02,1156.3 299.29,1237 311.21,1251.7 330.6,1259.9 347.8,1264.4", + style=dotted]; + Otu -> TaxonName [dir=back, + pos="s,240.1,691.18 250.27,692.58 278.07,696.42 314.83,701.49 342.75,705.34", + style=dashed]; + Otu -> TaxonDetermination [pos="e,319.46,523.04 237.75,675.87 247,670.99 256.63,664.42 263.29,656 297.59,612.68 260.52,576.37 299.29,537 302.69,533.55 306.53,530.53 \ +310.65,527.91"]; + Otu -> CollectionProfile [pos="e,335.43,636.03 237.12,675.45 254.8,668.04 278.34,658.29 299.29,650 307.86,646.61 316.94,643.09 325.86,639.67"]; + Otu -> CommonName [pos="e,334.16,573.07 236.53,675.18 245.77,670.2 255.7,663.74 263.29,656 286.41,632.42 273.76,611.95 299.29,591 306.71,584.91 315.53,580.18 \ +324.63,576.52"]; + Otu -> Content [pos="e,355.14,457.92 238.18,676.19 247.47,671.34 257.01,664.7 263.29,656 309.27,592.33 246.72,541.35 299.29,483 310.99,470.02 328.91,\ +463.24 345.25,459.72"]; + Otu -> OriginRelationship [pos="e,357.21,366.06 238.41,676.36 247.72,671.52 257.22,664.85 263.29,656 321.09,571.78 251.95,519.52 299.29,429 311.05,406.51 331.44,\ +386.69 349.25,372.28"]; + Otu -> LoanItem [pos="e,349.79,222.19 238.75,676.58 248.1,671.77 257.52,665.05 263.29,656 311.94,579.6 244.57,322.18 299.29,250 309.08,237.08 324.74,229.38 \ +339.94,224.78"]; + Otu -> Loan [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,238.71,676.56 e,606.28,222.37 247.38,671.47 253.59,667.32 259.3,662.21 263.29,656 308.07,586.32 243.78,346.48 299.29,285 309.31,\ +273.91 512.41,238.34 596.41,224.04", + style=dotted]; + Otu -> ObservationMatrixRow [pos="e,606.59,747.92 240.02,681.72 289.13,674.2 388.95,663.37 470.29,683 517.6,694.42 566.63,722.14 598.17,742.41"]; + Otu -> ObservationMatrixRowItem [pos="e,324.13,747.88 232.68,701.73 250.39,712.7 275.76,727.52 299.29,738 304.23,740.2 309.4,742.32 314.64,744.35"]; + Otu -> PinboardItem [pos="e,587.57,133.26 238.81,676.62 248.16,671.8 257.57,665.09 263.29,656 318.47,568.27 230.36,268.39 299.29,191 308.54,180.61 485.49,\ +150.16 577.58,134.91"]; + Otu -> RelatedBiologicalAssociation [pos="e,544.1,925.7 212.77,709.23 219.68,751.24 240.89,842.01 299.29,886 317.89,900.02 442.61,915.2 533.98,924.66"]; + Otu -> RelatedOriginRelationship [pos="e,552.5,289.28 238.66,676.52 248,671.7 257.44,665 263.29,656 304.09,593.22 245.66,373.25 299.29,321 332.71,288.44 455.64,286.14 \ +542.37,288.93"]; + Otu -> Role [pos="e,357.66,72.9 238.87,676.66 248.23,671.85 257.63,665.12 263.29,656 328.66,550.59 222.94,196.76 299.29,99 310.78,84.288 330.33,77.454 \ +347.74,74.337"]; + Otu -> SubsequentCitation [pos="e,572.22,1256 210.44,709.1 213.5,797.96 229.48,1127.8 299.29,1199 317.55,1217.6 469.93,1241.6 562.11,1254.6"]; + Otu -> VerifierRole [pos="e,343.26,21.178 238.9,676.68 248.26,671.87 257.66,665.14 263.29,656 334.64,540.21 215.88,152.43 299.29,45 307.64,34.24 320.31,27.692 \ +333.32,23.73"]; + Otu -> Version [pos="e,355.55,128.91 238.84,676.63 248.19,671.82 257.6,665.1 263.29,656 322.12,561.93 232.99,246.97 299.29,158 310.16,143.42 328.51,135.48 \ +345.34,131.16"]; + Otu -> Creator [dir=back, + pos="s,211.89,709.06 212.93,719.16 221.68,802.05 249.06,1019.9 299.29,1069 310.37,1079.8 526.84,1119.9 604.69,1134", + style=dashed]; + Otu -> Project [dir=back, + pos="s,211.74,709.27 212.71,719.46 221.25,807.51 248.77,1048.1 299.29,1107 313.8,1123.9 338.21,1131.9 357.08,1135.7", + style=dashed]; + Otu -> Updater [dir=back, + pos="s,212.37,709.36 213.65,719.57 223.57,797.63 252.53,992.11 299.29,1035 308.86,1043.8 747.62,1109.2 760.29,1112 782.54,1117 807.31,\ +1124.1 825.98,1129.8", + style=dashed]; + Otu -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,210.57,709.28 e,585.69,1205.2 211.01,719.43 215.39,817.01 233.73,1104.9 299.29,1166 338.17,1202.2 491.06,1206.1 575.5,1205.3"]; + AssertedDistribution -> GeographicAreasFromAssertedDistribution [pos="e,506.06,1008 449.59,1008 464,1008 479.84,1008 495.98,1008", + style=dotted]; + BiologicalAssociation -> RelatedBiologicalAssociation [pos="e,543.95,940.81 453.47,947.78 478.24,945.87 506.8,943.67 533.72,941.6", + style=invis]; + CollectionObject -> CollectingEvent [pos="e,803.93,511 688.07,511 720.03,511 760.67,511 793.88,511", + style=dotted]; + CollectionObject -> Extract [pos="e,828.2,559.26 688.07,524.38 728.42,534.43 782.62,547.91 818.23,556.78", + style=dotted]; + CollectingEvent -> GeographicAreasFromCollectingEvent [pos="e,987.83,475.07 908.45,496.02 922.62,491.99 938.02,487.72 952.29,484 960.62,481.83 969.31,479.63 978.02,477.48", + style=dotted]; + CollectingEvent -> Georeference [pos="e,1022,511 908.29,511 939.73,511 980,511 1012,511", + style=dotted]; + Observation -> Descriptor [pos="e,595.95,859 426.49,859 470.26,859 539.73,859 585.66,859", + style=dotted]; + Observation -> ObservationMatrix [pos="e,796.29,784.04 426.34,848.73 449.63,843.04 479.5,836.11 506.29,831 618.41,809.62 648.72,817.1 760.29,793 768.81,791.16 777.7,788.98 \ +786.47,786.68", + style=invis]; + Source -> SubsequentCitation [pos="e,572.27,1265.5 412.17,1269.4 447.67,1268.5 512.13,1266.9 562.15,1265.7", + style=invis]; + Source -> OriginCitation [pos="e,585.58,1216.1 412.09,1262.7 436.49,1256 473.81,1245.7 506.29,1237 529.02,1230.9 554.09,1224.3 575.84,1218.6", + style=invis]; + CitationTopic -> Topic [pos="e,357.66,1325 255.05,1325 283.85,1325 320.65,1325 347.53,1325", + style=dotted]; + TaxonDetermination -> CollectionObject [pos="e,578.49,510.78 449.91,510.26 486.42,510.41 532,510.59 568.46,510.74", + style=dotted]; + Content -> ContentTopic [pos="e,587.47,456 414.55,456 454.35,456 527.01,456 577.39,456", + style=dotted]; + OriginRelationship -> DerivedExtract [pos="e,583.66,348 444.83,348 483.8,348 534.64,348 573.54,348", + style=dotted]; + OriginRelationship -> DerivedSequence [pos="e,577.07,390.28 444.91,361.36 464.44,365.75 486.29,370.62 506.29,375 526.02,379.32 547.5,383.95 567.04,388.14", + style=dotted]; + OriginRelationship -> RelatedOriginRelationship [pos="e,552.62,310.96 444.91,334.64 464.44,330.25 486.29,325.38 506.29,321 518.1,318.41 530.54,315.71 542.82,313.06", + style=invis]; + Extract -> Sequence [pos="e,1032.7,566 884.55,566 919.65,566 981.08,566 1022.6,566", + style=dotted]; + LoanItem -> Loan [pos="e,606.15,218 419.81,218 466.1,218 548.58,218 596.02,218", + style=dotted]; + ObservationMatrixRow -> ObservationMatrix [pos="e,796.24,766 706.35,766 731.92,766 760.63,766 785.97,766", + style=dotted]; + ObservationMatrixRowItem -> ObservationMatrixRow [pos="e,560.03,766 470.62,766 496.32,766 524.49,766 550.01,766", + style=invis]; + Role -> Verifier [pos="e,604.6,48.033 412.17,69.111 456,64.31 543.98,54.673 594.43,49.147", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,798.25,1264 694.39,1264 723.31,1264 758.11,1264 787.93,1264", + style=dotted]; + VerifierRole -> Verifier [pos="e,604.55,41.962 426.49,22.459 473.18,27.572 549.11,35.889 594.52,40.863", + style=dotted]; + Version -> PinboardItem [pos="e,587.72,126 414.07,126 453.82,126 527.02,126 577.61,126", + style=invis]; + Creator -> Updater [pos="e,825.99,1139 661.83,1139 700.61,1139 771.51,1139 815.86,1139", + style=invis]; + Project -> Creator [pos="e,604.72,1139 412.64,1139 456.67,1139 544.36,1139 594.6,1139", + style=invis]; +} diff --git a/data/people_model_er.dot b/data/people_model_er.dot new file mode 100644 index 00000000..51aa7e8a --- /dev/null +++ b/data/people_model_er.dot @@ -0,0 +1,497 @@ +digraph Person { + graph [bb="0,0,980.39,802", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,522", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="63.694,468", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="63.694,306", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="63.694,414", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="63.694,252", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="63.694,360", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + CollectingEvent [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collecting-event", + label=CollectingEvent, + pos="614.89,675", + shape=Mrecord, + style=filled, + target=_top, + width=1.4444]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="785.89,675", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="614.89,219", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + Person [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#person", + label=Person, + pos="238.89,389", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.1468]; + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="238.89,522", + shape=box, + style=filled, + target=_top, + width=2.0972]; + AuthorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#author-role", + label=AuthorRole, + pos="424.39,784", + shape=box, + style=filled, + target=_top, + width=1.1111]; + AuthoredSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#authored-source", + label=AuthoredSource, + pos="614.89,784", + shape=box, + style=filled, + target=_top, + width=1.4583]; + TaxonNameAuthorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-name-author-role", + label=TaxonNameAuthorRole, + pos="424.39,730", + shape=box, + style=filled, + target=_top, + width=2.0556]; + AuthoredTaxonName [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#authored-taxon-name", + label=AuthoredTaxonName, + pos="614.89,730", + shape=box, + style=filled, + target=_top, + width=1.875]; + CollectorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#collector-role", + label=CollectorRole, + pos="424.39,675", + shape=box, + style=filled, + target=_top, + width=1.2778]; + DeterminerRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#determiner-role", + label=DeterminerRole, + pos="424.39,620", + shape=box, + style=filled, + target=_top, + width=1.4444]; + DwcOccurrence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#dwc-occurrence", + label=DwcOccurrence, + pos="928.39,675", + shape=box, + style=filled, + target=_top, + width=1.4444]; + EditorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#editor-role", + label=EditorRole, + pos="424.39,566", + shape=box, + style=filled, + target=_top, + width=1.0556]; + EditedSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#edited-source", + label=EditedSource, + pos="614.89,566", + shape=box, + style=filled, + target=_top, + width=1.2361]; + GeoreferencerRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeferencer-role", + label=GeoreferencerRole, + pos="424.39,512", + shape=box, + style=filled, + target=_top, + width=1.6528]; + Georeference [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#georeference", + label=Georeference, + pos="614.89,512", + shape=box, + style=filled, + target=_top, + width=1.2361]; + SourceRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#source-role", + label=SourceRole, + pos="424.39,458", + shape=box, + style=filled, + target=_top, + width=1.1111]; + HumanSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#human-source", + label=HumanSource, + pos="614.89,458", + shape=box, + style=filled, + target=_top, + width=1.3194]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="238.89,306", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="238.89,252", + shape=box, + style=filled, + target=_top, + width=0.93056]; + OriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="424.39,366", + shape=box, + style=filled, + target=_top, + width=1.6667]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="614.89,274", + shape=box, + style=filled, + target=_top, + width=1.2639]; + RelatedOriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-origin-relationship", + label=RelatedOriginRelationship, + pos="614.89,366", + shape=box, + style=filled, + target=_top, + width=2.2361]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="424.39,218", + shape=box, + style=filled, + target=_top, + width=0.75]; + TaxonDetermination [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-determination", + label=TaxonDetermination, + pos="614.89,620", + shape=box, + style=filled, + target=_top, + width=1.8056]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="424.39,164", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="614.89,164", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="424.39,274", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="424.39,72", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="614.89,72", + shape=box, + style=filled, + target=_top, + width=0.83333]; + User [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#user", + label=User, + pos="424.39,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + } + AlternateValue -> AlternateValueLanguage [pos="e,163.14,522 127.71,522 135.98,522 144.57,522 153.13,522", + style=dotted]; + Depiction -> Image [pos="e,211.74,306 109.3,306 137.96,306 174.73,306 201.61,306", + style=dotted]; + Tag -> Keyword [pos="e,205.11,252 90.999,252 118.58,252 162.36,252 194.96,252", + style=dotted]; + CollectingEvent -> CollectionObject [pos="e,731.26,675 667.05,675 684.03,675 703.14,675 720.95,675", + style=dotted]; + CollectionObject -> DwcOccurrence [pos="e,876.34,675 840.41,675 848.88,675 857.7,675 866.32,675", + style=dotted]; + Person -> AlternateValue [pos="e,103.62,507.81 220.16,410.05 199.71,433.28 164.16,470.61 127.39,495 122.82,498.03 117.86,500.85 112.79,503.43"]; + Person -> DataAttribute [pos="e,98.95,453.49 207.06,403.84 184.96,414.4 154.45,428.81 127.39,441 121.22,443.78 114.68,446.66 108.25,449.47"]; + Person -> Depiction [pos="e,95.797,318.94 208.59,373.52 186.46,361.99 155.24,346.04 127.39,333 120.22,329.64 112.52,326.2 105.06,322.94"]; + Person -> Identifier [pos="e,104.43,408.26 197.74,394.8 172.97,398.37 141.01,402.98 114.61,406.79"]; + Person -> Tag [pos="e,88.81,258.73 211.31,372.29 196.24,362.05 177.61,348.05 163.39,333 143.58,312.04 149.55,297.47 127.39,279 118.9,271.93 108.28,266.43 \ +98.212,262.29"]; + Person -> Note [pos="e,90.999,364.4 197.79,382.29 168.53,377.39 129.2,370.8 100.89,366.06"]; + Person -> AuthorRole [pos="e,384.15,777.76 258.9,409.55 276.37,429.71 301.47,462.13 314.39,495 357.39,604.39 276.8,665.35 350.39,757 356.67,764.82 365.45,770.38 \ +374.75,774.33"]; + Person -> TaxonNameAuthorRole [pos="e,361.19,711.87 258.64,409.66 275.92,429.89 300.88,462.37 314.39,495 350.1,581.28 291.07,629.88 350.39,702 351.36,703.18 352.38,\ +704.31 353.46,705.39"]; + Person -> CollectorRole [pos="e,378.21,665.39 258.2,409.85 275.17,430.22 299.91,462.79 314.39,495 342.86,558.32 304.69,594.74 350.39,647 355.54,652.89 362.07,\ +657.55 369.11,661.23"]; + Person -> DeterminerRole [pos="e,372.1,607.55 257.35,410.26 273.7,430.93 298.01,463.71 314.39,495 335.91,536.11 317.61,560.15 350.39,593 354.11,596.73 358.39,599.95 \ +362.98,602.73"]; + Person -> EditorRole [pos="e,386.38,556.94 255.26,411.3 282.61,450.79 338.05,529.71 350.39,539 358.24,544.91 367.53,549.64 376.79,553.39"]; + Person -> GeoreferencerRole [pos="e,367.79,493.87 258.93,409.44 279.7,430.74 314.75,463.89 350.39,485 353.04,486.57 355.79,488.07 358.61,489.51"]; + Person -> SourceRole [pos="e,384.26,443.29 274.4,401.98 302.72,412.63 343.16,427.83 374.76,439.71"]; + Person -> OriginRelationship [pos="e,364.05,373.44 280.16,383.95 301.76,381.24 329,377.83 353.91,374.71"]; + Person -> PinboardItem [pos="e,569.36,284.51 269.77,373.68 291.66,362.9 322.33,348.72 350.39,339 370.04,332.19 487.93,303.86 559.2,286.92"]; + Person -> RelatedOriginRelationship [pos="e,548.38,384.06 280.35,392.87 331.37,397 421.7,401.84 498.39,393 511.43,391.5 525.14,389.07 538.37,386.27"]; + Person -> Role [pos="e,397.29,223.04 267.96,373.03 283.33,363.13 301.77,349.22 314.39,333 339.84,300.3 320.82,276.03 350.39,247 360.55,237.03 374.56,\ +230.36 387.59,225.97"]; + Person -> VerifierRole [pos="e,382.51,171.53 269.27,373.47 284.87,363.8 303.09,349.97 314.39,333 350.46,278.8 306.85,239.41 350.39,191 356.56,184.14 364.63,179.02 \ +373.16,175.19"]; + Person -> Version [pos="e,395.26,284.55 263.71,371.08 296.02,346.78 349.81,306.34 350.39,306 361.5,299.51 374.16,293.51 385.79,288.51"]; + Person -> Creator [dir=back, + pos="s,269.89,373.86 278.57,368.3 291.97,359.22 305.77,347.34 314.39,333 367.45,244.69 287.48,185.59 350.39,104 361.37,89.753 380.03,\ +81.724 395.73,77.271", + style=dashed]; + Person -> Updater [dir=back, + pos="s,269.71,373.76 278.38,368.18 291.75,359.09 305.59,347.22 314.39,333 360.98,257.68 289.67,201.48 350.39,137 354.48,132.66 516.97,\ +94.514 584.71,78.761", + style=dashed]; + Person -> User [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,270.1,373.99 e,397.12,20.885 278.82,368.45 292.24,359.38 306,347.47 314.39,333 379.08,221.4 270.24,146.07 350.39,45 359.35,33.694 \ +373.54,27.122 387.03,23.303"]; + AuthorRole -> AuthoredSource [pos="e,562.35,784 464.45,784 489.82,784 523.42,784 552.34,784", + style=dotted]; + TaxonNameAuthorRole -> AuthoredTaxonName [pos="e,547.25,730 498.54,730 511.19,730 524.39,730 537.14,730", + style=dotted]; + CollectorRole -> CollectingEvent [pos="e,562.79,675 470.54,675 495.17,675 526,675 552.75,675", + style=dotted]; + DeterminerRole -> TaxonDetermination [pos="e,549.68,620 476.4,620 495.8,620 518.31,620 539.44,620", + style=dotted]; + EditorRole -> EditedSource [pos="e,570.11,566 462.63,566 490.39,566 528.73,566 559.85,566", + style=dotted]; + GeoreferencerRole -> Georeference [pos="e,570.29,512 484,512 508.29,512 536.28,512 560.04,512", + style=dotted]; + SourceRole -> HumanSource [pos="e,567.22,458 464.45,458 491.17,458 527.03,458 556.92,458", + style=dotted]; + OriginRelationship -> RelatedOriginRelationship [pos="e,534.24,366 484.51,366 497.08,366 510.61,366 524.02,366", + style=invis]; + Role -> Source [pos="e,587.6,218.86 451.6,218.14 484.28,218.31 540.35,218.61 577.27,218.81", + style=dotted]; + Role -> Verifier [pos="e,586.37,171.88 451.6,210.49 484.06,201.19 539.56,185.29 576.48,174.72", + style=invis]; + VerifierRole -> Verifier [pos="e,586.17,164 466.29,164 498.88,164 544.16,164 575.95,164", + style=dotted]; + Version -> PinboardItem [pos="e,569.33,274 453.61,274 481.35,274 524.42,274 558.93,274", + style=invis]; + Creator -> Updater [pos="e,584.72,72 453.2,72 485.27,72 538.2,72 574.5,72", + style=invis]; +} diff --git a/data/preparation_types_model_er.dot b/data/preparation_types_model_er.dot new file mode 100644 index 00000000..57f9bd4b --- /dev/null +++ b/data/preparation_types_model_er.dot @@ -0,0 +1,160 @@ +digraph PreparationType { + graph [bb="0,0,520.55,312.18", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="27,175.68", + shape=oval, + style=filled, + target=_top, + width=0.75]; + } + subgraph core { + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="339.05,293.68", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + } + subgraph supporting { + PreparationType [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#preparation-type", + label=PreparationType, + pos="169.27,146.68", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.202]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="169.27,204.68", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="475.05,200.68", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="339.05,146.68", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="339.05,92.68", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="475.05,119.68", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="339.05,200.68", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="339.05,38.68", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="475.05,38.68", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,135.75,197.96 53.078,180.86 73.282,185.04 102.14,191.01 125.91,195.92", + style=dotted]; + PreparationType -> Tag [pos="e,53.078,170.5 102.48,160.28 88.877,163.09 75.061,165.95 63.081,168.43"]; + PreparationType -> CollectionObject [pos="e,301.73,275.5 226.58,162.64 234.6,166.64 242.25,171.58 248.55,177.68 277.43,205.65 258.23,230.28 284.55,260.68 287.28,263.84 290.39,\ +266.78 293.7,269.52"]; + PreparationType -> PinboardItem [pos="e,435.91,218.71 224.27,163.32 232.86,167.27 241.28,172.02 248.55,177.68 270.15,194.51 260.18,215.2 284.55,227.68 328.95,250.42 386.44,\ +237.21 426.4,222.39"]; + PreparationType -> Role [pos="e,311.73,146.68 248.76,146.68 267.19,146.68 285.97,146.68 301.52,146.68"]; + PreparationType -> VerifierRole [pos="e,297.32,105.79 222.9,129.74 243.54,123.1 267.14,115.5 287.57,108.93"]; + PreparationType -> Version [pos="e,310,191.65 222.9,163.62 248.01,171.7 277.49,181.19 300.33,188.54"]; + PreparationType -> Creator [dir=back, + pos="s,199.06,124.46 207.12,118.44 229.06,102.17 257.76,81.808 284.55,65.68 292.75,60.742 301.96,55.866 310.41,51.646", + style=dashed]; + PreparationType -> Updater [dir=back, + pos="s,181.11,124.46 186.14,115.28 204.69,82.481 238.78,32.901 284.55,11.68 337.31,-12.784 406.49,8.8158 444.98,24.934", + style=dashed]; + Role -> Verifier [pos="e,446.11,125.31 366.2,141.41 386.15,137.39 413.91,131.8 436.27,127.29", + style=invis]; + VerifierRole -> Verifier [pos="e,446.35,114.1 380.62,100.85 398.39,104.43 419.12,108.61 436.53,112.12", + style=dotted]; + Version -> PinboardItem [pos="e,429.38,200.68 368.14,200.68 382.96,200.68 401.66,200.68 419.22,200.68", + style=invis]; + Creator -> Updater [pos="e,444.93,38.68 367.81,38.68 387.18,38.68 413.3,38.68 434.8,38.68", + style=invis]; +} diff --git a/data/project_members_model_er.dot b/data/project_members_model_er.dot new file mode 100644 index 00000000..0a21a18e --- /dev/null +++ b/data/project_members_model_er.dot @@ -0,0 +1,138 @@ +digraph ProjectMember { + graph [bb="0,0,467.51,328", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + ProjectMember [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#project-member", + label=ProjectMember, + pos="75.756,156", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.1043]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="233.01,310", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="233.01,256", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="233.01,202", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="343.01,229", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="343.01,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="233.01,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="437.51,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + User [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#user", + label=User, + pos="233.01,18", + shape=box, + style=filled, + target=_top, + width=0.75]; + } + ProjectMember -> PinboardItem [pos="e,199.59,291.97 92.619,178.05 112.68,204.95 149.23,250.79 187.51,283 188.68,283.98 189.89,284.95 191.12,285.91"]; + ProjectMember -> Role [pos="e,205.56,240.17 108.54,177.4 130.57,192.12 160.65,212.01 187.51,229 190.51,230.89 193.62,232.84 196.76,234.78"]; + ProjectMember -> VerifierRole [pos="e,191.46,189.99 130.62,171.96 147.16,176.86 165.29,182.23 181.58,187.06"]; + ProjectMember -> Creator [dir=back, + pos="s,151.47,154.44 161.57,153.82 198,151.39 240.79,146.55 278.51,137 290.59,133.94 303.33,128.91 314.21,124.02", + style=dashed]; + ProjectMember -> Project [dir=back, + pos="s,130.62,140.04 140.23,137.19 162.95,130.46 187.33,123.24 205.26,117.93", + style=dashed]; + ProjectMember -> Updater [dir=back, + pos="s,100.98,133.92 108.85,127.51 129.68,110.99 158.3,91.761 187.51,83 265.84,59.508 291.31,67.006 371.51,83 383.62,85.414 396.29,90.126 \ +407.19,94.947", + style=dashed]; + ProjectMember -> User [dir=back, + pos="s,97.984,133.94 105.28,126.55 127.06,104.6 158.22,74.349 187.51,50 193.22,45.256 199.58,40.432 205.67,36.017", + style=dashed]; + Role -> Verifier [pos="e,314.22,235.95 260.16,249.46 273.45,246.14 289.83,242.04 304.45,238.39", + style=invis]; + VerifierRole -> Verifier [pos="e,314.38,222.09 274.53,212.13 284.4,214.6 294.9,217.22 304.61,219.65", + style=dotted]; + Creator -> Updater [pos="e,407.35,110 371.52,110 379.54,110 388.47,110 397.09,110", + style=invis]; + Project -> Creator [pos="e,314.5,110 260.71,110 273.88,110 289.99,110 304.38,110", + style=invis]; +} diff --git a/data/project_sources_model_er.dot b/data/project_sources_model_er.dot new file mode 100644 index 00000000..08ee3fc1 --- /dev/null +++ b/data/project_sources_model_er.dot @@ -0,0 +1,138 @@ +digraph ProjectSource { + graph [bb="0,0,453.44,319.92", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="218.94,301.42", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + ProjectSource [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#project-source", + label=ProjectSource, + pos="68.721,138.42", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.9089]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="218.94,246.42", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="218.94,192.42", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="218.94,138.42", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="328.94,165.42", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="328.94,46.424", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="218.94,46.424", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="423.44,46.424", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + ProjectSource -> Source [dir=back, + pos="s,83.125,160.45 88.617,168.98 107.62,198.1 138.98,242.04 173.44,273.42 178.98,278.46 185.53,283.15 191.88,287.19", + style=dashed]; + ProjectSource -> PinboardItem [pos="e,187,228.3 96.361,160.64 116.93,177.44 146.37,200.73 173.44,219.42 175.06,220.54 176.72,221.66 178.41,222.78"]; + ProjectSource -> Role [pos="e,191.75,182.88 115.81,155.21 137.18,163 162.2,172.12 182.13,179.38"]; + ProjectSource -> VerifierRole [pos="e,177.39,138.42 137.76,138.42 147.71,138.42 157.8,138.42 167.32,138.42"]; + ProjectSource -> Creator [dir=back, + pos="s,119.73,122.94 129.3,119.9 168.07,107.51 219.58,90.417 264.44,73.424 276.32,68.926 289.25,63.523 300.32,58.737", + style=dashed]; + ProjectSource -> Project [dir=back, + pos="s,102.62,118.01 111.36,112.58 136.9,96.729 168.85,76.895 191.08,63.098", + style=dashed]; + ProjectSource -> Updater [dir=back, + pos="s,81.19,116.19 86.385,107.29 103.79,78.435 134.05,37.344 173.44,19.424 247.88,-14.44 277.24,3.4298 357.44,19.424 369.55,21.838 382.22,\ +26.55 393.12,31.37", + style=dashed]; + Role -> Verifier [pos="e,300.15,172.37 246.09,185.89 259.38,182.57 275.76,178.47 290.38,174.82", + style=invis]; + VerifierRole -> Verifier [pos="e,300.31,158.52 260.47,148.55 270.33,151.02 280.83,153.65 290.54,156.07", + style=dotted]; + Creator -> Updater [pos="e,393.28,46.424 357.45,46.424 365.47,46.424 374.41,46.424 383.02,46.424", + style=invis]; + Project -> Creator [pos="e,300.43,46.424 246.64,46.424 259.81,46.424 275.92,46.424 290.31,46.424", + style=invis]; +} diff --git a/data/protocol_relationships_model_er.dot b/data/protocol_relationships_model_er.dot new file mode 100644 index 00000000..e81dee02 --- /dev/null +++ b/data/protocol_relationships_model_er.dot @@ -0,0 +1,153 @@ +digraph ProtocolRelationship { + graph [bb="0,0,729.52,382", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + ProtocolRelationship [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="96.158,187", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.671]; + } + subgraph core { + } + subgraph supporting { + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="384.42,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="384.42,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="384.42,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="605.02,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="605.02,164", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="384.42,164", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Protocol [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#protocol", + label=Protocol, + pos="384.42,110", + shape=box, + style=filled, + target=_top, + width=0.86111]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="699.52,164", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + ProtocolRelationship -> PinboardItem [pos="e,338.66,364.02 109.61,209.06 129.83,242.65 173.14,305.97 228.32,337 258.71,354.09 297.33,360.86 328.43,363.34"]; + ProtocolRelationship -> Role [pos="e,357.14,309.06 120.21,209.09 144.9,231.42 186.25,265.11 228.32,283 266.73,299.34 314.52,305.79 346.82,308.34"]; + ProtocolRelationship -> VerifierRole [pos="e,342.74,248.43 156.66,204.76 179.04,211.18 204.75,218.25 228.32,224 262.99,232.46 302.39,240.57 332.8,246.51"]; + ProtocolRelationship -> Creator [dir=back, + pos="s,192.42,190.25 202.63,190.5 211.32,190.7 219.97,190.87 228.32,191 367.06,193.12 404.56,218.71 540.52,191 552.73,188.51 565.5,183.59 \ +576.35,178.62", + style=dashed]; + ProtocolRelationship -> Project [dir=back, + pos="s,192.48,179.34 202.74,178.52 258.25,174.06 321.86,168.95 356.85,166.13", + style=dashed]; + ProtocolRelationship -> Protocol [dir=back, + pos="s,143.78,166.72 153.34,162.86 176.26,153.73 203.23,143.9 228.32,137 271.01,125.26 321.78,117.57 353.31,113.5", + style=dashed]; + ProtocolRelationship -> Updater [dir=back, + pos="s,116.24,164.73 123.3,157.22 147.6,131.99 186.28,97.642 228.32,83 359.35,37.353 405.64,50.44 540.52,83 590.71,95.116 642.86,126.05 \ +672.92,146", + style=dashed]; + "Objects with Protocol relationships" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with protocol relationship", + label="Objects with Protocol relationships", + pos="384.42,18", + shape=hexagon, + style=filled, + target=_top, + width=4.3362]; + ProtocolRelationship -> "Objects with Protocol relationships" [dir=back, + pos="s,111.8,164.76 117.85,156.28 140.94,124.51 181.31,76.007 228.32,50 244.31,41.149 262.47,34.737 280.57,30.094", + style=dashed]; + Role -> Verifier [pos="e,576.18,286.44 411.79,306.74 450.26,301.99 522,293.13 566.13,287.68", + style=invis]; + VerifierRole -> Verifier [pos="e,576.44,279.59 426.02,261.02 466.26,265.98 527.38,273.53 566.51,278.37", + style=dotted]; + Creator -> Updater [pos="e,669.35,164 633.52,164 641.55,164 650.48,164 659.09,164", + style=invis]; + Project -> Creator [pos="e,576.3,164 412.22,164 450.85,164 522.35,164 566.3,164", + style=invis]; +} diff --git a/data/protocols_model_er.dot b/data/protocols_model_er.dot new file mode 100644 index 00000000..18cd3048 --- /dev/null +++ b/data/protocols_model_er.dot @@ -0,0 +1,261 @@ +digraph Protocol { + graph [bb="0,0,748.52,514", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="85.142,441", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + ProtocolRelationship [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="85.142,272", + shape=oval, + style=filled, + target=_top, + width=2.3651]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="388.02,441", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + Protocol [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#protocol", + label=Protocol, + pos="253.9,272", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.3227]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="253.9,496", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Documentation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="388.02,18", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="535.52,18", + shape=box, + style=filled, + target=_top, + width=1.0278]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="388.02,72", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="388.02,272", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="535.52,375", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="690.52,375", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="388.02,496", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="388.02,218", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="535.52,245", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="535.52,126", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="388.02,126", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="690.52,126", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="535.52,435", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,360.7,441 124.25,441 182.6,441 293.35,441 350.64,441", + style=dotted]; + Citation -> CitationTopic [pos="e,207.83,481.13 117.51,451.35 140.2,458.83 171.44,469.13 198.19,477.96", + style=dotted]; + Source -> SubsequentCitation [pos="e,494.74,393.04 415.03,429.2 434.59,420.33 461.96,407.92 485.57,397.2", + style=invis]; + Source -> OriginCitation [pos="e,487.85,436.92 415.03,439.93 432.46,439.21 456.1,438.23 477.75,437.34", + style=invis]; + Protocol -> Citation [pos="e,102.13,424.8 232.05,293.13 200.81,324.79 142.06,384.34 109.44,417.39"]; + Protocol -> ProtocolRelationship [pos="e,170.5,272 206.19,272 198.08,272 189.4,272 180.54,272"]; + Protocol -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,264.66,294.24 e,360.97,426.66 269.13,303.62 283.44,333.01 307.63,376.83 337.52,408 341.97,412.65 347.2,416.99 352.55,420.9", + style=dotted]; + Protocol -> Documentation [pos="e,347.18,36.163 257.71,249.7 264.27,205.75 284.33,106.85 337.52,45 338.13,44.286 338.77,43.587 339.43,42.903"]; + Protocol -> PinboardItem [pos="e,347.99,90.1 260.67,249.77 270.88,214.14 295.17,143.7 337.52,99 338.29,98.183 339.1,97.385 339.93,96.605"]; + Protocol -> Role [pos="e,360.97,272 301.85,272 318,272 335.82,272 350.97,272"]; + Protocol -> SubsequentCitation [pos="e,474.32,368.42 277.5,292.4 293.26,305.58 315.36,322.06 337.52,332 377.54,349.95 425.58,360.63 464.2,366.85"]; + Protocol -> VerifierRole [pos="e,346.3,234.64 291,257.24 305.18,251.45 321.68,244.7 336.97,238.46"]; + Protocol -> Creator [dir=back, + pos="s,272.43,249.9 279.01,242.35 294.24,225.28 315.2,204.59 337.52,191 366.51,173.34 459.61,146.45 506.7,133.49", + style=dashed]; + Protocol -> Project [dir=back, + pos="s,267.44,249.99 272.84,241.14 288.01,216.73 311.41,182.75 337.52,158 344.35,151.52 352.66,145.57 360.51,140.6", + style=dashed]; + Protocol -> Updater [dir=back, + pos="s,291.3,286.64 300.91,289.87 312.67,293.65 325.41,297.07 337.52,299 451.81,317.2 500.12,336.05 596.52,272 643.83,240.57 671.97,175.97 \ +683.46,144.31", + style=dashed]; + Protocol -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,270.66,294.13 e,487.87,424.05 276.98,302.22 292.19,321.25 313.88,345.14 337.52,361 380.68,389.96 436.71,409.59 477.98,421.31"]; + CitationTopic -> Topic [pos="e,360.98,496 300,496 316.52,496 334.99,496 350.65,496", + style=dotted]; + Documentation -> Document [pos="e,498.39,18 438.68,18 454.76,18 472.51,18 488.32,18", + style=dotted]; + Role -> Verifier [pos="e,507,250.11 415.03,267.17 437.8,262.95 471.17,256.75 496.87,251.99", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,632.16,375 596.55,375 604.88,375 613.49,375 621.95,375", + style=dotted]; + VerifierRole -> Verifier [pos="e,506.63,239.83 429.55,225.52 450.55,229.42 476.05,234.15 496.65,237.97", + style=dotted]; + Creator -> Updater [pos="e,660.46,126 564.23,126 588.25,126 623.29,126 650.21,126", + style=invis]; + Project -> Creator [pos="e,507.01,126 415.7,126 438.49,126 471.52,126 496.97,126", + style=invis]; +} diff --git a/data/ranged_lot_categories_model_er.dot b/data/ranged_lot_categories_model_er.dot new file mode 100644 index 00000000..a5441dec --- /dev/null +++ b/data/ranged_lot_categories_model_er.dot @@ -0,0 +1,136 @@ +digraph RangedLotCategory { + graph [bb="0,0,501.28,317.11", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + RangedLotCategory [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#ranged-lot-category", + label=RangedLotCategory, + pos="92.64,137.11", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.5733]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="266.78,299.11", + shape=box, + style=filled, + target=_top, + width=1.2639]; + RangedLot [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#ranged-lot", + label=RangedLot, + pos="266.78,245.11", + shape=box, + style=filled, + target=_top, + width=1.0694]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="266.78,191.11", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="266.78,137.11", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="376.78,164.11", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="376.78,45.109", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="266.78,45.109", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="471.28,45.109", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + RangedLotCategory -> PinboardItem [pos="e,233.48,280.93 111.5,159.42 134.84,187.72 177.87,237.05 221.28,272.11 222.47,273.07 223.69,274.02 224.94,274.95"]; + RangedLotCategory -> RangedLot [pos="e,235.57,226.89 127.92,159.13 153.55,175.52 189.5,198.39 221.28,218.11 223.15,219.27 225.07,220.46 227.01,221.65"]; + RangedLotCategory -> Role [pos="e,239.36,182.82 150.48,154.94 176.59,163.13 206.76,172.59 229.69,179.79"]; + RangedLotCategory -> VerifierRole [pos="e,225.24,137.11 185.51,137.11 195.63,137.11 205.65,137.11 215,137.11"]; + RangedLotCategory -> Creator [dir=back, + pos="s,156.45,120.47 166.24,117.75 209.11,105.77 264.23,89.404 312.28,72.109 324.23,67.808 337.17,62.44 348.23,57.626", + style=dashed]; + RangedLotCategory -> Project [dir=back, + pos="s,133.57,115.77 142.6,110.94 173.98,94.171 213.5,73.049 239.19,59.32", + style=dashed]; + RangedLotCategory -> Updater [dir=back, + pos="s,109.07,114.74 115.31,106.56 137.94,77.537 176.38,35.792 221.28,18.109 297.37,-11.859 325.08,2.1148 405.28,18.109 417.38,20.523 \ +430.05,25.235 440.96,30.055", + style=dashed]; + Role -> Verifier [pos="e,347.99,171.06 293.92,184.57 307.21,181.25 323.6,177.15 338.22,173.5", + style=invis]; + VerifierRole -> Verifier [pos="e,348.15,157.2 308.3,147.24 318.16,149.71 328.67,152.33 338.38,154.76", + style=dotted]; + Creator -> Updater [pos="e,441.11,45.109 405.28,45.109 413.31,45.109 422.24,45.109 430.85,45.109", + style=invis]; + Project -> Creator [pos="e,348.26,45.109 294.48,45.109 307.65,45.109 323.76,45.109 338.15,45.109", + style=invis]; +} diff --git a/data/repositories_model_er.dot b/data/repositories_model_er.dot new file mode 100644 index 00000000..2b17dbd3 --- /dev/null +++ b/data/repositories_model_er.dot @@ -0,0 +1,244 @@ +digraph Repository { + graph [bb="0,0,555.39,332.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,288", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="63.694,234", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="63.694,180", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="63.694,126", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="63.694,18", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="63.694,72", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="404.89,314", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + } + subgraph supporting { + Repository [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#repository", + label=Repository, + pos="238.89,151", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.5963]; + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="238.89,288", + shape=box, + style=filled, + target=_top, + width=2.0972]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="238.89,234", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Extract [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#extract", + label=Extract, + pos="404.89,259", + shape=box, + style=filled, + target=_top, + width=0.77778]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="238.89,18", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="404.89,205", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="404.89,97", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="404.89,151", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="525.39,124", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="404.89,43", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="525.39,43", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + AlternateValue -> AlternateValueLanguage [pos="e,163.14,288 127.71,288 135.98,288 144.57,288 153.13,288", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,184.28,234 114.79,234 133.34,234 154.62,234 174.21,234", + style=dotted]; + Tag -> Keyword [pos="e,205.11,18 90.999,18 118.58,18 162.36,18 194.96,18", + style=dotted]; + Repository -> AlternateValue [pos="e,105.8,274.36 207.71,170.18 193.36,180.14 176.5,193.12 163.39,207 143.58,227.96 149.55,242.53 127.39,261 123.6,264.15 119.4,266.99 \ +115,269.54"]; + Repository -> Confidence [pos="e,97.406,220.37 203.82,168.96 182.11,180.23 153.29,194.87 127.39,207 120.75,210.11 113.65,213.29 106.72,216.33"]; + Repository -> DataAttribute [pos="e,116.19,171.38 181.45,160.45 163.81,163.4 144.26,166.68 126.28,169.69"]; + Repository -> Identifier [pos="e,104.43,131.74 181.27,142.83 159.69,139.71 135.27,136.19 114.37,133.17"]; + Repository -> Tag [pos="e,88.34,25.88 219.03,128.68 198.42,105.38 163.5,68.95 127.39,45 118.35,39.006 107.77,33.848 97.893,29.694"]; + Repository -> Note [pos="e,87.409,81.567 201.7,133.6 180.19,123.35 152.33,110.23 127.39,99 117.5,94.546 106.67,89.827 96.839,85.601"]; + Repository -> CollectionObject [pos="e,362.18,295.82 271.81,169.8 286.23,179.5 302.63,192.37 314.39,207 338.56,237.08 323.86,257.98 350.39,286 351.58,287.26 352.84,288.47 \ +354.15,289.63"]; + Repository -> Extract [pos="e,376.75,246.39 267,171.67 294.08,192.17 333.96,221.93 350.39,232 355.86,235.35 361.8,238.66 367.67,241.75"]; + Repository -> PinboardItem [pos="e,359.19,190.28 284.27,165.61 304.42,172.25 328.45,180.16 349.66,187.15"]; + Repository -> Role [pos="e,377.42,105.71 284.27,136.39 310.45,127.77 343.16,117 367.76,108.9"]; + Repository -> VerifierRole [pos="e,363.14,151 296.33,151 314.77,151 335.13,151 353.13,151"]; + Repository -> Creator [dir=back, + pos="s,265.83,130.09 273.93,123.78 295.28,107.29 323.71,86.353 350.39,70 358.55,64.997 367.75,60.103 376.2,55.886", + style=dashed]; + Repository -> Updater [dir=back, + pos="s,254.45,128.94 260.08,120.66 284.96,84.389 326.82,27.165 350.39,16 397.63,-6.3807 459.4,13.185 495.2,28.645", + style=dashed]; + Role -> Verifier [pos="e,496.79,117.71 431.89,102.93 448.03,106.6 469.03,111.39 486.94,115.47", + style=invis]; + VerifierRole -> Verifier [pos="e,496.59,130.33 446.67,141.71 459.67,138.75 473.98,135.49 486.74,132.58", + style=dotted]; + Creator -> Updater [pos="e,495.13,43 433.67,43 448.97,43 468.2,43 485.02,43", + style=invis]; +} diff --git a/data/roles_model_er.dot b/data/roles_model_er.dot new file mode 100644 index 00000000..d6e279b4 --- /dev/null +++ b/data/roles_model_er.dot @@ -0,0 +1,140 @@ +digraph Role { + graph [bb="0,0,379.21,382", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + Role [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#role", + label=Role, + pos="33.547,191", + shape=doubleoctagon, + style=filled, + target=_top, + width=0.93185]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="193.15,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="193.15,310", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="349.21,310", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="193.15,218", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Organization [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#organization", + label=Organization, + pos="193.15,164", + shape=box, + style=filled, + target=_top, + width=1.2083]; + Person [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#person", + label=Person, + pos="193.15,110", + shape=box, + style=filled, + target=_top, + width=0.75]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="349.21,218", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Role -> Role [pos="e,59.006,206.19 8.0877,206.19 -2.0959,218.4 6.3904,231 33.547,231 53.702,231 63.573,224.06 63.159,215.49"]; + Role -> PinboardItem [pos="e,147.32,358.03 39.004,213.24 46.57,245.24 64.972,304.03 103.09,337 112.83,345.42 125.14,351.22 137.47,355.21"]; + Role -> VerifierRole [pos="e,151.26,300.54 47.077,213.19 59.14,232.72 79.065,260.69 103.09,278 114.57,286.27 128.4,292.59 141.71,297.35"]; + Role -> Verifier [pos="e,320.48,297.14 53.025,209.46 65.985,221.36 84.294,236.2 103.09,245 177.2,279.67 205.07,258.76 283.21,283 292.38,285.84 302.05,289.49 \ +311.04,293.17", + style=invis]; + Role -> Creator [dir=back, + pos="s,67.203,196.59 77.059,198.28 104.86,203.04 140.36,209.13 164.53,213.27", + style=dashed]; + Role -> Organization [dir=back, + pos="s,67.203,185.41 77.11,183.71 99.516,179.87 126.92,175.18 149.36,171.33", + style=dashed]; + Role -> Person [dir=back, + pos="s,53.569,172.81 61.421,166 73.451,155.86 88.251,144.74 103.09,137 123,126.61 147.55,119.55 165.83,115.26", + style=dashed]; + Role -> Updater [dir=back, + pos="s,41.356,168.78 44.904,159.42 55.202,133.71 73.757,99.127 103.09,83 173.24,44.436 215.43,40.407 283.21,83 324.62,109.02 340.26,169.63 \ +345.65,199.99", + style=dashed]; + "Objects with Roles" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with role", + label="Objects with Roles", + pos="193.15,18", + shape=hexagon, + style=filled, + target=_top, + width=2.5016]; + Role -> "Objects with Roles" [dir=back, + pos="s,39.65,168.98 42.376,159.3 51.765,127.54 70.472,79.289 103.09,50 112.26,41.768 123.7,35.613 135.3,31.024", + style=dashed]; + VerifierRole -> Verifier [pos="e,320.3,310 235.03,310 258.38,310 287.45,310 310.29,310", + style=dotted]; + Creator -> Updater [pos="e,319.07,218 221.69,218 246.02,218 281.77,218 309.07,218", + style=invis]; +} diff --git a/data/sequence_relationships_model_er.dot b/data/sequence_relationships_model_er.dot new file mode 100644 index 00000000..38c793a3 --- /dev/null +++ b/data/sequence_relationships_model_er.dot @@ -0,0 +1,203 @@ +digraph SequenceRelationship { + graph [bb="0,0,656.55,373.38", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="42.896,231.38", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="42.896,121.38", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="42.896,177.38", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + } + subgraph supporting { + SequenceRelationship [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#sequence-relationship", + label=SequenceRelationship, + pos="222.17,178.38", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.7883]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="222.17,120.38", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="413.05,355.38", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="413.05,301.38", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="413.05,247.38", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="532.05,274.38", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="532.05,101.38", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ObjectSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#object-sequence", + label=ObjectSequence, + pos="413.05,155.38", + shape=box, + style=filled, + target=_top, + width=1.4444]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="413.05,101.38", + shape=box, + style=filled, + target=_top, + width=0.76389]; + SubjectSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subject-sequence", + label=SubjectSequence, + pos="413.05,47.376", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="626.55,101.38", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> Keyword [pos="e,188.58,120.56 70.054,121.23 98.595,121.07 144.72,120.81 178.52,120.62", + style=dotted]; + SequenceRelationship -> Identifier [pos="e,78.497,221.03 160.45,196.53 136.72,203.62 110.02,211.61 88.169,218.14"]; + SequenceRelationship -> Tag [pos="e,67.377,129.35 161.73,160.04 148.56,155.93 134.69,151.54 121.79,147.38 107.05,142.62 90.797,137.22 76.964,132.57"]; + SequenceRelationship -> Note [pos="e,71.207,177.53 121.8,177.82 107.39,177.73 93.373,177.66 81.289,177.59"]; + SequenceRelationship -> PinboardItem [pos="e,372.19,337.36 239,200.58 262.34,232.12 308.64,290.28 358.55,328.38 360.13,329.58 361.77,330.76 363.46,331.91"]; + SequenceRelationship -> Role [pos="e,386.05,289.23 251.64,200.46 278.47,220.81 320.17,251.26 358.55,274.38 364.42,277.91 370.81,281.41 377.06,284.67"]; + SequenceRelationship -> VerifierRole [pos="e,371.41,232.53 276.54,197.87 303.35,207.67 335.66,219.47 362,229.09"]; + SequenceRelationship -> Creator [dir=back, + pos="s,290.22,195.21 300.36,196.94 350.49,204.95 415.88,207.52 467.55,182.38 494.22,169.4 513,139.19 522.91,119.56", + style=dashed]; + SequenceRelationship -> ObjectSequence [dir=back, + pos="s,318.44,166.78 328.39,165.56 339.67,164.19 350.74,162.84 360.95,161.6", + style=dashed]; + SequenceRelationship -> Project [dir=back, + pos="s,286.09,160.67 295.61,157.49 304.77,154.35 313.94,150.96 322.55,147.38 339.25,140.43 342.47,136.67 358.55,128.38 367.24,123.89 \ +376.76,119.06 385.33,114.74", + style=dashed]; + SequenceRelationship -> SubjectSequence [dir=back, + pos="s,297.3,162.78 306.52,158.26 312.26,155.14 317.68,151.54 322.55,147.38 350.04,123.86 333.09,100.07 358.55,74.376 361.84,71.051 365.63,\ +68.06 369.64,65.389", + style=dashed]; + SequenceRelationship -> Updater [dir=back, + pos="s,299.92,163.28 308.7,158.42 313.74,155.26 318.43,151.61 322.55,147.38 363.49,105.35 311.75,55.755 358.55,20.376 436.03,-38.191 \ +555.92,44.668 604.27,83.348", + style=dashed]; + Role -> Verifier [pos="e,503.25,280.79 440.31,295.32 455.96,291.7 476.1,287.06 493.43,283.06", + style=invis]; + VerifierRole -> Verifier [pos="e,503.4,268 454.64,256.74 467.22,259.65 481.03,262.83 493.4,265.69", + style=dotted]; + Creator -> Updater [pos="e,596.38,101.38 560.55,101.38 568.58,101.38 577.51,101.38 586.12,101.38", + style=invis]; + Project -> Creator [pos="e,503.38,101.38 440.6,101.38 456.12,101.38 475.97,101.38 493.12,101.38", + style=invis]; +} diff --git a/data/sequences_model_er.dot b/data/sequences_model_er.dot new file mode 100644 index 00000000..5b5cc40e --- /dev/null +++ b/data/sequences_model_er.dot @@ -0,0 +1,570 @@ +digraph Sequence { + graph [bb="0,0,1090.3,872.53", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="85.142,573.53", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="85.142,519.53", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="85.142,465.53", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="85.142,411.53", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="85.142,303.53", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="85.142,357.53", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + ProtocolRelationship [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="85.142,249.53", + shape=oval, + style=filled, + target=_top, + width=2.3651]; + } + subgraph core { + Sequence [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#sequence", + label=Sequence, + pos="281.78,411.53", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.4399]; + } + subgraph supporting { + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="281.78,573.53", + shape=box, + style=filled, + target=_top, + width=2.0972]; + BlastQuerySequenceRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#blast-query-sequence-relationship", + label=BlastQuerySequenceRelationship, + pos="525.78,854.53", + shape=box, + style=filled, + target=_top, + width=2.75]; + BlastQuerySequenceSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#blast-query-sequence-sequence", + label=BlastQuerySequenceSequence, + pos="818.28,854.53", + shape=box, + style=filled, + target=_top, + width=2.5278]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="281.78,519.53", + shape=box, + style=filled, + target=_top, + width=1.5139]; + OriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-relationship", + label=OriginRelationship, + pos="525.78,784.53", + shape=box, + style=filled, + target=_top, + width=1.6667]; + DerivedSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#derived-sequence", + label=DerivedSequence, + pos="818.28,800.53", + shape=box, + style=filled, + target=_top, + width=1.5556]; + Documentation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="525.78,692.53", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="818.28,692.53", + shape=box, + style=filled, + target=_top, + width=1.0278]; + ForwardPrimerRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#forward-primer-relationship", + label=ForwardPrimerRelationship, + pos="525.78,638.53", + shape=box, + style=filled, + target=_top, + width=2.3333]; + ForwardPrimerSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#forward-primer-sequence", + label=ForwardPrimerSequence, + pos="818.28,638.53", + shape=box, + style=filled, + target=_top, + width=2.1111]; + GeneAttribute [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#gene-attribute", + label=GeneAttribute, + pos="525.78,584.53", + shape=box, + style=filled, + target=_top, + width=1.3056]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="281.78,303.53", + shape=box, + style=filled, + target=_top, + width=0.93056]; + RelatedOriginRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-origin-relationship", + label=RelatedOriginRelationship, + pos="818.28,746.53", + shape=box, + style=filled, + target=_top, + width=2.2361]; + OriginExtract [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-extract", + label=OriginExtract, + pos="1034.3,692.53", + shape=box, + style=filled, + target=_top, + width=1.2639]; + OriginLot [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-lot", + label=OriginLot, + pos="1034.3,638.53", + shape=box, + style=filled, + target=_top, + width=0.98611]; + OriginRangedLot [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-ranged-lot", + label=OriginRangedLot, + pos="1034.3,854.53", + shape=box, + style=filled, + target=_top, + width=1.5556]; + OriginSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-sequence", + label=OriginSequence, + pos="1034.3,800.53", + shape=box, + style=filled, + target=_top, + width=1.4444]; + OriginSpecimen [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-specimen", + label=OriginSpecimen, + pos="1034.3,746.53", + shape=box, + style=filled, + target=_top, + width=1.4722]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="818.28,530.53", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Protocol [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#protocol", + label=Protocol, + pos="281.78,249.53", + shape=box, + style=filled, + target=_top, + width=0.86111]; + ReferenceSequenceForAssemblyRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#reference-sequence-for-assembly-relationship", + label=ReferenceSequenceForAssemblyRelationship, + pos="525.78,438.53", + shape=box, + style=filled, + target=_top, + width=3.6806]; + ReferenceSequenceForAssemblySequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#reference-sequence-for-assembly-sequence", + label=ReferenceSequenceForAssemblySequence, + pos="818.28,438.53", + shape=box, + style=filled, + target=_top, + width=3.4444]; + RelatedSequenceRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-sequence-relationship", + label=RelatedSequenceRelationship, + pos="525.78,384.53", + shape=box, + style=filled, + target=_top, + width=2.4722]; + RelatedSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-sequence", + label=RelatedSequence, + pos="818.28,384.53", + shape=box, + style=filled, + target=_top, + width=1.5278]; + ReversePrimerRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#reverse-primer-relationship", + label=ReversePrimerRelationship, + pos="525.78,330.53", + shape=box, + style=filled, + target=_top, + width=2.3056]; + ReversePrimerSequence [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#reverse-primer-sequence", + label=ReversePrimerSequence, + pos="818.28,330.53", + shape=box, + style=filled, + target=_top, + width=2.0694]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="525.78,222.53", + shape=box, + style=filled, + target=_top, + width=0.75]; + SequenceRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#sequence-relationship", + label=SequenceRelationship, + pos="525.78,168.53", + shape=box, + style=filled, + target=_top, + width=1.9028]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="525.78,276.53", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="818.28,249.53", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="525.78,530.53", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="818.28,76.526", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="525.78,76.526", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="1034.3,76.526", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + AlternateValue -> AlternateValueLanguage [pos="e,206.2,573.53 149.07,573.53 164.01,573.53 180.19,573.53 195.94,573.53", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,226.94,519.53 136.01,519.53 160.58,519.53 190.47,519.53 216.71,519.53", + style=dotted]; + Tag -> Keyword [pos="e,248.15,303.53 112.39,303.53 144.55,303.53 199.46,303.53 237.81,303.53", + style=dotted]; + ProtocolRelationship -> Protocol [pos="e,250.58,249.53 170.38,249.53 194.71,249.53 220.14,249.53 240.46,249.53", + style=dotted]; + Sequence -> AlternateValue [pos="e,137.32,563.13 259.26,433.05 243.84,448.92 222.93,471.34 206.28,492.53 188.47,515.21 193.31,529.15 170.28,546.53 163.26,551.83 \ +155.15,556.12 146.8,559.57"]; + Sequence -> Confidence [pos="e,127,509.3 257.26,432.28 235.84,450.29 202.71,476 170.28,492.53 159.82,497.86 148.09,502.42 136.78,506.19"]; + Sequence -> DataAttribute [pos="e,129.34,453.54 235.68,424.04 206.91,432.02 169.49,442.4 139.29,450.78"]; + Sequence -> Identifier [pos="e,128.38,411.53 230,411.53 201.85,411.53 166.91,411.53 138.52,411.53"]; + Sequence -> Tag [pos="e,110.9,309.22 257.26,390.77 235.84,372.76 202.71,347.06 170.28,330.53 154.7,322.58 136.31,316.36 120.7,311.9"]; + Sequence -> Note [pos="e,111.19,364.48 235.77,399.04 200.83,389.34 153.09,376.1 121.02,367.2"]; + Sequence -> ProtocolRelationship [pos="e,144.35,262.5 259.26,390 243.84,374.13 222.93,351.71 206.28,330.53 188.47,307.84 193.31,293.91 170.28,276.53 165.22,272.7 159.6,\ +269.41 153.73,266.58"]; + Sequence -> BlastQuerySequenceRelationship [pos="e,426.59,836.69 308.34,431.68 325.25,446.56 346.26,468.36 357.28,492.53 386.89,557.43 348.23,756.22 393.28,811.53 400.01,819.78 \ +408.35,826.47 417.54,831.88"]; + Sequence -> OriginRelationship [pos="e,465.54,784.34 307.79,431.45 324.67,446.38 345.88,468.33 357.28,492.53 407.04,598.04 315.07,665.97 393.28,752.53 409.07,769.99 \ +432.63,778.69 455.47,782.8"]; + Sequence -> Documentation [pos="e,475.2,694.84 307.29,431.69 323.93,446.74 345.07,468.73 357.28,492.53 393.16,562.39 337.68,610.07 393.28,665.53 411.92,684.11 439.71,\ +691.56 464.94,694.07"]; + Sequence -> ForwardPrimerRelationship [pos="e,441.6,635.21 306.64,432.04 322.99,447.25 344.02,469.3 357.28,492.53 384.68,540.51 352.47,574.28 393.28,611.53 404.12,621.42 417.59,\ +628.08 431.73,632.5"]; + Sequence -> GeneAttribute [pos="e,478.63,584.41 304.84,432.65 320.53,448.32 341.53,470.67 357.28,492.53 376.6,519.31 366.67,537.97 393.28,557.53 414.83,573.36 443.46,\ +580.42 468.51,583.4"]; + Sequence -> RelatedOriginRelationship [pos="e,737.62,752.79 307.64,431.52 324.45,446.48 345.64,468.45 357.28,492.53 401.76,584.49 317.75,650.76 393.28,719.53 440.49,762.5 617.71,\ +759.71 727.54,753.39"]; + Sequence -> PinboardItem [pos="e,772.44,522.59 313.15,429.59 334.78,441.63 364.92,456.8 393.28,465.53 507.01,500.52 540.73,485.12 658.28,503.53 692.95,508.95 731.79,\ +515.54 762.4,520.85"]; + Sequence -> ReferenceSequenceForAssemblyRelationship [pos="e,392.84,423.81 333.52,417.19 348.23,418.83 365.07,420.71 382.51,422.65"]; + Sequence -> RelatedSequenceRelationship [pos="e,436.45,394.38 333.52,405.87 360.4,402.87 394.38,399.08 426.21,395.52"]; + Sequence -> ReversePrimerRelationship [pos="e,442.56,344.08 313.8,393.74 335.46,381.98 365.39,367.03 393.28,357.53 405.77,353.27 419.15,349.58 432.44,346.41"]; + Sequence -> Role [pos="e,498.63,221.2 305.77,390.48 321.7,375.02 342.61,352.89 357.28,330.53 378.9,297.59 362.59,274.22 393.28,249.53 420.13,227.93 459.83,\ +222.27 488.58,221.35"]; + Sequence -> SequenceRelationship [pos="e,457.03,160.06 301.12,389.43 318.1,372.33 342.85,347.82 357.28,321.53 387.17,267.09 348.12,229.14 393.28,186.53 407.86,172.78 427.48,\ +165.22 447.1,161.58"]; + Sequence -> VerifierRole [pos="e,484.24,278.9 302.75,389.24 328.53,360.96 372.56,314.54 393.28,303.53 418.07,290.36 448.63,283.61 474.05,280.15"]; + Sequence -> Version [pos="e,496.66,527.23 304.11,432.97 325.06,452.83 358.81,481.75 393.28,498.53 422.85,512.91 459.38,521.13 486.43,525.63"]; + Sequence -> Creator [dir=back, + pos="s,308.22,391.32 315.96,384.24 331.1,369.89 347.74,351.03 357.28,330.53 383.84,273.45 346.03,91.118 393.28,49.526 508.18,-51.588 \ +715.38,28.952 789.77,63.099", + style=dashed]; + Sequence -> Project [dir=back, + pos="s,307.61,391.53 315.34,384.41 330.49,369.99 347.33,351.02 357.28,330.53 400.96,240.62 325.41,181.91 393.28,108.53 420.01,79.634 \ +468.06,74.851 498.09,74.997", + style=dashed]; + Sequence -> Updater [dir=back, + pos="s,307.41,391.43 315.1,384.29 330.19,369.84 347.05,350.88 357.28,330.53 395.7,254.13 329.33,198.29 393.28,141.53 439.02,100.94 882.11,\ +114.4 942.28,103.53 963.37,99.717 986.5,92.814 1004.2,86.942", + style=dashed]; + BlastQuerySequenceRelationship -> BlastQuerySequenceSequence [pos="e,726.86,854.53 625.13,854.53 654.58,854.53 686.91,854.53 716.51,854.53", + style=dotted]; + OriginRelationship -> DerivedSequence [pos="e,762.16,797.49 585.92,787.78 634.19,790.44 702.31,794.19 752.14,796.94", + style=dotted]; + OriginRelationship -> RelatedOriginRelationship [pos="e,737.58,756.95 585.92,776.79 626.65,771.46 681.51,764.29 727.59,758.26", + style=invis]; + Documentation -> Document [pos="e,781.19,692.53 576.39,692.53 630.93,692.53 717.86,692.53 771.03,692.53", + style=dotted]; + ForwardPrimerRelationship -> ForwardPrimerSequence [pos="e,741.97,638.53 610.03,638.53 648.2,638.53 693.4,638.53 731.83,638.53", + style=dotted]; + RelatedOriginRelationship -> OriginExtract [pos="e,988.57,706.49 898.88,729.94 913.37,726.67 928.31,723.13 942.28,719.53 954.13,716.47 966.75,712.92 978.71,709.42", + style=dotted]; + RelatedOriginRelationship -> OriginLot [pos="e,998.68,652.05 899.07,738.33 914.3,734.26 929.47,728.28 942.28,719.53 966.1,703.25 956.59,684.54 978.28,665.53 981.75,662.49 985.63,\ +659.7 989.66,657.17", + style=dotted]; + RelatedOriginRelationship -> OriginRangedLot [pos="e,990.68,836.51 899.07,754.73 914.3,758.79 929.47,764.77 942.28,773.53 966.1,789.8 956.59,808.52 978.28,827.53 979.58,828.66 980.93,\ +829.76 982.32,830.82", + style=dotted]; + RelatedOriginRelationship -> OriginSequence [pos="e,981.97,784.6 898.88,763.12 913.37,766.39 928.31,769.92 942.28,773.53 951.98,776.03 962.2,778.86 972.14,781.73", + style=dotted]; + RelatedOriginRelationship -> OriginSpecimen [pos="e,981.13,746.53 898.97,746.53 922.78,746.53 948.51,746.53 971.03,746.53", + style=dotted]; + ReferenceSequenceForAssemblyRelationship -> ReferenceSequenceForAssemblySequence [pos="e,694.06,438.53 658.44,438.53 666.87,438.53 675.36,438.53 683.8,438.53", + style=dotted]; + RelatedSequenceRelationship -> RelatedSequence [pos="e,763.1,384.53 615.13,384.53 659.6,384.53 712.53,384.53 753.07,384.53", + style=dotted]; + ReversePrimerRelationship -> ReversePrimerSequence [pos="e,743.34,330.53 608.87,330.53 647.68,330.53 693.96,330.53 733.05,330.53", + style=dotted]; + Role -> Verifier [pos="e,789.51,246.94 552.82,224.95 604.32,229.73 719.39,240.43 779.33,246", + style=invis]; + SequenceRelationship -> Sequence [pos="e,313.06,393.34 457.03,176.97 434.25,180.84 410.32,188.45 393.28,204.53 348.12,247.14 387.17,285.09 357.28,339.53 347.83,356.75 \ +333.95,373.2 320.73,386.14", + style=dotted]; + VerifierRole -> Verifier [pos="e,789.5,252.11 567.48,272.74 623.82,267.51 724.78,258.12 779.51,253.04", + style=dotted]; + Version -> PinboardItem [pos="e,772.66,530.53 554.9,530.53 602.69,530.53 700.55,530.53 762.32,530.53", + style=invis]; + Creator -> Updater [pos="e,1004.1,76.526 846.82,76.526 884.26,76.526 951.44,76.526 994.11,76.526", + style=invis]; + Project -> Creator [pos="e,789.63,76.526 553.33,76.526 605.13,76.526 719.8,76.526 779.5,76.526", + style=invis]; +} diff --git a/data/serial_chronologies_model_er.dot b/data/serial_chronologies_model_er.dot new file mode 100644 index 00000000..7a799908 --- /dev/null +++ b/data/serial_chronologies_model_er.dot @@ -0,0 +1,136 @@ +digraph SerialChronology { + graph [bb="0,0,408.99,332.68", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + SerialChronology [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#serial-chronology", + label=SerialChronology, + pos="83.495,152.68", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.3193]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="257.99,314.68", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="257.99,260.68", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="257.99,206.68", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="378.99,233.68", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="257.99,152.68", + shape=box, + style=filled, + target=_top, + width=0.79167]; + PrecedingSerial [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#preceding-serial", + label=PrecedingSerial, + pos="257.99,98.683", + shape=box, + style=filled, + target=_top, + width=1.4167]; + SucceedingSerial [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#succeeding-serial", + label=SucceedingSerial, + pos="257.99,44.683", + shape=box, + style=filled, + target=_top, + width=1.5278]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="378.99,152.68", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + SerialChronology -> PinboardItem [pos="e,216.43,296.59 99.954,175.16 120.72,204.08 160.02,254.54 202.99,287.68 204.55,288.88 206.16,290.05 207.83,291.19"]; + SerialChronology -> Role [pos="e,230.79,248.47 114.44,174.83 137.97,191.81 171.84,215.37 202.99,233.68 208.94,237.18 215.4,240.67 221.72,243.91"]; + SerialChronology -> VerifierRole [pos="e,216.44,193.99 139.07,169.77 160.72,176.54 185.45,184.29 206.65,190.92"]; + SerialChronology -> Creator [dir=back, + pos="s,167.21,152.68 177.22,152.68 196.33,152.68 215.01,152.68 229.49,152.68", + style=dashed]; + SerialChronology -> PrecedingSerial [dir=back, + pos="s,139.07,135.6 148.66,132.59 167.89,126.58 188.68,120.07 206.86,114.37", + style=dashed]; + SerialChronology -> SucceedingSerial [dir=back, + pos="s,114.44,130.53 122.82,124.53 145.61,108.28 175.37,87.925 202.99,71.683 208.14,68.654 213.67,65.635 219.16,62.773", + style=dashed]; + SerialChronology -> Updater [dir=back, + pos="s,95.955,130.44 101,121.67 120.44,88.848 156.12,38.907 202.99,17.683 247.52,-2.4847 271.59,-8.3295 312.99,17.683 354.4,43.703 370.04,\ +104.31 375.43,134.67", + style=dashed]; + Role -> Verifier [pos="e,350.28,239.97 285.1,254.76 301.31,251.08 322.4,246.3 340.38,242.22", + style=invis]; + VerifierRole -> Verifier [pos="e,350.28,227.4 299.61,215.9 312.79,218.89 327.34,222.19 340.29,225.13", + style=dotted]; + Creator -> Updater [pos="e,348.88,152.68 286.59,152.68 302.06,152.68 321.6,152.68 338.65,152.68", + style=invis]; +} diff --git a/data/serials_model_er.dot b/data/serials_model_er.dot new file mode 100644 index 00000000..bd2f8763 --- /dev/null +++ b/data/serials_model_er.dot @@ -0,0 +1,315 @@ +digraph Serial { + graph [bb="0,0,741.39,601.35", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,408.85", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="63.694,246.85", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="63.694,354.85", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="63.694,192.85", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="63.694,300.85", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="437.89,582.85", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + Serial [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#serial", + label=Serial, + pos="238.89,300.85", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.0491]; + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="238.89,408.85", + shape=box, + style=filled, + target=_top, + width=2.0972]; + SucceedingSerialChronology [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#succeeding-serial-chronology", + label=SucceedingSerialChronology, + pos="437.89,527.85", + shape=box, + style=filled, + target=_top, + width=2.4306]; + ImmediatelyPrecedingSerial [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#immediately-preceding-serial", + label=ImmediatelyPrecedingSerial, + pos="651.39,527.85", + shape=box, + style=filled, + target=_top, + width=2.3889]; + PrecedingSerialChronology [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#preceding-serial-chronology", + label=PrecedingSerialChronology, + pos="437.89,473.85", + shape=box, + style=filled, + target=_top, + width=2.3194]; + ImmediatelySucceedingSerial [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#immediately-succeeding-serial", + label=ImmediatelySucceedingSerial, + pos="651.39,473.85", + shape=box, + style=filled, + target=_top, + width=2.5]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="238.89,192.85", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="651.39,381.85", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="437.89,219.85", + shape=box, + style=filled, + target=_top, + width=0.75]; + Translation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#translation", + label=Translation, + pos="437.89,327.85", + shape=box, + style=filled, + target=_top, + width=1.0833]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="437.89,273.85", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="651.39,246.85", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="437.89,381.85", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="437.89,165.85", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Language [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#language", + label=Language, + pos="437.89,111.85", + shape=box, + style=filled, + target=_top, + width=0.97222]; + TranslatedFromSerial [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#translated-from-serial", + label=TranslatedFromSerial, + pos="437.89,57.848", + shape=box, + style=filled, + target=_top, + width=1.875]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="651.39,165.85", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + AlternateValue -> AlternateValueLanguage [pos="e,163.14,408.85 127.71,408.85 135.98,408.85 144.57,408.85 153.13,408.85", + style=dotted]; + Tag -> Keyword [pos="e,205.11,192.85 90.999,192.85 118.58,192.85 162.36,192.85 194.96,192.85", + style=dotted]; + Serial -> AlternateValue [pos="e,102.17,394.35 216.46,318.83 194.89,336.37 160.22,363.07 127.39,381.85 122.31,384.75 116.87,387.54 111.38,390.15"]; + Serial -> DataAttribute [pos="e,105.74,259.65 202.98,289.97 177.85,282.13 143.56,271.44 115.41,262.66"]; + Serial -> Identifier [pos="e,98.499,344.31 202.98,311.73 175.62,320.26 137.4,332.18 108.08,341.32"]; + Serial -> Tag [pos="e,87.632,201.28 216.46,282.86 194.89,265.33 160.22,238.63 127.39,219.85 117.9,214.42 107.11,209.4 97.185,205.19"]; + Serial -> Note [pos="e,91.756,300.85 201.05,300.85 171.88,300.85 131.29,300.85 102,300.85"]; + Serial -> Source [pos="e,410.83,581.23 261.93,318.81 278.9,333.86 301.56,356.86 314.39,381.85 350.26,451.71 297.93,496.4 350.39,554.85 363.17,569.09 383.24,\ +576.12 400.83,579.58"]; + Serial -> SucceedingSerialChronology [pos="e,361.44,509.71 261.33,319.13 277.97,334.37 300.47,357.46 314.39,381.85 341.78,429.84 311.49,461.61 350.39,500.85 351.32,501.79 \ +352.29,502.7 353.29,503.58"]; + Serial -> PrecedingSerialChronology [pos="e,372.74,455.83 259.44,319.84 275.2,335.67 297.46,359.2 314.39,381.85 333.01,406.75 326.45,422 350.39,441.85 354.44,445.21 358.89,\ +448.24 363.55,450.96"]; + Serial -> PinboardItem [pos="e,605.78,398.29 257.41,321.34 282.48,350.05 328.03,399.74 350.39,408.85 431.29,441.82 534.36,420.26 596.22,401.3"]; + Serial -> Role [pos="e,410.79,226.87 267.52,285.89 289.55,274.31 321.42,258.37 350.39,246.85 366.7,240.36 385.22,234.4 400.93,229.74"]; + Serial -> Translation [pos="e,398.81,322.63 276.48,305.86 308.04,310.19 353.87,316.47 388.46,321.21"]; + Serial -> VerifierRole [pos="e,396.07,279.44 276.48,295.83 307.24,291.62 351.54,285.55 385.79,280.85"]; + Serial -> Version [pos="e,408.86,374.27 267.52,315.81 289.55,327.38 321.42,343.33 350.39,354.85 366.1,361.1 383.86,366.86 399.18,371.44"]; + Serial -> Creator [dir=back, + pos="s,258.27,280.75 265.31,273.2 291.65,245.08 331.55,204.1 350.39,192.85 368.49,182.04 391.34,175.15 409.01,171.04", + style=dashed]; + Serial -> Language [dir=back, + pos="s,260.52,282.07 268.09,274.67 283.16,259.65 301.26,239.84 314.39,219.85 336.01,186.92 320.97,165.05 350.39,138.85 364.84,125.98 \ +385.37,119.24 402.81,115.72", + style=dashed]; + Serial -> TranslatedFromSerial [dir=back, + pos="s,261.55,282.69 268.93,275.84 284.48,261.01 302.77,241.01 314.39,219.85 344.27,165.42 307.41,129.67 350.39,84.848 355.94,79.057 \ +362.72,74.502 370,70.92", + style=dashed]; + Serial -> Updater [dir=back, + pos="s,262.04,282.95 269.52,276.15 285.26,261.42 303.55,241.41 314.39,219.85 352.8,143.45 284.51,85.364 350.39,30.848 410.31,-18.737 \ +454.12,-0.29138 525.39,30.848 580.42,54.891 622.04,116.43 640.26,147.42", + style=dashed]; + SucceedingSerialChronology -> ImmediatelyPrecedingSerial [pos="e,565.26,527.85 525.52,527.85 535.26,527.85 545.22,527.85 555.06,527.85", + style=dotted]; + PrecedingSerialChronology -> ImmediatelySucceedingSerial [pos="e,561.12,473.85 521.57,473.85 531.2,473.85 541.1,473.85 550.93,473.85", + style=dotted]; + Role -> Verifier [pos="e,622.69,243.31 465.25,223.21 502.38,227.95 570.3,236.62 612.74,242.04", + style=invis]; + VerifierRole -> Verifier [pos="e,622.86,250.36 479.67,268.64 518.18,263.73 575.46,256.41 612.87,251.64", + style=dotted]; + Version -> PinboardItem [pos="e,605.54,381.85 466.97,381.85 499.6,381.85 554.22,381.85 595.39,381.85", + style=invis]; + Creator -> Updater [pos="e,621.38,165.85 466.54,165.85 503.49,165.85 569.2,165.85 611.23,165.85", + style=invis]; +} diff --git a/data/sled_images_model_er.dot b/data/sled_images_model_er.dot new file mode 100644 index 00000000..1ad8899c --- /dev/null +++ b/data/sled_images_model_er.dot @@ -0,0 +1,203 @@ +digraph SledImage { + graph [bb="0,0,556.52,366.88", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="45.496,324.38", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="45.496,195.38", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="45.496,139.38", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="183.75,348.38", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + } + subgraph supporting { + SledImage [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#sled-image", + label=SledImage, + pos="183.75,139.38", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.5767]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="322.02,301.38", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="183.75,197.38", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="322.02,247.38", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="322.02,193.38", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="322.02,139.38", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="432.02,166.38", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="432.02,47.377", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="322.02,47.377", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="526.52,47.377", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Depiction -> CollectionObject [pos="e,128.78,338.87 87.378,331.58 97.239,333.32 108.01,335.21 118.65,337.09", + style=dotted]; + Tag -> Keyword [pos="e,149.81,196.89 72.768,195.76 91.728,196.04 117.75,196.42 139.72,196.75", + style=dotted]; + SledImage -> Tag [pos="e,68.996,186.13 143.67,155.44 122.97,163.95 97.863,174.27 78.356,182.28"]; + SledImage -> Note [pos="e,73.742,139.38 127.11,139.38 112.59,139.38 97.282,139.38 83.954,139.38"]; + SledImage -> Image [dir=back, + pos="s,222.97,155.64 231.24,161.46 234.64,164.16 237.79,167.13 240.52,170.38 271.96,207.84 245.78,236.32 276.52,274.38 281.4,280.42 288.02,\ +285.45 294.67,289.47", + style=dashed]; + SledImage -> PinboardItem [pos="e,287.85,229.34 221.11,156.53 227.93,160.57 234.72,165.22 240.52,170.38 260.97,188.58 256.41,201.79 276.52,220.38 277.59,221.37 \ +278.71,222.35 279.87,223.31"]; + SledImage -> Role [pos="e,294.76,182.97 224.53,155.14 243.8,162.78 266.74,171.87 285.43,179.27"]; + SledImage -> VerifierRole [pos="e,280.51,139.38 240.57,139.38 250.39,139.38 260.57,139.38 270.25,139.38"]; + SledImage -> Creator [dir=back, + pos="s,228.23,124.74 237.73,121.48 274.38,108.87 324.17,91.283 367.52,74.377 379.35,69.763 392.27,64.341 403.35,59.571", + style=dashed]; + SledImage -> Project [dir=back, + pos="s,213.65,119.87 222.12,114.15 245.05,98.665 273.87,79.209 294.47,65.3", + style=dashed]; + SledImage -> Updater [dir=back, + pos="s,194.2,117.23 198.75,107.98 213.5,79.23 239.71,38.475 276.52,20.377 349.9,-15.705 380.32,4.3832 460.52,20.377 472.62,22.791 485.29,\ +27.503 496.2,32.324", + style=dashed]; + Image -> Depiction [pos="e,90.298,320.71 294.76,303.58 250.24,307.31 159.09,314.94 100.48,319.85", + style=dotted]; + Role -> Verifier [pos="e,403.23,173.32 349.16,186.84 362.45,183.52 378.84,179.42 393.45,175.77", + style=invis]; + VerifierRole -> Verifier [pos="e,403.38,159.47 363.54,149.51 373.4,151.97 383.9,154.6 393.61,157.03", + style=dotted]; + Creator -> Updater [pos="e,496.35,47.377 460.52,47.377 468.54,47.377 477.48,47.377 486.09,47.377", + style=invis]; + Project -> Creator [pos="e,403.5,47.377 349.71,47.377 362.88,47.377 378.99,47.377 393.39,47.377", + style=invis]; +} diff --git a/data/sources_model_er.dot b/data/sources_model_er.dot new file mode 100644 index 00000000..3c8d4103 --- /dev/null +++ b/data/sources_model_er.dot @@ -0,0 +1,313 @@ +digraph Source { + graph [bb="0,0,767.39,447.73", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,391.73", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="63.694,298.73", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="63.694,233.73", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="63.694,179.73", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="63.694,71.733", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="63.694,125.73", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#source", + label=Source, + pos="238.89,173.73", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.1663]; + AssertedDistribution [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#asserted-distribution", + label=AssertedDistribution, + pos="238.89,298.73", + shape=Mrecord, + style=filled, + target=_top, + width=1.7917]; + } + subgraph supporting { + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="238.89,429.73", + shape=box, + style=filled, + target=_top, + width=2.0972]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="238.89,375.73", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Documentation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#documentation", + label=Documentation, + pos="400.89,267.73", + shape=box, + style=filled, + target=_top, + width=1.4028]; + Document [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#document", + label=Document, + pos="532.89,267.73", + shape=box, + style=filled, + target=_top, + width=1.0278]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="238.89,71.733", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="532.89,213.73", + shape=box, + style=filled, + target=_top, + width=1.2639]; + ProjectSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project-source", + label=ProjectSource, + pos="400.89,321.73", + shape=box, + style=filled, + target=_top, + width=1.2778]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="532.89,321.73", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="400.89,121.73", + shape=box, + style=filled, + target=_top, + width=0.75]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="400.89,375.73", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="400.89,67.733", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="532.89,94.733", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="400.89,213.73", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="642.89,321.73", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="737.39,321.73", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + AlternateValue -> AlternateValueLanguage [pos="e,163.09,413.32 114.79,402.72 126.81,405.36 139.98,408.25 153.1,411.13", + style=dotted]; + Citation -> AssertedDistribution [pos="e,174.1,298.73 102.7,298.73 120.67,298.73 142.77,298.73 163.85,298.73", + style=dotted]; + Citation -> CitationTopic [pos="e,197.21,357.65 92.521,311.1 118.17,322.51 156.85,339.7 187.86,353.49", + style=dotted]; + Tag -> Keyword [pos="e,205.11,71.733 90.999,71.733 118.58,71.733 162.36,71.733 194.96,71.733", + style=dotted]; + Source -> AlternateValue [pos="e,82.864,374.28 220.93,195.24 205.57,214.91 182.49,244.93 163.39,271.73 146.65,295.23 145.39,303.19 127.39,325.73 115.87,340.15 \ +101.82,355.15 89.939,367.2"]; + Source -> Citation [pos="e,88.946,284.97 215.23,192.91 193.32,211.12 158.9,238.9 127.39,260.73 117.94,267.28 107.35,273.94 97.602,279.82"]; + Source -> DataAttribute [pos="e,103.56,220.27 201.81,186.23 176.12,195.13 141.32,207.19 113.2,216.93"]; + Source -> Identifier [pos="e,106.62,178.28 196.65,175.16 172.75,175.99 142.43,177.04 116.88,177.92"]; + Source -> Tag [pos="e,87.527,80.349 213.73,155.36 191.89,139.24 158.49,115.79 127.39,98.733 117.8,93.477 106.98,88.503 97.066,84.29"]; + Source -> Note [pos="e,89.878,132.71 198.57,162.84 168.88,154.61 128.48,143.41 99.852,135.48"]; + Source -> Documentation [pos="e,366.22,249.64 266.93,190.6 289.17,204.37 321.61,224.17 350.39,240.73 352.62,242.01 354.91,243.32 357.22,244.62"]; + Source -> PinboardItem [pos="e,487.32,196.47 281.23,173.09 324.16,173.17 393.07,175.37 451.39,186.73 460.01,188.41 468.98,190.77 477.66,193.41"]; + Source -> ProjectSource [pos="e,363.32,303.61 256.39,195.88 276.52,221.83 312.56,265.06 350.39,294.73 351.77,295.81 353.19,296.87 354.65,297.91"]; + Source -> Role [pos="e,373.47,130.32 277,161.67 303.08,153.2 337.79,141.91 363.67,133.5"]; + Source -> VerifierRole [pos="e,365.49,85.79 263.88,155.29 285.88,138.69 319.62,114.02 350.39,94.733 352.34,93.507 354.36,92.279 356.4,91.058"]; + Source -> Version [pos="e,371.78,206.7 280.68,183.93 305.63,190.17 337.34,198.1 361.79,204.21"]; + Source -> Creator [dir=back, + pos="s,261.44,154.52 268.73,147.67 283.25,133.84 300.63,116.14 314.39,98.733 333.2,74.929 323.88,55.481 350.39,40.733 439.56,-8.8724 \ +504.97,-3.1295 578.39,67.733 612.81,100.96 633.56,251.28 639.85,303.66", + style=dashed]; + Source -> Updater [dir=back, + pos="s,262.98,155.08 270.48,148.4 285.29,134.88 302.42,117.24 314.39,98.733 338.68,61.163 313.53,30.086 350.39,4.7326 364.48,-4.9568 \ +569.85,3.2894 578.39,8.7326 687.47,78.252 724.33,248.02 733.7,303.71", + style=dashed]; + CitationTopic -> Topic [pos="e,373.83,375.73 285.31,375.73 310.15,375.73 340.49,375.73 363.71,375.73", + style=dotted]; + Documentation -> Document [pos="e,495.85,267.73 451.41,267.73 462.61,267.73 474.46,267.73 485.53,267.73", + style=dotted]; + ProjectSource -> Project [pos="e,505.06,321.73 446.99,321.73 462.57,321.73 479.84,321.73 494.71,321.73", + style=dotted]; + Project -> Creator [pos="e,614.37,321.73 560.59,321.73 573.75,321.73 589.86,321.73 604.26,321.73", + style=invis]; + Role -> Verifier [pos="e,504.27,100.47 428.2,116.27 447.2,112.32 473.13,106.94 494.31,102.54", + style=invis]; + VerifierRole -> Verifier [pos="e,504.01,88.942 442.66,76.201 459.03,79.601 477.8,83.498 493.88,86.838", + style=dotted]; + Version -> PinboardItem [pos="e,487.38,213.73 430.1,213.73 443.82,213.73 460.8,213.73 476.94,213.73", + style=invis]; + Creator -> Updater [pos="e,707.22,321.73 671.39,321.73 679.42,321.73 688.35,321.73 696.96,321.73", + style=invis]; +} diff --git a/data/tagged_section_keywords_model_er.dot b/data/tagged_section_keywords_model_er.dot new file mode 100644 index 00000000..81f8b876 --- /dev/null +++ b/data/tagged_section_keywords_model_er.dot @@ -0,0 +1,152 @@ +digraph TaggedSectionKeyword { + graph [bb="0,0,583.23,377.42", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + } + subgraph core { + } + subgraph supporting { + TaggedSectionKeyword [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#tagged-section-keyword", + label=TaggedSectionKeyword, + pos="108.12,182.42", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.0032]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="323.23,359.42", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="323.23,305.42", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="323.23,251.42", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="458.73,278.42", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="458.73,51.417", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="323.23,159.42", + shape=box, + style=filled, + target=_top, + width=0.93056]; + OtuPageLayoutSection [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#otu-page-layout-section", + label=OtuPageLayoutSection, + pos="323.23,105.42", + shape=box, + style=filled, + target=_top, + width=1.9722]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="323.23,51.417", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="553.23,51.417", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + TaggedSectionKeyword -> PinboardItem [pos="e,277.45,345.54 125.02,204.45 149.21,236.57 198.2,296.35 252.23,332.42 257.16,335.71 262.55,338.68 268.07,341.34"]; + TaggedSectionKeyword -> Role [pos="e,296.03,296.88 137.81,204.46 165.89,225.35 210.43,256.68 252.23,278.42 263.05,284.04 275.31,289.16 286.52,293.39"]; + TaggedSectionKeyword -> VerifierRole [pos="e,281.72,238.3 168.48,201.64 201.04,212.18 240.98,225.11 271.98,235.15"]; + TaggedSectionKeyword -> Creator [dir=back, + pos="s,169.97,201.31 179.98,203.69 241.51,217.71 330.49,226.88 394.23,186.42 435.13,160.46 450.16,100.39 455.29,69.895", + style=dashed]; + TaggedSectionKeyword -> Keyword [dir=back, + pos="s,213.8,171.12 223.82,170.04 248,167.43 271.61,164.88 289.65,162.93", + style=dashed]; + TaggedSectionKeyword -> OtuPageLayoutSection [dir=back, + pos="s,164.28,162.49 173.9,159.01 205.54,147.58 243.03,134.03 272.4,123.42", + style=dashed]; + TaggedSectionKeyword -> Project [dir=back, + pos="s,135.16,160.27 143.04,153.85 171.02,131.27 212.45,100.06 252.23,78.417 265.96,70.947 282.2,64.547 295.58,59.856", + style=dashed]; + TaggedSectionKeyword -> Updater [dir=back, + pos="s,120.91,160.28 125.99,151.63 148.86,113.49 193.66,50.391 252.23,24.417 347.71,-17.923 384.81,3.9894 487.23,24.417 499.34,26.83 \ +512.01,31.542 522.91,36.363", + style=dashed]; + Role -> Verifier [pos="e,429.9,284.05 350.29,300.15 370.16,296.13 397.82,290.53 420.09,286.03", + style=invis]; + VerifierRole -> Verifier [pos="e,429.87,272.78 365.01,259.66 382.41,263.18 402.6,267.27 419.69,270.72", + style=dotted]; + Creator -> Updater [pos="e,523.07,51.417 487.24,51.417 495.26,51.417 504.2,51.417 512.81,51.417", + style=invis]; + Project -> Creator [pos="e,430.17,51.417 350.93,51.417 370.77,51.417 398.09,51.417 420.14,51.417", + style=invis]; +} diff --git a/data/tags_model_er.dot b/data/tags_model_er.dot new file mode 100644 index 00000000..9d6aa02c --- /dev/null +++ b/data/tags_model_er.dot @@ -0,0 +1,166 @@ +digraph Tag { + graph [bb="0,0,461.11,437.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Tag [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#tag", + label=Tag, + pos="31,210", + shape=doubleoctagon, + style=filled, + target=_top, + width=0.86111]; + } + subgraph core { + ControlledVocabularyTerm [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#controlled-vocabulary-term", + label=ControlledVocabularyTerm, + pos="185.06,419", + shape=Mrecord, + style=filled, + target=_top, + width=2.3056]; + } + subgraph supporting { + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="185.06,364", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="185.06,310", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="185.06,256", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="336.61,283", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="336.61,110", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="185.06,164", + shape=box, + style=filled, + target=_top, + width=0.93056]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="185.06,110", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="431.11,110", + shape=box, + style=filled, + target=_top, + width=0.83333]; + } + Tag -> ControlledVocabularyTerm [dir=back, + pos="s,33.921,232.28 35.229,242.36 40.942,282.61 56.474,350.91 98,391 101.96,394.82 106.44,398.12 111.23,400.97", + style=dashed]; + Tag -> PinboardItem [pos="e,139.17,356.99 37.779,232.19 46.285,260.53 64.869,309.22 98,337 107,344.55 118.12,349.99 129.34,353.91"]; + Tag -> Role [pos="e,158.04,305.59 45.961,230.73 57.977,247.09 76.709,269.36 98,283 113.03,292.63 131.75,299.04 147.88,303.19"]; + Tag -> VerifierRole [pos="e,143.43,243.71 62.042,219.09 82.504,225.28 110.09,233.62 133.85,240.81"]; + Tag -> Creator [dir=back, + pos="s,62.207,214.97 72.311,216.21 122.35,221.9 208.82,224.96 272.11,191 298.09,177.06 316.96,147.44 327.09,128.14", + style=dashed]; + Tag -> Keyword [dir=back, + pos="s,62.042,200.91 71.87,197.94 96.664,190.44 128.15,180.91 151.45,173.87", + style=dashed]; + Tag -> Project [dir=back, + pos="s,45.961,189.27 52.069,181.22 63.893,166.16 80.036,148.51 98,137 116.06,125.43 139.44,118.51 157.27,114.58", + style=dashed]; + Tag -> Updater [dir=back, + pos="s,36.178,187.96 38.628,178.22 46.847,147.79 64.13,103.57 98,83 199.47,21.378 248.69,59.781 365.11,83 377.22,85.414 389.89,90.126 \ +400.79,94.947", + style=dashed]; + "Objects with Tags" [color="#dedede", + fillcolor="#cdabef", + group=polymorphic, + height=0.5, + href="/develop/Data/models.html#objects with tag", + label="Objects with Tags", + pos="185.06,18", + shape=hexagon, + style=filled, + target=_top, + width=2.4182]; + Tag -> "Objects with Tags" [dir=back, + pos="s,35.337,187.99 37.292,178.08 44.808,142.33 61.894,84.855 98,50 106.6,41.697 117.55,35.512 128.73,30.917", + style=dashed]; + Role -> Verifier [pos="e,308.09,287.97 212.11,305.3 235.82,301.02 271.12,294.64 297.92,289.81", + style=invis]; + VerifierRole -> Verifier [pos="e,308.03,278.02 226.92,263.38 249.07,267.38 276.26,272.28 297.9,276.19", + style=dotted]; + Creator -> Updater [pos="e,400.95,110 365.12,110 373.14,110 382.08,110 390.69,110", + style=invis]; + Project -> Creator [pos="e,308.1,110 212.79,110 236.53,110 271.46,110 298.01,110", + style=invis]; +} diff --git a/data/taxon_determinations_model_er.dot b/data/taxon_determinations_model_er.dot new file mode 100644 index 00000000..1e29546c --- /dev/null +++ b/data/taxon_determinations_model_er.dot @@ -0,0 +1,397 @@ +digraph TaxonDetermination { + graph [bb="0,0,908.19,678", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="85.142,605", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="85.142,310", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="85.142,419", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="85.142,255", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="85.142,365", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + ProtocolRelationship [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#protocol-relationship", + label=ProtocolRelationship, + pos="85.142,201", + shape=oval, + style=filled, + target=_top, + width=2.3651]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="515.69,605", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="515.69,289", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + TaxonDetermination [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#taxon-determination", + label=TaxonDetermination, + pos="301.74,367", + shape=doubleoctagon, + style=filled, + target=_top, + width=2.6515]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="301.74,660", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="301.74,309", + shape=box, + style=filled, + target=_top, + width=1.5139]; + DeterminerRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#determiner-role", + label=DeterminerRole, + pos="515.69,234", + shape=box, + style=filled, + target=_top, + width=1.4444]; + Determiner [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#determiner", + label=Determiner, + pos="695.19,234", + shape=box, + style=filled, + target=_top, + width=1.0972]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="301.74,255", + shape=box, + style=filled, + target=_top, + width=0.75]; + Label [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#label", + label=Label, + pos="515.69,180", + shape=box, + style=filled, + target=_top, + width=0.75]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="515.69,126", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Protocol [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#protocol", + label=Protocol, + pos="301.74,201", + shape=box, + style=filled, + target=_top, + width=0.86111]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="515.69,72", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="695.19,512", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="850.19,512", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="515.69,660", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="515.69,18", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="695.19,45", + shape=box, + style=filled, + target=_top, + width=0.79167]; + BiologicalCollectionObject [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#biological-collection-object", + label=BiologicalCollectionObject, + pos="515.69,512", + shape=box, + style=filled, + target=_top, + width=2.2917]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="695.19,344", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="515.69,344", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="850.19,344", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="695.19,581", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,488.43,605 124.17,605 206.02,605 397.95,605 478.31,605", + style=dotted]; + Citation -> CitationTopic [pos="e,255.49,648.4 119.67,613.59 153.36,622.23 205.85,635.68 245.66,645.88", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,247.11,309.25 135.91,309.77 165.97,309.63 204.57,309.45 236.86,309.3", + style=dotted]; + Depiction -> Image [pos="e,274.62,255 130.87,255 170.44,255 227.48,255 264.33,255", + style=dotted]; + ProtocolRelationship -> Protocol [pos="e,270.56,201 170.34,201 201.27,201 234.88,201 260.23,201", + style=dotted]; + Source -> SubsequentCitation [pos="e,659.66,530.1 542.88,591.28 571.18,576.45 616.74,552.58 650.48,534.9", + style=invis]; + Source -> OriginCitation [pos="e,647.55,587.31 542.88,601.46 567.68,598.11 605.74,592.96 637.49,588.67", + style=invis]; + TaxonDetermination -> Citation [pos="e,101.23,588.26 280.8,389.12 240.53,433.78 149.78,534.43 107.98,580.78"]; + TaxonDetermination -> Confidence [pos="e,126.25,320.65 237.21,350.13 204.92,341.55 166.26,331.28 136.12,323.28"]; + TaxonDetermination -> DataAttribute [pos="e,131.92,407.91 233.85,383.21 204.35,390.36 170.07,398.66 141.97,405.47"]; + TaxonDetermination -> Depiction [pos="e,126.4,262.67 232.98,350.86 223.5,346.91 214.28,342.02 206.28,336 183.54,318.87 192.99,300.18 170.28,283 160.31,275.45 148.19,269.88 \ +136.29,265.78"]; + TaxonDetermination -> Note [pos="e,113.32,365.25 206.28,366.12 177.08,365.85 146.58,365.56 123.63,365.35"]; + TaxonDetermination -> ProtocolRelationship [pos="e,147.93,213.24 228.98,351.61 220.61,347.56 212.77,342.45 206.28,336 170.43,300.31 206.26,263.58 170.28,228 166.33,224.09 161.81,\ +220.75 156.96,217.89"]; + TaxonDetermination -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,311.45,389.31 e,488.65,598.91 315.46,398.74 334.73,443.16 375.33,523.81 433.19,572 446.38,582.98 463.69,590.68 478.97,595.86", + style=dotted]; + TaxonDetermination -> Otu [dir=back, + pos="s,362.01,349.25 371.46,345.96 380.21,342.84 388.97,339.49 397.19,336 413.85,328.93 416.59,324.18 433.19,317 451.32,309.16 472.42,\ +301.96 488.61,296.83", + style=dashed]; + TaxonDetermination -> DeterminerRole [pos="e,463.52,244.02 372.79,351.26 381.63,347.26 390.06,342.26 397.19,336 424.99,311.61 405.43,285.42 433.19,261 439.32,255.61 446.55,\ +251.29 454.14,247.83"]; + TaxonDetermination -> Label [pos="e,488.53,182.3 375.27,351.68 383.41,347.62 390.99,342.49 397.19,336 438.33,292.97 392.12,250.08 433.19,207 445,194.61 462.62,187.9 \ +478.46,184.27"]; + TaxonDetermination -> PinboardItem [pos="e,470.07,131.88 376.22,351.89 384.11,347.79 391.36,342.59 397.19,336 452.1,273.9 378.38,215.18 433.19,153 440.44,144.78 450.24,139.06 \ +460.54,135.07"]; + TaxonDetermination -> Role [pos="e,488.33,73.726 376.5,352.13 384.34,347.99 391.51,342.72 397.19,336 466.01,254.66 364.49,180.43 433.19,99 444.31,85.823 462.02,79.041 \ +478.09,75.566"]; + TaxonDetermination -> SubsequentCitation [pos="e,634.07,494.9 335.54,389.15 361.19,405.65 398.25,427.71 433.19,442 503.33,470.7 525.05,465.18 598.19,485 606.63,487.29 615.48,489.72 \ +624.24,492.16"]; + TaxonDetermination -> VerifierRole [pos="e,473.86,22.364 377.14,352.03 384.77,347.91 391.71,342.66 397.19,336 479.98,235.36 350.54,145.76 433.19,45 441.02,35.456 452.31,\ +29.262 464.01,25.248"]; + TaxonDetermination -> BiologicalCollectionObject [dir=back, + pos="s,323.55,389.09 330.87,396.45 355.87,421.32 394.39,456.53 433.19,480 441.78,485.19 451.35,489.83 460.84,493.86", + style=dashed]; + TaxonDetermination -> Creator [dir=back, + pos="s,397.33,375.48 407.38,376.04 464.1,379.03 535.27,379.68 598.19,371 621.69,367.76 647.53,360.25 666.48,353.98", + style=dashed]; + TaxonDetermination -> Project [dir=back, + pos="s,397.25,356.74 407.37,355.65 437.28,352.4 467.33,349.14 487.99,346.9", + style=dashed]; + TaxonDetermination -> Updater [dir=back, + pos="s,376.97,381.72 386.95,383.32 402.28,385.68 418.17,387.74 433.19,389 576.47,401 615.22,399.28 756.19,371 777.95,366.63 802,359.59 \ +820.19,353.79", + style=dashed]; + TaxonDetermination -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,312.68,389.28 e,647.66,577.67 317.09,398.27 337.09,438 377.27,505.42 433.19,539 466.71,559.13 571.23,571.07 637.39,576.8"]; + CitationTopic -> Topic [pos="e,488.56,660 347.95,660 386.9,660 442.39,660 478.47,660", + style=dotted]; + DeterminerRole -> Determiner [pos="e,655.66,234 568.03,234 592.38,234 621.33,234 645.35,234", + style=dotted]; + Role -> Verifier [pos="e,666.43,49.223 542.88,68.016 572.86,63.456 622.21,55.95 656.36,50.755", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,791.84,512 756.22,512 764.56,512 773.16,512 781.62,512", + style=dotted]; + VerifierRole -> Verifier [pos="e,666.63,40.808 557.42,24.194 587.22,28.729 627.38,34.836 656.46,39.26", + style=dotted]; + Creator -> Updater [pos="e,820.13,344 723.9,344 747.92,344 782.96,344 809.88,344", + style=invis]; + Project -> Creator [pos="e,666.56,344 543.27,344 573.33,344 622.52,344 656.53,344", + style=invis]; +} diff --git a/data/taxon_name_classifications_model_er.dot b/data/taxon_name_classifications_model_er.dot new file mode 100644 index 00000000..e3e8593c --- /dev/null +++ b/data/taxon_name_classifications_model_er.dot @@ -0,0 +1,251 @@ +digraph TaxonNameClassification { + graph [bb="0,0,781.3,501.24", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="38.997,428.24", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="38.997,243.24", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="425.8,428.24", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + TaxonName [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#taxon-name", + label=TaxonName, + pos="425.8,96.243", + shape=Mrecord, + style=filled, + target=_top, + width=1.1667]; + } + subgraph supporting { + TaxonNameClassification [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#taxon-name-classification", + label=TaxonNameClassification, + pos="229.14,243.24", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.1987]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="229.14,483.24", + shape=box, + style=filled, + target=_top, + width=1.2778]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="425.8,41.243", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="425.8,297.24", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="568.3,351.24", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="723.3,351.24", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="425.8,483.24", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="425.8,243.24", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="568.3,274.24", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="568.3,151.24", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="425.8,151.24", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="723.3,151.24", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="568.3,420.24", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,398.79,428.24 78.299,428.24 152.77,428.24 316.12,428.24 388.75,428.24", + style=dotted]; + Citation -> CitationTopic [pos="e,182.86,470 72.34,437.7 99.953,445.77 140.27,457.56 172.97,467.12", + style=dotted]; + Source -> SubsequentCitation [pos="e,534.4,369.27 452.89,413.94 473.21,402.81 501.81,387.13 525.34,374.24", + style=invis]; + Source -> OriginCitation [pos="e,520.58,422.9 452.89,426.76 469.05,425.84 490.43,424.62 510.34,423.49", + style=invis]; + TaxonNameClassification -> Citation [pos="e,56.693,411.83 205.74,265.27 170.07,300.35 100.65,368.61 63.993,404.65"]; + TaxonNameClassification -> Note [pos="e,66.954,243.24 113.68,243.24 100.63,243.24 88.129,243.24 77.252,243.24"]; + TaxonNameClassification -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,250.05,265.44 e,398.86,410.05 257.02,273.06 286.14,304.72 334.59,355.57 380.3,395.24 383.66,398.16 387.25,401.1 390.9,403.96", + style=dotted]; + TaxonNameClassification -> TaxonName [dir=back, + pos="s,256.33,221.07 264.35,214.39 294.26,189.58 339.22,153.31 380.3,124.24 384.92,120.97 389.91,117.65 394.82,114.48", + style=dashed]; + TaxonNameClassification -> PinboardItem [pos="e,392.35,59.249 245.56,221.1 270.84,185.83 323.97,116.02 380.3,68.243 381.46,67.256 382.66,66.283 383.9,65.324"]; + TaxonNameClassification -> Role [pos="e,398.76,290.02 297.13,261.83 328.01,270.39 363.4,280.21 389.08,287.34"]; + TaxonNameClassification -> SubsequentCitation [pos="e,507.12,347.93 262.9,265.31 292.33,284.04 337.41,310.07 380.3,324.24 417.72,336.6 461.2,343.31 496.81,346.95"]; + TaxonNameClassification -> VerifierRole [pos="e,384.01,243.24 344.5,243.24 354.72,243.24 364.68,243.24 373.92,243.24"]; + TaxonNameClassification -> Creator [dir=back, + pos="s,236.78,220.93 240.07,211.14 258.22,158.73 302.26,56.392 380.3,14.243 415.88,-4.9773 435.42,-4.426 471.3,14.243 519.99,39.58 549.11,\ +102.18 561.02,133.21", + style=dashed]; + TaxonNameClassification -> Project [dir=back, + pos="s,276.77,221.21 285.9,216.89 322.69,199.5 369.25,177.5 398.02,163.9", + style=dashed]; + TaxonNameClassification -> Updater [dir=back, + pos="s,315.04,227.57 325.12,225.77 343.42,222.52 362.44,219.21 380.3,216.24 490.73,197.89 519.97,202.35 629.3,178.24 650.97,173.46 675.02,\ +166.44 693.23,160.75", + style=dashed]; + TaxonNameClassification -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,257.34,265.32 e,520.58,405.78 265.26,271.49 294.73,294.26 338.58,326.05 380.3,348.24 422.31,370.59 472.81,389.61 510.73,402.48"]; + CitationTopic -> Topic [pos="e,398.72,483.24 275.29,483.24 309.7,483.24 356.46,483.24 388.47,483.24", + style=dotted]; + Role -> Verifier [pos="e,539.41,278.81 452.89,292.97 474.42,289.45 505.25,284.4 529.48,280.43", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,664.94,351.24 629.33,351.24 637.66,351.24 646.27,351.24 654.72,351.24", + style=dotted]; + VerifierRole -> Verifier [pos="e,539.65,268.14 467.44,252.21 487.08,256.54 510.51,261.71 529.74,265.96", + style=dotted]; + Creator -> Updater [pos="e,693.23,151.24 597,151.24 621.03,151.24 656.07,151.24 682.99,151.24", + style=invis]; + Project -> Creator [pos="e,539.68,151.24 453.55,151.24 475.05,151.24 505.52,151.24 529.5,151.24", + style=invis]; +} diff --git a/data/taxon_name_relationships_model_er.dot b/data/taxon_name_relationships_model_er.dot new file mode 100644 index 00000000..6dd8c096 --- /dev/null +++ b/data/taxon_name_relationships_model_er.dot @@ -0,0 +1,264 @@ +digraph TaxonNameRelationship { + graph [bb="0,0,806.85,555.77", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="434.35,482.77", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + TaxonNameRelationship [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#taxon-name-relationship", + label=TaxonNameRelationship, + pos="224.92,266.77", + shape=doubleoctagon, + style=filled, + target=_top, + width=3.0814]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="224.92,537.77", + shape=box, + style=filled, + target=_top, + width=1.2778]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="434.35,243.77", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="434.35,189.77", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="593.85,335.77", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="748.85,335.77", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="434.35,537.77", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="434.35,135.77", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="593.85,162.77", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="593.85,43.77", + shape=box, + style=filled, + target=_top, + width=0.79167]; + ObjectTaxonName [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#object-taxon-name", + label=ObjectTaxonName, + pos="434.35,389.77", + shape=box, + style=filled, + target=_top, + width=1.6667]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="434.35,43.77", + shape=box, + style=filled, + target=_top, + width=0.76389]; + SubjectTaxonName [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subject-taxon-name", + label=SubjectTaxonName, + pos="434.35,335.77", + shape=box, + style=filled, + target=_top, + width=1.7361]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="748.85,43.77", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="593.85,458.77", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="38.997,482.77", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="38.997,266.77", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + Citation -> Source [pos="e,407.08,482.77 78.071,482.77 153.78,482.77 322.35,482.77 396.8,482.77", + style=dotted]; + Citation -> CitationTopic [pos="e,178.82,524.28 72.034,492.35 98.688,500.32 137.24,511.85 168.83,521.3", + style=dotted]; + Source -> SubsequentCitation [pos="e,573.38,353.94 454.67,464.74 482.53,438.74 534.14,390.57 565.79,361.03", + style=invis]; + Source -> OriginCitation [pos="e,546.11,465.89 461.36,478.81 481.65,475.72 510.58,471.31 536.14,467.41", + style=invis]; + TaxonNameRelationship -> Citation [pos="e,54.429,465.82 204.98,289.02 170.33,329.71 96.986,415.84 60.918,458.2"]; + TaxonNameRelationship -> Note [pos="e,67.136,266.77 114.02,266.77 100.84,266.77 88.171,266.77 77.155,266.77"]; + TaxonNameRelationship -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,239.29,288.88 e,407.07,471.59 244.92,297.73 270.13,336.91 317.83,404.72 371.85,449.77 379.66,456.28 388.95,462.06 397.92,466.9", + style=dotted]; + TaxonNameRelationship -> PinboardItem [pos="e,388.61,248.73 331.16,255.1 347.46,253.29 363.71,251.49 378.3,249.87"]; + TaxonNameRelationship -> Role [pos="e,407.27,199.45 280.42,246.54 317.52,232.77 365.55,214.94 397.8,202.97"]; + TaxonNameRelationship -> SubsequentCitation [pos="e,532.96,317.73 325.86,279.33 377.23,286.53 440.69,296.56 496.85,308.77 505.4,310.63 514.31,312.8 523.1,315.1"]; + TaxonNameRelationship -> VerifierRole [pos="e,392.74,152.18 253.3,244.65 281.81,222.26 328.3,187.5 371.85,162.77 375.56,160.66 379.47,158.61 383.43,156.63"]; + TaxonNameRelationship -> Creator [dir=back, + pos="s,231.01,244.46 233.58,234.7 248.9,178.63 289.18,64.239 371.85,16.77 433.7,-18.741 521.19,10.958 565.24,30.317", + style=dashed]; + TaxonNameRelationship -> ObjectTaxonName [dir=back, + pos="s,256.3,288.93 264.84,294.96 293.62,315.16 334.18,342.3 371.85,362.77 377.49,365.83 383.54,368.82 389.57,371.64", + style=dashed]; + TaxonNameRelationship -> Project [dir=back, + pos="s,238.45,244.49 243.62,235.79 268.15,194.97 315.88,122.83 371.85,75.77 382.17,67.095 395.23,59.886 406.66,54.52", + style=dashed]; + TaxonNameRelationship -> SubjectTaxonName [dir=back, + pos="s,284.53,286.27 294.12,289.46 321.73,298.64 353.16,309.09 379.16,317.74", + style=dashed]; + TaxonNameRelationship -> Updater [dir=back, + pos="s,239.05,244.69 244.76,235.82 269.11,198.83 315.19,138.22 371.85,108.77 484.46,50.248 530.68,96.978 654.85,70.77 676.57,66.186 700.62,\ +59.151 718.82,53.411", + style=dashed]; + TaxonNameRelationship -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,240.66,289 e,546.15,457.97 246.63,297.36 271.92,332.13 318.02,387.81 371.85,416.77 423.02,444.29 489.34,454.01 535.93,457.32"]; + CitationTopic -> Topic [pos="e,407.1,537.77 270.93,537.77 308.62,537.77 361.73,537.77 396.82,537.77", + style=dotted]; + Role -> Verifier [pos="e,565.22,167.51 461.36,185.31 486.89,180.94 526.09,174.22 555.05,169.25", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,690.5,335.77 654.89,335.77 663.22,335.77 671.82,335.77 680.28,335.77", + style=dotted]; + VerifierRole -> Verifier [pos="e,565.32,158.05 475.91,142.72 500.37,146.91 531.31,152.22 555.22,156.32", + style=dotted]; + Creator -> Updater [pos="e,718.79,43.77 622.56,43.77 646.59,43.77 681.63,43.77 708.55,43.77", + style=invis]; + Project -> Creator [pos="e,565.21,43.77 462.07,43.77 487.63,43.77 526.43,43.77 555.13,43.77", + style=invis]; +} diff --git a/data/taxon_names_model_er.dot b/data/taxon_names_model_er.dot new file mode 100644 index 00000000..42b342b3 --- /dev/null +++ b/data/taxon_names_model_er.dot @@ -0,0 +1,658 @@ +digraph TaxonName { + graph [bb="0,0,871.39,1363.5", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + AlternateValue [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#alternate-value", + label=AlternateValue, + pos="63.694,1318.5", + shape=oval, + style=filled, + target=_top, + width=1.7693]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="63.694,1236.5", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="63.694,647.5", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="63.694,809.5", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Depiction [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#depiction", + label=Depiction, + pos="63.694,593.5", + shape=oval, + style=filled, + target=_top, + width=1.2638]; + Identifier [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#identifier", + label=Identifier, + pos="63.694,755.5", + shape=oval, + style=filled, + target=_top, + width=1.1916]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="63.694,539.5", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="63.694,701.5", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + TaxonName [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#taxon-name", + label=TaxonName, + pos="238.89,705.5", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.7526]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="813.39,18.5", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + Otu [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#otu", + label=Otu, + pos="451.89,18.5", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="451.89,1236.5", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + } + subgraph supporting { + AlternateValueLanguage [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#alternate-value-language", + label=AlternateValueLanguage, + pos="238.89,1345.5", + shape=box, + style=filled, + target=_top, + width=2.0972]; + AncestorHierarchy [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#ancestor-hierarchy", + label=AncestorHierarchy, + pos="451.89,759.5", + shape=box, + style=filled, + target=_top, + width=1.6528]; + Child [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#child", + label=Child, + pos="451.89,705.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="238.89,1291.5", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ClassifiedAsUnavailableOrInvalid [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#classified-as-unavailable-or-invalid", + label=ClassifiedAsUnavailableOrInvalid, + pos="451.89,651.5", + shape=box, + style=filled, + target=_top, + width=2.8194]; + TaxonDetermination [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-determination", + label=TaxonDetermination, + pos="654.39,18.5", + shape=box, + style=filled, + target=_top, + width=1.8056]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="238.89,647.5", + shape=box, + style=filled, + target=_top, + width=1.5139]; + DescendantHierarchy [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#descendant-hierarchy", + label=DescendantHierarchy, + pos="451.89,597.5", + shape=box, + style=filled, + target=_top, + width=1.8611]; + HistoricalTaxonName [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#historical-taxon-name", + label=HistoricalTaxonName, + pos="451.89,543.5", + shape=box, + style=filled, + target=_top, + width=1.9028]; + Image [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#image", + label=Image, + pos="238.89,593.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="238.89,539.5", + shape=box, + style=filled, + target=_top, + width=0.93056]; + ObservationMatrixRowItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix-row-item", + label=ObservationMatrixRowItem, + pos="451.89,489.5", + shape=box, + style=filled, + target=_top, + width=2.375]; + ObservationMatrix [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#observation-matrix", + label=ObservationMatrix, + pos="654.39,489.5", + shape=box, + style=filled, + target=_top, + width=1.6667]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="654.39,435.5", + shape=box, + style=filled, + target=_top, + width=1.2639]; + RelatedTaxonNameRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#related-taxon-name-relationship", + label=RelatedTaxonNameRelationship, + pos="451.89,343.5", + shape=box, + style=filled, + target=_top, + width=2.6944]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="451.89,235.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + SelfAndAncestor [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#self-and-ancestor", + label=SelfAndAncestor, + pos="654.39,759.5", + shape=box, + style=filled, + target=_top, + width=1.5278]; + SelfAndDescendant [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#self-and-descendant", + label=SelfAndDescendant, + pos="654.39,597.5", + shape=box, + style=filled, + target=_top, + width=1.7361]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="654.39,1230.5", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="813.39,1230.5", + shape=box, + style=filled, + target=_top, + width=1.6111]; + TaxonNameAuthorRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-name-author-role", + label=TaxonNameAuthorRole, + pos="451.89,181.5", + shape=box, + style=filled, + target=_top, + width=2.0556]; + TaxonNameAuthor [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-name-author", + label=TaxonNameAuthor, + pos="654.39,181.5", + shape=box, + style=filled, + target=_top, + width=1.6944]; + TaxonNameClassification [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-name-classification", + label=TaxonNameClassification, + pos="451.89,127.5", + shape=box, + style=filled, + target=_top, + width=2.1944]; + TaxonNameRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#taxon-name-relationship", + label=TaxonNameRelationship, + pos="451.89,73.5", + shape=box, + style=filled, + target=_top, + width=2.1111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="451.89,1291.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="451.89,289.5", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="654.39,262.5", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Version [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#version", + label=Version, + pos="451.89,435.5", + shape=box, + style=filled, + target=_top, + width=0.80556]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="654.39,959.5", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Parent [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#parent", + label=Parent, + pos="451.89,1067.5", + shape=box, + style=filled, + target=_top, + width=0.75]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="451.89,959.5", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="813.39,959.5", + shape=box, + style=filled, + target=_top, + width=0.83333]; + ValidTaxonName [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#valid-taxon-name", + label=ValidTaxonName, + pos="451.89,1013.5", + shape=box, + style=filled, + target=_top, + width=1.5694]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="654.39,1170.5", + shape=box, + style=filled, + target=_top, + width=1.3194]; + SourceClassifiedA [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#source-classified-a", + label=SourceClassifiedA, + pos="451.89,905.5", + shape=box, + style=filled, + target=_top, + width=1.625]; + SourceClassifiedAsRelationship [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#source-classified-as-relationship", + label=SourceClassifiedAsRelationship, + pos="451.89,851.5", + shape=box, + style=filled, + target=_top, + width=2.6528]; + } + AlternateValue -> AlternateValueLanguage [pos="e,163.23,1333.9 119.97,1327.1 130.61,1328.8 141.99,1330.5 153.31,1332.3", + style=dotted]; + Citation -> Source [pos="e,424.73,1236.5 102.78,1236.5 177.33,1236.5 341.58,1236.5 414.63,1236.5", + style=dotted]; + Citation -> CitationTopic [pos="e,192.62,1277.1 96.461,1246.6 120.57,1254.2 154.31,1265 182.79,1274", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,184.28,647.5 114.79,647.5 133.34,647.5 154.62,647.5 174.21,647.5", + style=dotted]; + Depiction -> Image [pos="e,211.74,593.5 109.3,593.5 137.96,593.5 174.73,593.5 201.61,593.5", + style=dotted]; + Tag -> Keyword [pos="e,205.11,539.5 90.999,539.5 118.58,539.5 162.36,539.5 194.96,539.5", + style=dotted]; + TaxonName -> AlternateValue [pos="e,90.357,1302.1 238.43,727.75 239.39,806.63 234.32,1078.1 127.39,1263.5 120.24,1275.9 109.27,1286.9 98.494,1295.8"]; + TaxonName -> Citation [pos="e,70.556,1218.5 230.63,727.75 202.96,812.58 104.12,1115.6 73.684,1208.9"]; + TaxonName -> Confidence [pos="e,101.42,659.8 191.94,690.11 166.96,681.75 136.13,671.42 111.07,663.03"]; + TaxonName -> DataAttribute [pos="e,100.77,795.44 210.74,726.74 188.97,743.19 157.22,765.91 127.39,782.5 121.88,785.56 115.96,788.52 110.03,791.28"]; + TaxonName -> Depiction [pos="e,99.906,604.5 190.21,690.59 180.74,686.31 171.29,681 163.39,674.5 141.12,656.17 149.55,638.97 127.39,620.5 122.01,616.01 115.77,\ +612.16 109.35,608.89"]; + TaxonName -> Identifier [pos="e,99.743,745.38 188.12,719.87 163.28,727.04 133.46,735.65 109.35,742.61"]; + TaxonName -> Tag [pos="e,89.582,545 187.25,691.37 178.42,687.09 169.97,681.58 163.39,674.5 128.93,637.45 161.62,603.76 127.39,566.5 119.86,558.3 109.41,\ +552.48 99.195,548.4"]; + TaxonName -> Note [pos="e,91.756,702.12 175.48,704.06 150.78,703.49 123.21,702.85 101.76,702.36"]; + TaxonName -> Otu [pos="e,424.53,17.927 292.87,692.28 301.27,687.93 308.96,682.16 314.39,674.5 395.25,560.48 262.69,155.35 350.39,46.5 365.59,27.627 392.36,\ +20.834 414.45,18.648"]; + TaxonName -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,241.92,727.69 e,424.78,1234.9 242.9,737.7 252.78,836.64 287.22,1133.8 350.39,1203.5 366.7,1221.5 393.01,1229.7 414.62,1233.4", + style=dotted]; + TaxonName -> AncestorHierarchy [pos="e,392.03,744.44 292.32,718.92 319.51,725.88 353.07,734.47 382.3,741.95"]; + TaxonName -> Child [pos="e,424.7,705.5 302.05,705.5 338.59,705.5 383.52,705.5 414.4,705.5"]; + TaxonName -> ClassifiedAsUnavailableOrInvalid [pos="e,380.4,669.54 292.32,692.08 315.91,686.04 344.29,678.78 370.48,672.08"]; + TaxonName -> DescendantHierarchy [pos="e,384.77,608.33 287.39,690.37 296.88,686.11 306.38,680.85 314.39,674.5 335.84,657.48 327.86,640.07 350.39,624.5 357.92,619.3 366.41,\ +615.09 375.18,611.7"]; + TaxonName -> HistoricalTaxonName [pos="e,383.22,551.98 290.47,691.31 299.3,687.04 307.77,681.54 314.39,674.5 347.9,638.87 314.6,603.84 350.39,570.5 357.14,564.21 365.19,\ +559.36 373.75,555.62"]; + TaxonName -> ObservationMatrixRowItem [pos="e,366.26,504.4 291.48,691.69 300.12,687.39 308.25,681.78 314.39,674.5 360.8,619.43 300.45,568.4 350.39,516.5 352.71,514.09 355.21,\ +511.89 357.87,509.88"]; + TaxonName -> PinboardItem [pos="e,617.43,417.42 292.4,691.93 300.84,687.61 308.67,681.94 314.39,674.5 387.11,579.93 260.55,487 350.39,408.5 422.03,345.9 542.88,\ +384.77 608.21,413.3"]; + TaxonName -> RelatedTaxonNameRelationship [pos="e,366.49,361.64 292.49,691.99 300.92,687.67 308.72,681.98 314.39,674.5 395.2,567.8 265.07,478.63 350.39,375.5 352.74,372.66 355.33,\ +370.07 358.13,367.71"]; + TaxonName -> Role [pos="e,424.7,234.77 292.69,692.14 301.1,687.81 308.85,682.07 314.39,674.5 368.67,600.34 291.34,332.93 350.39,262.5 365.92,243.98 392.67,\ +237.44 414.67,235.42"]; + TaxonName -> SubsequentCitation [pos="e,593.17,1217.6 242.2,727.68 251.25,810.34 286.95,1098.9 350.39,1161.5 354.6,1165.6 495.03,1196.5 583.22,1215.5"]; + TaxonName -> TaxonNameAuthorRole [pos="e,377.79,189.57 292.75,692.19 301.16,687.85 308.88,682.1 314.39,674.5 375.31,590.38 284.06,288.42 350.39,208.5 355.46,202.39 361.75,\ +197.58 368.69,193.81"]; + TaxonName -> TaxonNameClassification [pos="e,372.52,137.79 292.8,692.23 301.2,687.88 308.91,682.12 314.39,674.5 381.96,580.42 276.77,243.93 350.39,154.5 354.21,149.85 358.75,\ +145.96 363.73,142.7"]; + TaxonName -> TaxonNameRelationship [pos="e,375.43,82.413 292.84,692.25 301.24,687.91 308.94,682.14 314.39,674.5 388.6,570.45 269.48,199.44 350.39,100.5 354.85,95.05 360.27,\ +90.634 366.28,87.062"]; + TaxonName -> VerifierRole [pos="e,410.36,289.95 292.61,692.08 301.03,687.75 308.8,682.04 314.39,674.5 409.68,546.08 246.85,438.37 350.39,316.5 362.73,301.98 381.96,\ +294.84 400.31,291.47"]; + TaxonName -> Version [pos="e,422.85,435.24 291.81,691.96 300.42,687.63 308.46,681.95 314.39,674.5 373.91,599.73 286.07,533.19 350.39,462.5 366.06,445.27 391.43,\ +438.55 412.76,436.12"]; + TaxonName -> Creator [dir=back, + pos="s,263.36,727.63 270.96,734.21 291.9,751.98 320.97,773.76 350.39,786.5 434.61,822.99 475.58,775.81 553.39,824.5 599.38,853.28 631.33,\ +911.5 645.36,941.19", + style=dashed]; + TaxonName -> Parent [dir=back, + pos="s,240.34,727.62 240.85,737.92 244.62,804.61 262.91,957.8 350.39,1040.5 370.34,1059.4 402.03,1065.3 424.49,1067.1", + style=dashed]; + TaxonName -> Project [dir=back, + pos="s,244.26,727.7 246.54,737.53 258.5,786.92 288.38,881.31 350.39,932.5 371.29,949.75 402.2,956.06 424.22,958.32", + style=dashed]; + TaxonName -> Updater [dir=back, + pos="s,242.71,727.68 244.09,737.81 255.9,823.09 292.37,1050.7 350.39,1094.5 422.38,1148.9 465.76,1116 553.39,1094.5 646.47,1071.7 743.28,\ +1009 787.58,977.72", + style=dashed]; + TaxonName -> ValidTaxonName [dir=back, + pos="s,241.93,727.53 243.19,737.65 250.94,796.06 275.69,919.75 350.39,986.5 362.78,997.58 379.25,1004.2 395.26,1008.1", + style=dashed]; + TaxonName -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,242.46,727.55 e,606.7,1170 243.72,737.62 255.04,826.89 291.3,1074.8 350.39,1127.5 385.79,1159 519.12,1167.5 596.61,1169.7"]; + TaxonName -> SourceClassifiedA [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,247.81,727.55 e,393.37,897.74 251.56,736.87 267.73,775.98 300.7,842.09 350.39,878.5 360.18,885.68 371.75,890.94 383.5,894.81", + style=dotted]; + TaxonName -> SourceClassifiedAsRelationship [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,255.78,727.55 e,378.94,833.41 261.95,735.48 282.28,761.15 314.66,797.36 350.39,819.5 356.44,823.25 362.96,826.59 369.68,829.57"]; + Otu -> TaxonDetermination [pos="e,589.2,18.5 479.1,18.5 504.41,18.5 543.95,18.5 578.98,18.5", + style=dotted]; + Source -> SubsequentCitation [pos="e,593.02,1232.3 479.1,1235.7 505.28,1234.9 546.69,1233.7 582.57,1232.6", + style=invis]; + Source -> OriginCitation [pos="e,606.83,1185.8 479.1,1227.9 508.95,1218 558.57,1201.7 597.26,1189", + style=invis]; + AncestorHierarchy -> SelfAndAncestor [pos="e,599.25,759.5 511.42,759.5 535.8,759.5 564.19,759.5 589.15,759.5", + style=dotted]; + CitationTopic -> Topic [pos="e,424.87,1291.5 284.89,1291.5 323.67,1291.5 378.91,1291.5 414.83,1291.5", + style=dotted]; + TaxonDetermination -> CollectionObject [pos="e,758.45,18.5 719.7,18.5 729.15,18.5 738.89,18.5 748.34,18.5", + style=dotted]; + DescendantHierarchy -> SelfAndDescendant [pos="e,591.66,597.5 519.1,597.5 539.1,597.5 561.15,597.5 581.51,597.5", + style=dotted]; + ObservationMatrixRowItem -> ObservationMatrix [pos="e,594.16,489.5 537.63,489.5 553.09,489.5 569.05,489.5 583.99,489.5", + style=dotted]; + Role -> Verifier [pos="e,625.88,258.8 479.1,239.03 513.98,243.73 575.89,252.06 615.76,257.43", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,755.14,1230.5 715.64,1230.5 725.27,1230.5 735.28,1230.5 745.06,1230.5", + style=dotted]; + TaxonNameAuthorRole -> TaxonNameAuthor [pos="e,593.17,181.5 526.12,181.5 544.72,181.5 564.65,181.5 583.1,181.5", + style=dotted]; + VerifierRole -> Verifier [pos="e,625.75,266.22 493.46,284.04 529.14,279.23 580.66,272.29 615.5,267.6", + style=dotted]; + Version -> PinboardItem [pos="e,608.62,435.5 481.19,435.5 511.48,435.5 560.3,435.5 598.23,435.5", + style=invis]; + Creator -> Updater [pos="e,783.36,959.5 683.1,959.5 708.07,959.5 745.08,959.5 773.11,959.5", + style=invis]; + Project -> Creator [pos="e,625.69,959.5 479.51,959.5 514.42,959.5 575.88,959.5 615.59,959.5", + style=invis]; +} diff --git a/data/type_materials_model_er.dot b/data/type_materials_model_er.dot new file mode 100644 index 00000000..46365b54 --- /dev/null +++ b/data/type_materials_model_er.dot @@ -0,0 +1,331 @@ +digraph TypeMaterial { + graph [bb="0,0,745.33,570", + label="", + outputorder=edgesfirst, + rankdir=LR + ]; + node [label="\N"]; + subgraph annotator_cluster { + graph [rank=min]; + Citation [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#citation", + label=Citation, + pos="59.145,497", + shape=oval, + style=filled, + target=_top, + width=1.0832]; + Confidence [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#confidence", + label=Confidence, + pos="59.145,248", + shape=oval, + style=filled, + target=_top, + width=1.4082]; + DataAttribute [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#data-attribute", + label=DataAttribute, + pos="59.145,303", + shape=oval, + style=filled, + target=_top, + width=1.6429]; + Tag [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#tag", + label=Tag, + pos="59.145,194", + shape=oval, + style=filled, + target=_top, + width=0.75]; + Note [color="#dddeee", + fillcolor="#abcdef", + group=annotator, + height=0.5, + href="/develop/Data/models.html#note", + label=Note, + pos="59.145,357", + shape=oval, + style=filled, + target=_top, + width=0.77632]; + } + subgraph core { + Source [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#source", + label=Source, + pos="380.83,497", + shape=Mrecord, + style=filled, + target=_top, + width=0.75]; + CollectionObject [color="#dddeee", + fillcolor="#fedcba", + group=core, + height=0.51389, + href="/develop/Data/models.html#collection-object", + label=CollectionObject, + pos="380.83,181", + shape=Mrecord, + style=filled, + target=_top, + width=1.5139]; + } + subgraph supporting { + TypeMaterial [color="#dedede", + fillcolor="#cdefab", + group=target, + height=0.61111, + href="/develop/Data/models.html#type-material", + label=TypeMaterial, + pos="222.31,305", + shape=doubleoctagon, + style=filled, + target=_top, + width=1.8894]; + CitationTopic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#citation-topic", + label=CitationTopic, + pos="222.31,552", + shape=box, + style=filled, + target=_top, + width=1.2778]; + ConfidenceLevel [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#confidence-level", + label=ConfidenceLevel, + pos="222.31,247", + shape=box, + style=filled, + target=_top, + width=1.5139]; + Keyword [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#keyword", + label=Keyword, + pos="222.31,193", + shape=box, + style=filled, + target=_top, + width=0.93056]; + PinboardItem [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#pinboard-item", + label=PinboardItem, + pos="380.83,126", + shape=box, + style=filled, + target=_top, + width=1.2639]; + Role [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#role", + label=Role, + pos="380.83,72", + shape=box, + style=filled, + target=_top, + width=0.75]; + SubsequentCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-citation", + label=SubsequentCitation, + pos="532.33,491", + shape=box, + style=filled, + target=_top, + width=1.6944]; + SubsequentSource [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#subsequent-source", + label=SubsequentSource, + pos="687.33,491", + shape=box, + style=filled, + target=_top, + width=1.6111]; + Topic [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#topic", + label=Topic, + pos="380.83,552", + shape=box, + style=filled, + target=_top, + width=0.75]; + VerifierRole [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier-role", + label=VerifierRole, + pos="380.83,18", + shape=box, + style=filled, + target=_top, + width=1.1528]; + Verifier [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#verifier", + label=Verifier, + pos="532.33,45", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Creator [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#creator", + label=Creator, + pos="532.33,236", + shape=box, + style=filled, + target=_top, + width=0.79167]; + Project [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#project", + label=Project, + pos="380.83,236", + shape=box, + style=filled, + target=_top, + width=0.76389]; + Protonym [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#protonym", + label=Protonym, + pos="380.83,328", + shape=box, + style=filled, + target=_top, + width=0.98611]; + Updater [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#updater", + label=Updater, + pos="687.33,236", + shape=box, + style=filled, + target=_top, + width=0.83333]; + OriginCitation [color="#dddeee", + fillcolor="#eeefff", + group=supporting, + height=0.5, + href="/develop/Data/models.html#origin-citation", + label=OriginCitation, + pos="532.33,431", + shape=box, + style=filled, + target=_top, + width=1.3194]; + } + Citation -> Source [pos="e,353.57,497 98.388,497 160.46,497 282.31,497 343.27,497", + style=dotted]; + Citation -> CitationTopic [pos="e,176,536.54 91.219,507.6 112.46,514.85 141.18,524.66 166.24,533.21", + style=dotted]; + Confidence -> ConfidenceLevel [pos="e,167.6,247.33 110.25,247.69 125.19,247.6 141.76,247.49 157.44,247.4", + style=dotted]; + Tag -> Keyword [pos="e,188.66,193.2 86.397,193.84 111.26,193.68 149.04,193.45 178.31,193.27", + style=dotted]; + Source -> SubsequentCitation [pos="e,471.16,493.41 407.87,495.95 422.69,495.36 442.03,494.58 461,493.82", + style=invis]; + Source -> OriginCitation [pos="e,490.37,449.08 407.87,485.5 428.04,476.6 456.61,463.99 481.18,453.14", + style=invis]; + TypeMaterial -> Citation [pos="e,74.165,480.3 202.81,327.03 172.51,363.13 112.51,434.61 80.84,472.35"]; + TypeMaterial -> Confidence [pos="e,95.912,260.65 174.92,288.59 153.12,280.88 127.22,271.72 105.54,264.06"]; + TypeMaterial -> DataAttribute [pos="e,118.33,303.72 154.17,304.17 145.71,304.06 137.04,303.95 128.56,303.85"]; + TypeMaterial -> Tag [pos="e,83.893,201.66 176.02,288.17 168.32,284.19 160.74,279.47 154.29,274 132.58,255.58 139.99,239.44 118.29,221 110.94,214.75 101.9,\ +209.64 93.165,205.61"]; + TypeMaterial -> Note [pos="e,84.622,349.1 172.53,320.74 147.23,328.9 116.94,338.67 94.188,346.02"]; + TypeMaterial -> Source [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,233.69,327.23 e,353.68,483.99 238.25,336.33 255.78,370.67 287.42,425.95 326.33,464 331.8,469.35 338.28,474.25 344.82,478.53", + style=dotted]; + TypeMaterial -> CollectionObject [dir=back, + pos="s,269.37,288.46 278.04,283.41 282.43,280.59 286.61,277.46 290.33,274 314.51,251.51 302.7,232.07 326.33,209 330.08,205.34 334.4,202.04 \ +338.94,199.1", + style=dashed]; + TypeMaterial -> PinboardItem [pos="e,336.05,144.03 271.48,288.93 278.51,284.93 285.12,280.01 290.33,274 327.04,231.57 290.34,196.05 326.33,153 326.94,152.27 327.58,\ +151.55 328.24,150.85"]; + TypeMaterial -> Role [pos="e,353.7,79.691 271.93,289.31 278.91,285.26 285.39,280.23 290.33,274 339.65,211.77 278.07,162.06 326.33,99 331.02,92.865 337.49,88.018 \ +344.31,84.227"]; + TypeMaterial -> SubsequentCitation [pos="e,471.2,478.3 238.23,327.35 256.3,352.84 289.01,394.18 326.33,419 367.33,446.27 419.81,464.45 461.41,475.72"]; + TypeMaterial -> VerifierRole [pos="e,339.17,33.067 272.52,289.3 279.34,285.27 285.61,280.24 290.33,274 352.41,191.78 265.65,128.27 326.33,45 327.72,43.087 329.29,41.301 \ +330.99,39.634"]; + TypeMaterial -> Creator [dir=back, + pos="s,287.61,293.62 297.49,291.78 338.32,284.14 389.81,273.89 435.33,263 458.56,257.44 484.64,250.03 503.75,244.38", + style=dashed]; + TypeMaterial -> Project [dir=back, + pos="s,264.02,287.05 273.51,282.87 299.95,271.21 331.31,257.39 353.08,247.79", + style=dashed]; + TypeMaterial -> Protonym [dir=back, + pos="s,290.59,314.89 300.74,316.38 316.24,318.66 331.78,320.94 344.93,322.87", + style=dashed]; + TypeMaterial -> Updater [dir=back, + pos="s,255.76,325.47 264.89,330.5 283.05,340.21 305.04,350.11 326.33,355 373.54,365.85 388.06,365.64 435.33,355 522.13,335.46 614.19,\ +282.28 658.84,254.09", + style=dashed]; + TypeMaterial -> OriginCitation [arrowhead=obox, + arrowtail=obox, + dir=both, + pos="s,244.5,327.19 e,484.56,427.47 251.79,334.17 271.16,352.34 298.29,374.72 326.33,388 373.38,410.3 431.94,421.1 474.4,426.3"]; + CitationTopic -> Topic [pos="e,353.71,552 268.58,552 292.43,552 321.28,552 343.63,552", + style=dotted]; + Role -> Verifier [pos="e,503.81,49.969 407.87,67.297 431.57,63.015 466.86,56.643 493.64,51.806", + style=invis]; + SubsequentCitation -> SubsequentSource [pos="e,628.97,491 593.36,491 601.69,491 610.29,491 618.75,491", + style=dotted]; + VerifierRole -> Verifier [pos="e,503.75,40.02 422.68,25.378 444.82,29.376 471.99,34.284 493.62,38.191", + style=dotted]; + Creator -> Updater [pos="e,657.26,236 561.03,236 585.06,236 620.1,236 647.02,236", + style=invis]; + Project -> Creator [pos="e,503.82,236 408.55,236 432.28,236 467.2,236 493.74,236", + style=invis]; +} diff --git a/develop/Data/index.html b/develop/Data/index.html new file mode 100644 index 00000000..fbc6016b --- /dev/null +++ b/develop/Data/index.html @@ -0,0 +1,37 @@ + + + + + + + + + Overview | TaxonWorks Docs + + + + + +
    + + + diff --git a/develop/Data/models.html b/develop/Data/models.html new file mode 100644 index 00000000..40851c20 --- /dev/null +++ b/develop/Data/models.html @@ -0,0 +1,37 @@ + + + + + + + + + Models | TaxonWorks Docs + + + + + +
    + + + diff --git a/develop/Data/tables.html b/develop/Data/tables.html new file mode 100644 index 00000000..a648cf0f --- /dev/null +++ b/develop/Data/tables.html @@ -0,0 +1,37 @@ + + + + + + + + + Tables | TaxonWorks Docs + + + + + +
    + + + diff --git a/develop/bug-reporting.html b/develop/bug-reporting.html new file mode 100644 index 00000000..56d49621 --- /dev/null +++ b/develop/bug-reporting.html @@ -0,0 +1,37 @@ + + + + + + + + + Bug reporting | TaxonWorks Docs + + + + + +
    + + + diff --git a/develop/coding.html b/develop/coding.html new file mode 100644 index 00000000..1f31fd67 --- /dev/null +++ b/develop/coding.html @@ -0,0 +1,37 @@ + + + + + + + + + Coding | TaxonWorks Docs + + + + + + + + + diff --git a/develop/contributing.html b/develop/contributing.html new file mode 100644 index 00000000..79bec7bf --- /dev/null +++ b/develop/contributing.html @@ -0,0 +1,69 @@ + + + + + + + + + Contributing | TaxonWorks Docs + + + + + +
    + + + diff --git a/develop/index.html b/develop/index.html new file mode 100644 index 00000000..5bffd641 --- /dev/null +++ b/develop/index.html @@ -0,0 +1,37 @@ + + + + + + + + + The big picture | TaxonWorks Docs + + + + + +
    + + + diff --git a/develop/installation.html b/develop/installation.html new file mode 100644 index 00000000..b09823e8 --- /dev/null +++ b/develop/installation.html @@ -0,0 +1,37 @@ + + + + + + + + + Installation | TaxonWorks Docs + + + + + +
    + + + diff --git a/es/about/index.html b/es/about/index.html new file mode 100644 index 00000000..1760482c --- /dev/null +++ b/es/about/index.html @@ -0,0 +1,37 @@ + + + + + + + + + Acerca | Documentación de TaxonWorks + + + + + + + + + diff --git a/es/develop/bug-reporting.html b/es/develop/bug-reporting.html new file mode 100644 index 00000000..6a7a0565 --- /dev/null +++ b/es/develop/bug-reporting.html @@ -0,0 +1,37 @@ + + + + + + + + + Reportar un bug | Documentación de TaxonWorks + + + + + +
    + + + diff --git a/es/develop/contributing.html b/es/develop/contributing.html new file mode 100644 index 00000000..6ca0153a --- /dev/null +++ b/es/develop/contributing.html @@ -0,0 +1,69 @@ + + + + + + + + + Contribuyendo | Documentación de TaxonWorks + + + + + +
    + + + diff --git a/es/develop/index.html b/es/develop/index.html new file mode 100644 index 00000000..ff319f87 --- /dev/null +++ b/es/develop/index.html @@ -0,0 +1,37 @@ + + + + + + + + + El panorama general | Documentación de TaxonWorks + + + + + +
    + + + diff --git a/es/develop/installation.html b/es/develop/installation.html new file mode 100644 index 00000000..429d8761 --- /dev/null +++ b/es/develop/installation.html @@ -0,0 +1,37 @@ + + + + + + + + + Instalación | Documentación de TaxonWorks + + + + + +
    + + + diff --git a/es/guide/index.html b/es/guide/index.html new file mode 100644 index 00000000..52559968 --- /dev/null +++ b/es/guide/index.html @@ -0,0 +1,37 @@ + + + + + + + + + El panorama general | Documentación de TaxonWorks + + + + + + + + + diff --git a/es/index.html b/es/index.html new file mode 100644 index 00000000..fbee6dee --- /dev/null +++ b/es/index.html @@ -0,0 +1,37 @@ + + + + + + + + + Inicio | Documentación de TaxonWorks + + + + + +
    + + + diff --git a/guide/FAQs/index.html b/guide/FAQs/index.html new file mode 100644 index 00000000..a227b0ad --- /dev/null +++ b/guide/FAQs/index.html @@ -0,0 +1,37 @@ + + + + + + + + + Introduction | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/Sources/index.html b/guide/Manual/Sources/index.html new file mode 100644 index 00000000..38077a3b --- /dev/null +++ b/guide/Manual/Sources/index.html @@ -0,0 +1,37 @@ + + + + + + + + + About Sources in TW | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/annotation.html b/guide/Manual/annotation.html new file mode 100644 index 00000000..c2285b41 --- /dev/null +++ b/guide/Manual/annotation.html @@ -0,0 +1,37 @@ + + + + + + + + + Annotation | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/collecting_event.html b/guide/Manual/collecting_event.html new file mode 100644 index 00000000..8eeedc61 --- /dev/null +++ b/guide/Manual/collecting_event.html @@ -0,0 +1,37 @@ + + + + + + + + + Collecting Events | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/collectionobject.html b/guide/Manual/collectionobject.html new file mode 100644 index 00000000..7c4b7e92 --- /dev/null +++ b/guide/Manual/collectionobject.html @@ -0,0 +1,37 @@ + + + + + + + + + Collection Objects | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/conventions.html b/guide/Manual/conventions.html new file mode 100644 index 00000000..0e837040 --- /dev/null +++ b/guide/Manual/conventions.html @@ -0,0 +1,37 @@ + + + + + + + + + The User Interface | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/customization.html b/guide/Manual/customization.html new file mode 100644 index 00000000..c62ef97a --- /dev/null +++ b/guide/Manual/customization.html @@ -0,0 +1,37 @@ + + + + + + + + + Customization | TaxonWorks Docs + + + + + + + + + diff --git a/guide/Manual/digitization.html b/guide/Manual/digitization.html new file mode 100644 index 00000000..f1566cdc --- /dev/null +++ b/guide/Manual/digitization.html @@ -0,0 +1,37 @@ + + + + + + + + + Digitization | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/identifiers.html b/guide/Manual/identifiers.html new file mode 100644 index 00000000..e7650c49 --- /dev/null +++ b/guide/Manual/identifiers.html @@ -0,0 +1,37 @@ + + + + + + + + + Identifiers | TaxonWorks Docs + + + + + + + + + diff --git a/guide/Manual/index.html b/guide/Manual/index.html new file mode 100644 index 00000000..9d19af28 --- /dev/null +++ b/guide/Manual/index.html @@ -0,0 +1,37 @@ + + + + + + + + + Introduction | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/matrices.html b/guide/Manual/matrices.html new file mode 100644 index 00000000..ab960fc0 --- /dev/null +++ b/guide/Manual/matrices.html @@ -0,0 +1,37 @@ + + + + + + + + + Matrices | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/Manual/nomenclature.html b/guide/Manual/nomenclature.html new file mode 100644 index 00000000..1f9f2a9c --- /dev/null +++ b/guide/Manual/nomenclature.html @@ -0,0 +1,37 @@ + + + + + + + + + Nomenclature | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/api.html b/guide/api.html new file mode 100644 index 00000000..f5e74960 --- /dev/null +++ b/guide/api.html @@ -0,0 +1,37 @@ + + + + + + + + + API | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/community-resources.html b/guide/community-resources.html new file mode 100644 index 00000000..f127ae8b --- /dev/null +++ b/guide/community-resources.html @@ -0,0 +1,37 @@ + + + + + + + + + Community Documentation | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/data-quality.html b/guide/data-quality.html new file mode 100644 index 00000000..3b7ccb9a --- /dev/null +++ b/guide/data-quality.html @@ -0,0 +1,37 @@ + + + + + + + + + Data Quality Help and Hints | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/export.html b/guide/export.html new file mode 100644 index 00000000..054d9fc6 --- /dev/null +++ b/guide/export.html @@ -0,0 +1,37 @@ + + + + + + + + + Export | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/getting-started.html b/guide/getting-started.html new file mode 100644 index 00000000..720f04dd --- /dev/null +++ b/guide/getting-started.html @@ -0,0 +1,37 @@ + + + + + + + + + Getting started with some basics | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/import.html b/guide/import.html new file mode 100644 index 00000000..1cdf16e7 --- /dev/null +++ b/guide/import.html @@ -0,0 +1,37 @@ + + + + + + + + + Import | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/index.html b/guide/index.html new file mode 100644 index 00000000..b5cafe01 --- /dev/null +++ b/guide/index.html @@ -0,0 +1,37 @@ + + + + + + + + + The big picture | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/migrate-to-TaxonWorks.html b/guide/migrate-to-TaxonWorks.html new file mode 100644 index 00000000..4353ecf7 --- /dev/null +++ b/guide/migrate-to-TaxonWorks.html @@ -0,0 +1,37 @@ + + + + + + + + + Migrate to TaxonWorks | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/other-documents.html b/guide/other-documents.html new file mode 100644 index 00000000..216e8b1a --- /dev/null +++ b/guide/other-documents.html @@ -0,0 +1,37 @@ + + + + + + + + + Other documents | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/start-a-project.html b/guide/start-a-project.html new file mode 100644 index 00000000..c2510b2a --- /dev/null +++ b/guide/start-a-project.html @@ -0,0 +1,37 @@ + + + + + + + + + Start a project | TaxonWorks Docs + + + + + +
    + + + diff --git a/guide/videos.html b/guide/videos.html new file mode 100644 index 00000000..5830da17 --- /dev/null +++ b/guide/videos.html @@ -0,0 +1,37 @@ + + + + + + + + + Videos | TaxonWorks Docs + + + + + + + + + diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-Black.eps b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Black.eps new file mode 100644 index 00000000..6e5a4e68 Binary files /dev/null and b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Black.eps differ diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-Black.svg b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Black.svg new file mode 100644 index 00000000..0dad61bb --- /dev/null +++ b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Black.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-Brown.eps b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Brown.eps new file mode 100644 index 00000000..b09dd11b Binary files /dev/null and b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Brown.eps differ diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-Brown.svg b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Brown.svg new file mode 100644 index 00000000..13bd528d --- /dev/null +++ b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Brown.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-DarkGreen.eps b/images/branding/Logo-Full/TaxonWorks_Logo-Full-DarkGreen.eps new file mode 100644 index 00000000..61aacd88 Binary files /dev/null and b/images/branding/Logo-Full/TaxonWorks_Logo-Full-DarkGreen.eps differ diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-DarkGreen.svg b/images/branding/Logo-Full/TaxonWorks_Logo-Full-DarkGreen.svg new file mode 100644 index 00000000..934fb15c --- /dev/null +++ b/images/branding/Logo-Full/TaxonWorks_Logo-Full-DarkGreen.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-Green.eps b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Green.eps new file mode 100644 index 00000000..d28f78da Binary files /dev/null and b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Green.eps differ diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-Green.svg b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Green.svg new file mode 100644 index 00000000..8e879c7b --- /dev/null +++ b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Green.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-Tan.eps b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Tan.eps new file mode 100644 index 00000000..cd950229 Binary files /dev/null and b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Tan.eps differ diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-Tan.svg b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Tan.svg new file mode 100644 index 00000000..4bacd89f --- /dev/null +++ b/images/branding/Logo-Full/TaxonWorks_Logo-Full-Tan.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-White.eps b/images/branding/Logo-Full/TaxonWorks_Logo-Full-White.eps new file mode 100644 index 00000000..863a68b9 Binary files /dev/null and b/images/branding/Logo-Full/TaxonWorks_Logo-Full-White.eps differ diff --git a/images/branding/Logo-Full/TaxonWorks_Logo-Full-White.svg b/images/branding/Logo-Full/TaxonWorks_Logo-Full-White.svg new file mode 100644 index 00000000..67e5e3d6 --- /dev/null +++ b/images/branding/Logo-Full/TaxonWorks_Logo-Full-White.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Black.eps b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Black.eps new file mode 100644 index 00000000..239aac80 Binary files /dev/null and b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Black.eps differ diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Black.svg b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Black.svg new file mode 100644 index 00000000..9579c335 --- /dev/null +++ b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Black.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Brown.eps b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Brown.eps new file mode 100644 index 00000000..cb3e7803 Binary files /dev/null and b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Brown.eps differ diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Brown.svg b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Brown.svg new file mode 100644 index 00000000..90bcd8c6 --- /dev/null +++ b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Brown.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-DarkGreen.eps b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-DarkGreen.eps new file mode 100644 index 00000000..0c0a6c66 Binary files /dev/null and b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-DarkGreen.eps differ diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-DarkGreen.svg b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-DarkGreen.svg new file mode 100644 index 00000000..2f8f17b4 --- /dev/null +++ b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-DarkGreen.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Green.eps b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Green.eps new file mode 100644 index 00000000..0de36769 Binary files /dev/null and b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Green.eps differ diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Green.svg b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Green.svg new file mode 100644 index 00000000..d44c8739 --- /dev/null +++ b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Green.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Tan.eps b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Tan.eps new file mode 100644 index 00000000..e99c0495 Binary files /dev/null and b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Tan.eps differ diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Tan.svg b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Tan.svg new file mode 100644 index 00000000..52d0aeb4 --- /dev/null +++ b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-Tan.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-White.eps b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-White.eps new file mode 100644 index 00000000..fca984c5 Binary files /dev/null and b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-White.eps differ diff --git a/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-White.svg b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-White.svg new file mode 100644 index 00000000..7bcb0139 --- /dev/null +++ b/images/branding/Logo-Symbol/TaxonWorks_Logo-Symbol-White.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-Black.eps b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Black.eps new file mode 100644 index 00000000..579667f8 Binary files /dev/null and b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Black.eps differ diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-Black.svg b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Black.svg new file mode 100644 index 00000000..41698f20 --- /dev/null +++ b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Black.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-Brown.eps b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Brown.eps new file mode 100644 index 00000000..1f1601ea Binary files /dev/null and b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Brown.eps differ diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-Brown.svg b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Brown.svg new file mode 100644 index 00000000..3dc5b6b5 --- /dev/null +++ b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Brown.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-DarkGreen.eps b/images/branding/Logo-Type/TaxonWorks_Logo-Type-DarkGreen.eps new file mode 100644 index 00000000..e07d0810 Binary files /dev/null and b/images/branding/Logo-Type/TaxonWorks_Logo-Type-DarkGreen.eps differ diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-DarkGreen.svg b/images/branding/Logo-Type/TaxonWorks_Logo-Type-DarkGreen.svg new file mode 100644 index 00000000..e76a5eeb --- /dev/null +++ b/images/branding/Logo-Type/TaxonWorks_Logo-Type-DarkGreen.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-Green.eps b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Green.eps new file mode 100644 index 00000000..b38635e2 Binary files /dev/null and b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Green.eps differ diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-Green.svg b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Green.svg new file mode 100644 index 00000000..5695aec3 --- /dev/null +++ b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Green.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-Tan.eps b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Tan.eps new file mode 100644 index 00000000..a0cb5b17 Binary files /dev/null and b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Tan.eps differ diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-Tan.svg b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Tan.svg new file mode 100644 index 00000000..e64a12dd --- /dev/null +++ b/images/branding/Logo-Type/TaxonWorks_Logo-Type-Tan.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-White.eps b/images/branding/Logo-Type/TaxonWorks_Logo-Type-White.eps new file mode 100644 index 00000000..9118056d Binary files /dev/null and b/images/branding/Logo-Type/TaxonWorks_Logo-Type-White.eps differ diff --git a/images/branding/Logo-Type/TaxonWorks_Logo-Type-White.svg b/images/branding/Logo-Type/TaxonWorks_Logo-Type-White.svg new file mode 100644 index 00000000..a3ecae2e --- /dev/null +++ b/images/branding/Logo-Type/TaxonWorks_Logo-Type-White.svg @@ -0,0 +1 @@ +TaxonWorks \ No newline at end of file diff --git a/images/favicon.svg b/images/favicon.svg new file mode 100644 index 00000000..a9055d42 --- /dev/null +++ b/images/favicon.svg @@ -0,0 +1,57 @@ + + + + + + + + + + + diff --git a/images/model/alternate_values_model_er.svg b/images/model/alternate_values_model_er.svg new file mode 100644 index 00000000..c868fe56 --- /dev/null +++ b/images/model/alternate_values_model_er.svg @@ -0,0 +1,161 @@ + + + + + + +AlternateValue + + + +AlternateValue->PinboardItem + + + + + +AlternateValue->Role + + + + + +AlternateValue->VerifierRole + + + + + +AlternateValue->Creator + + + + + +AlternateValue->Language + + + + + +AlternateValue->Project + + + + + +AlternateValue->Updater + + + + + +AlternateValue->Objects with Alternate values + + + + + + +VerifierRole->Verifier + + + + + + + +AlternateValue + + + +AlternateValue + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Language + + +Language + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Alternate values + + +Objects with Alternate values + + + + + diff --git a/images/model/asserted_distributions_model_er.svg b/images/model/asserted_distributions_model_er.svg new file mode 100644 index 00000000..432f202e --- /dev/null +++ b/images/model/asserted_distributions_model_er.svg @@ -0,0 +1,506 @@ + + + + + + +AssertedDistribution + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Tag->Keyword + + + + + +AssertedDistribution->Citation + + + + + +AssertedDistribution->Confidence + + + + + +AssertedDistribution->DataAttribute + + + + + +AssertedDistribution->Identifier + + + + + +AssertedDistribution->Tag + + + + + +AssertedDistribution->Note + + + + + +AssertedDistribution->Source + + + + + + + + +AssertedDistribution->Otu + + + + + +AssertedDistribution->TaxonName + + + + + + + + +AssertedDistribution->GeographicArea + + + + + +AssertedDistribution->GeographicItem + + + + + + + + +AssertedDistribution->RelatedOriginRelationship + + + + + +AssertedDistribution->OriginRelationship + + + + + +AssertedDistribution->PinboardItem + + + + + +AssertedDistribution->Role + + + + + +AssertedDistribution->SubsequentCitation + + + + + +AssertedDistribution->VerifierRole + + + + + +AssertedDistribution->Creator + + + + + +AssertedDistribution->Project + + + + + +AssertedDistribution->Updater + + + + + +AssertedDistribution->DwcOccurrence + + + + + + + + +AssertedDistribution->OriginCitation + + + + + + + + + + +CitationTopic->Topic + + + + + +GeographicArea->GeographicItem + + + + + +RelatedOriginRelationship->OriginLot + + + + + +RelatedOriginRelationship->OriginSpecimen + + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +AssertedDistribution + + + +AssertedDistribution + + + + + +Source + + +Source + + + + + +Otu + + +Otu + + + + + +TaxonName + + +TaxonName + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +GeographicArea + + +GeographicArea + + + + + +GeographicItem + + +GeographicItem + + + + + +Keyword + + +Keyword + + + + + +RelatedOriginRelationship + + +RelatedOriginRelationship + + + + + +OriginLot + + +OriginLot + + + + + +OriginRelationship + + +OriginRelationship + + + + + +OriginSpecimen + + +OriginSpecimen + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +DwcOccurrence + + +DwcOccurrence + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/attributions_model_er.svg b/images/model/attributions_model_er.svg new file mode 100644 index 00000000..8688c3c2 --- /dev/null +++ b/images/model/attributions_model_er.svg @@ -0,0 +1,341 @@ + + + + + + +Attribution + + + +Attribution->Confidence + + + + + +Attribution->Tag + + + + + +Attribution->Note + + + + + +Attribution->CopyrightHolderRole + + + + + +Attribution->CreatorRole + + + + + +Attribution->EditorRole + + + + + +Attribution->OwnerRole + + + + + +Attribution->PinboardItem + + + + + +Attribution->Role + + + + + +Attribution->VerifierRole + + + + + +Attribution->Creator + + + + + +Attribution->Project + + + + + +Attribution->Updater + + + + + +Attribution->Objects with Attributions + + + + + +Confidence->ConfidenceLevel + + + + + +Tag->Keyword + + + + + +CopyrightHolderRole->AttributionCopyrightHolder + + + + + +CreatorRole->AttributionCreator + + + + + +EditorRole->AttributionEditor + + + + + +OwnerRole->AttributionOwner + + + + + + +VerifierRole->Verifier + + + + + + + +Attribution + + + +Attribution + + + + + +Confidence + + +Confidence + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +CopyrightHolderRole + + +CopyrightHolderRole + + + + + +AttributionCopyrightHolder + + +AttributionCopyrightHolder + + + + + +CreatorRole + + +CreatorRole + + + + + +AttributionCreator + + +AttributionCreator + + + + + +EditorRole + + +EditorRole + + + + + +AttributionEditor + + +AttributionEditor + + + + + +OwnerRole + + +OwnerRole + + + + + +AttributionOwner + + +AttributionOwner + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Attributions + + +Objects with Attributions + + + + + diff --git a/images/model/biocuration_classifications_model_er.svg b/images/model/biocuration_classifications_model_er.svg new file mode 100644 index 00000000..5730ebb2 --- /dev/null +++ b/images/model/biocuration_classifications_model_er.svg @@ -0,0 +1,161 @@ + + + + + + +BiocurationClassification + + + +BiocurationClassification->PinboardItem + + + + + +BiocurationClassification->Role + + + + + +BiocurationClassification->VerifierRole + + + + + +BiocurationClassification->BiocurationClass + + + + + +BiocurationClassification->BiologicalCollectionObject + + + + + +BiocurationClassification->Creator + + + + + +BiocurationClassification->Project + + + + + +BiocurationClassification->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +BiocurationClassification + + + +BiocurationClassification + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +BiocurationClass + + +BiocurationClass + + + + + +BiologicalCollectionObject + + +BiologicalCollectionObject + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/biological_associations_biological_associations_graphs_model_er.svg b/images/model/biological_associations_biological_associations_graphs_model_er.svg new file mode 100644 index 00000000..c5f39e4e --- /dev/null +++ b/images/model/biological_associations_biological_associations_graphs_model_er.svg @@ -0,0 +1,161 @@ + + + + + + +BiologicalAssociationsBiologicalAssociationsGraph + + + +BiologicalAssociationsBiologicalAssociationsGraph->BiologicalAssociation + + + + + +BiologicalAssociationsBiologicalAssociationsGraph->PinboardItem + + + + + +BiologicalAssociationsBiologicalAssociationsGraph->Role + + + + + +BiologicalAssociationsBiologicalAssociationsGraph->VerifierRole + + + + + +BiologicalAssociationsBiologicalAssociationsGraph->BiologicalAssociationsGraph + + + + + +BiologicalAssociationsBiologicalAssociationsGraph->Creator + + + + + +BiologicalAssociationsBiologicalAssociationsGraph->Project + + + + + +BiologicalAssociationsBiologicalAssociationsGraph->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +BiologicalAssociation + + +BiologicalAssociation + + + + + +BiologicalAssociationsBiologicalAssociationsGraph + + + +BiologicalAssociationsBiologicalAssociationsGraph + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +BiologicalAssociationsGraph + + +BiologicalAssociationsGraph + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/biological_associations_graphs_model_er.svg b/images/model/biological_associations_graphs_model_er.svg new file mode 100644 index 00000000..4ca95242 --- /dev/null +++ b/images/model/biological_associations_graphs_model_er.svg @@ -0,0 +1,280 @@ + + + + + + +BiologicalAssociationsGraph + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + + + +BiologicalAssociationsGraph->Citation + + + + + +BiologicalAssociationsGraph->Source + + + + + + + + +BiologicalAssociationsGraph->BiologicalAssociationsBiologicalAssociationsGraph + + + + + +BiologicalAssociationsGraph->PinboardItem + + + + + +BiologicalAssociationsGraph->Role + + + + + +BiologicalAssociationsGraph->SubsequentCitation + + + + + +BiologicalAssociationsGraph->VerifierRole + + + + + +BiologicalAssociationsGraph->Creator + + + + + +BiologicalAssociationsGraph->Project + + + + + +BiologicalAssociationsGraph->Updater + + + + + +BiologicalAssociationsGraph->OriginCitation + + + + + + + + +BiologicalAssociationsBiologicalAssociationsGraph->BiologicalAssociation + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +BiologicalAssociation + + +BiologicalAssociation + + + + + +Source + + +Source + + + + + +BiologicalAssociationsGraph + + + +BiologicalAssociationsGraph + + + + + +BiologicalAssociationsBiologicalAssociationsGraph + + +BiologicalAssociationsBiologicalAssociationsGraph + + + + + +CitationTopic + + +CitationTopic + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/biological_associations_model_er.svg b/images/model/biological_associations_model_er.svg new file mode 100644 index 00000000..6ebc709b --- /dev/null +++ b/images/model/biological_associations_model_er.svg @@ -0,0 +1,400 @@ + + + + + + +BiologicalAssociation + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Tag->Keyword + + + + + +BiologicalAssociation->Citation + + + + + +BiologicalAssociation->Confidence + + + + + +BiologicalAssociation->DataAttribute + + + + + +BiologicalAssociation->Identifier + + + + + +BiologicalAssociation->Tag + + + + + +BiologicalAssociation->Note + + + + + +BiologicalAssociation->Source + + + + + + + + +BiologicalAssociation->BiologicalAssociationsBiologicalAssociationsGraph + + + + + +BiologicalAssociation->PinboardItem + + + + + +BiologicalAssociation->Role + + + + + +BiologicalAssociation->SubsequentCitation + + + + + +BiologicalAssociation->VerifierRole + + + + + +BiologicalAssociation->BiologicalRelationship + + + + + +BiologicalAssociation->Creator + + + + + +BiologicalAssociation->Project + + + + + +BiologicalAssociation->Updater + + + + + +BiologicalAssociation->OriginCitation + + + + + + + + +BiologicalAssociation->Objects with Biological associations + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +BiologicalAssociation + + + +BiologicalAssociation + + + + + +Source + + +Source + + + + + +BiologicalAssociationsBiologicalAssociationsGraph + + +BiologicalAssociationsBiologicalAssociationsGraph + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +BiologicalRelationship + + +BiologicalRelationship + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + +Objects with Biological associations + + +Objects with Biological associations + + + + + diff --git a/images/model/biological_relationship_types_model_er.svg b/images/model/biological_relationship_types_model_er.svg new file mode 100644 index 00000000..708554df --- /dev/null +++ b/images/model/biological_relationship_types_model_er.svg @@ -0,0 +1,161 @@ + + + + + + +BiologicalRelationshipType + + + +BiologicalRelationshipType->PinboardItem + + + + + +BiologicalRelationshipType->Role + + + + + +BiologicalRelationshipType->VerifierRole + + + + + +BiologicalRelationshipType->BiologicalProperty + + + + + +BiologicalRelationshipType->BiologicalRelationship + + + + + +BiologicalRelationshipType->Creator + + + + + +BiologicalRelationshipType->Project + + + + + +BiologicalRelationshipType->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +BiologicalRelationshipType + + + +BiologicalRelationshipType + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +BiologicalProperty + + +BiologicalProperty + + + + + +BiologicalRelationship + + +BiologicalRelationship + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/biological_relationships_model_er.svg b/images/model/biological_relationships_model_er.svg new file mode 100644 index 00000000..0f2a494f --- /dev/null +++ b/images/model/biological_relationships_model_er.svg @@ -0,0 +1,415 @@ + + + + + + +BiologicalRelationship + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Tag->Keyword + + + + + + + +BiologicalRelationship->Citation + + + + + +BiologicalRelationship->DataAttribute + + + + + +BiologicalRelationship->Tag + + + + + +BiologicalRelationship->Note + + + + + +BiologicalRelationship->BiologicalAssociation + + + + + +BiologicalRelationship->Source + + + + + + + + +BiologicalRelationship->BiologicalRelationshipType + + + + + +BiologicalRelationship->ObjectBiologicalRelationshipType + + + + + +BiologicalRelationship->PinboardItem + + + + + +BiologicalRelationship->Role + + + + + +BiologicalRelationship->SubjectBiologicalRelationshipType + + + + + +BiologicalRelationship->SubsequentCitation + + + + + +BiologicalRelationship->VerifierRole + + + + + +BiologicalRelationship->Creator + + + + + +BiologicalRelationship->Project + + + + + +BiologicalRelationship->Updater + + + + + +BiologicalRelationship->OriginCitation + + + + + + + + +BiologicalRelationshipType->BiologicalProperty + + + + + +CitationTopic->Topic + + + + + +ObjectBiologicalRelationshipType->ObjectBiologicalProperty + + + + + + +SubjectBiologicalRelationshipType->SubjectBiologicalProperty + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +DataAttribute + + +DataAttribute + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +BiologicalAssociation + + +BiologicalAssociation + + + + + +Source + + +Source + + + + + +BiologicalRelationship + + + +BiologicalRelationship + + + + + +BiologicalRelationshipType + + +BiologicalRelationshipType + + + + + +BiologicalProperty + + +BiologicalProperty + + + + + +CitationTopic + + +CitationTopic + + + + + +Keyword + + +Keyword + + + + + +ObjectBiologicalRelationshipType + + +ObjectBiologicalRelationshipType + + + + + +ObjectBiologicalProperty + + +ObjectBiologicalProperty + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubjectBiologicalRelationshipType + + +SubjectBiologicalRelationshipType + + + + + +SubjectBiologicalProperty + + +SubjectBiologicalProperty + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/character_states_model_er.svg b/images/model/character_states_model_er.svg new file mode 100644 index 00000000..00d8c211 --- /dev/null +++ b/images/model/character_states_model_er.svg @@ -0,0 +1,475 @@ + + + + + + +CharacterState + + + +AlternateValue->AlternateValueLanguage + + + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + + + +CharacterState->AlternateValue + + + + + +CharacterState->Citation + + + + + +CharacterState->Confidence + + + + + +CharacterState->DataAttribute + + + + + +CharacterState->Depiction + + + + + +CharacterState->Identifier + + + + + +CharacterState->Tag + + + + + +CharacterState->Note + + + + + +CharacterState->Observation + + + + + +CharacterState->Source + + + + + + + + +CharacterState->Descriptor + + + + + +CharacterState->Documentation + + + + + +CharacterState->PinboardItem + + + + + +CharacterState->Role + + + + + +CharacterState->SubsequentCitation + + + + + +CharacterState->VerifierRole + + + + + +CharacterState->Creator + + + + + +CharacterState->Project + + + + + +CharacterState->Updater + + + + + +CharacterState->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + +Documentation->Document + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +AlternateValue + + +AlternateValue + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Observation + + +Observation + + + + + +Source + + +Source + + + + + +Descriptor + + +Descriptor + + + + + +CharacterState + + + +CharacterState + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Documentation + + +Documentation + + + + + +Document + + +Document + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/citation_topics_model_er.svg b/images/model/citation_topics_model_er.svg new file mode 100644 index 00000000..7adceb9c --- /dev/null +++ b/images/model/citation_topics_model_er.svg @@ -0,0 +1,179 @@ + + + + + + +CitationTopic + + + +CitationTopic->Citation + + + + + +CitationTopic->Source + + + + + + + + +CitationTopic->PinboardItem + + + + + +CitationTopic->Role + + + + + +CitationTopic->VerifierRole + + + + + +CitationTopic->Creator + + + + + +CitationTopic->Project + + + + + +CitationTopic->Topic + + + + + +CitationTopic->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Source + + +Source + + + + + +CitationTopic + + + +CitationTopic + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Topic + + +Topic + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/citations_model_er.svg b/images/model/citations_model_er.svg new file mode 100644 index 00000000..5ee21327 --- /dev/null +++ b/images/model/citations_model_er.svg @@ -0,0 +1,251 @@ + + + + + + +Citation + + + +Citation->Tag + + + + + +Citation->Note + + + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Citation->PinboardItem + + + + + +Citation->Role + + + + + +Citation->VerifierRole + + + + + +Citation->Creator + + + + + +Citation->Project + + + + + +Citation->Updater + + + + + +Citation->Objects with Citations + + + + + +Tag->Keyword + + + + + +Source->Document + + + + + +CitationTopic->Topic + + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + + +Citation + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +CitationTopic + + +CitationTopic + + + + + +Document + + +Document + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Citations + + +Objects with Citations + + + + + diff --git a/images/model/collecting_events_model_er.svg b/images/model/collecting_events_model_er.svg new file mode 100644 index 00000000..85aadbd8 --- /dev/null +++ b/images/model/collecting_events_model_er.svg @@ -0,0 +1,667 @@ + + + + + + +CollectingEvent + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +CollectingEvent->Citation + + + + + +CollectingEvent->Confidence + + + + + +CollectingEvent->DataAttribute + + + + + +CollectingEvent->Depiction + + + + + +CollectingEvent->Identifier + + + + + +CollectingEvent->Tag + + + + + +CollectingEvent->Note + + + + + +CollectingEvent->CollectionObject + + + + + +CollectingEvent->Source + + + + + + + + +CollectingEvent->CollectorRole + + + + + +CollectingEvent->Documentation + + + + + +CollectingEvent->Georeference + + + + + +CollectingEvent->GeoLocateGeoreference + + + + + +CollectingEvent->GpxGeoreference + + + + + +CollectingEvent->Label + + + + + +CollectingEvent->PinboardItem + + + + + +CollectingEvent->Role + + + + + +CollectingEvent->SubsequentCitation + + + + + +CollectingEvent->VerifierRole + + + + + +CollectingEvent->Version + + + + + +CollectingEvent->Creator + + + + + +CollectingEvent->GeographicArea + + + + + +CollectingEvent->Project + + + + + +CollectingEvent->Updater + + + + + +CollectingEvent->AccessionProviderRole + + + + + + + + +CollectingEvent->DeaccessionRecipientRole + + + + + + + + +CollectingEvent->OriginCitation + + + + + + + + +CollectingEvent->VerbatimDataGeoreference + + + + + + + + +CollectionObject->Otu + + + + + +CollectionObject->DwcOccurrence + + + + + + + +CitationTopic->Topic + + + + + +CollectorRole->Collector + + + + + +Documentation->Document + + + + + +Georeference->ErrorGeographicItem + + + + + +Georeference->GeographicItem + + + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +CollectingEvent + + + +CollectingEvent + + + + + +CollectionObject + + +CollectionObject + + + + + +Otu + + +Otu + + + + + +Source + + +Source + + + + + +CitationTopic + + +CitationTopic + + + + + +CollectorRole + + +CollectorRole + + + + + +Collector + + +Collector + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Documentation + + +Documentation + + + + + +Document + + +Document + + + + + +DwcOccurrence + + +DwcOccurrence + + + + + +Georeference + + +Georeference + + + + + +ErrorGeographicItem + + +ErrorGeographicItem + + + + + +GeoLocateGeoreference + + +GeoLocateGeoreference + + + + + +GeographicItem + + +GeographicItem + + + + + +GpxGeoreference + + +GpxGeoreference + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +Label + + +Label + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +GeographicArea + + +GeographicArea + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +AccessionProviderRole + + +AccessionProviderRole + + + + + +DeaccessionRecipientRole + + +DeaccessionRecipientRole + + + + + +OriginCitation + + +OriginCitation + + + + + +VerbatimDataGeoreference + + +VerbatimDataGeoreference + + + + + diff --git a/images/model/collection_object_observations_model_er.svg b/images/model/collection_object_observations_model_er.svg new file mode 100644 index 00000000..f6528406 --- /dev/null +++ b/images/model/collection_object_observations_model_er.svg @@ -0,0 +1,236 @@ + + + + + + +CollectionObjectObservation + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +CollectionObjectObservation->Depiction + + + + + +CollectionObjectObservation->Tag + + + + + +CollectionObjectObservation->Note + + + + + +CollectionObjectObservation->DerivedCollectionObject + + + + + +CollectionObjectObservation->PinboardItem + + + + + +CollectionObjectObservation->Role + + + + + +CollectionObjectObservation->VerifierRole + + + + + +CollectionObjectObservation->Creator + + + + + +CollectionObjectObservation->Project + + + + + +CollectionObjectObservation->Updater + + + + + +DerivedCollectionObject->CollectionObject + + + + + + +VerifierRole->Verifier + + + + + + + +Depiction + + +Depiction + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +CollectionObject + + +CollectionObject + + + + + +CollectionObjectObservation + + + +CollectionObjectObservation + + + + + +DerivedCollectionObject + + +DerivedCollectionObject + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/collection_objects_model_er.svg b/images/model/collection_objects_model_er.svg new file mode 100644 index 00000000..cc64284a --- /dev/null +++ b/images/model/collection_objects_model_er.svg @@ -0,0 +1,1028 @@ + + + + + + +CollectionObject + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + +Depiction->SqedDepiction + + + + + +Tag->Keyword + + + + + +ProtocolRelationship->Protocol + + + + + +CollectionObject->Citation + + + + + +CollectionObject->Confidence + + + + + +CollectionObject->DataAttribute + + + + + +CollectionObject->Depiction + + + + + +CollectionObject->Identifier + + + + + +CollectionObject->Tag + + + + + +CollectionObject->Note + + + + + +CollectionObject->ProtocolRelationship + + + + + +CollectionObject->BiologicalAssociation + + + + + +CollectionObject->Observation + + + + + +CollectionObject->CollectingEvent + + + + + +CollectionObject->Source + + + + + + + + +CollectionObject->BiocurationClassification + + + + + +CollectionObject->DerivedCollectionObject + + + + + +CollectionObject->TaxonDetermination + + + + + +CollectionObject->OriginRelationship + + + + + +CollectionObject->LoanItem + + + + + +CollectionObject->Loan + + + + + + + + +CollectionObject->ObservationMatrixRow + + + + + +CollectionObject->ObservationMatrixRowItem + + + + + +CollectionObject->PinboardItem + + + + + +CollectionObject->RelatedBiologicalAssociation + + + + + +CollectionObject->RelatedOriginRelationship + + + + + +CollectionObject->Role + + + + + +CollectionObject->SubsequentCitation + + + + + +CollectionObject->TypeMaterial + + + + + +CollectionObject->VerifierRole + + + + + +CollectionObject->Version + + + + + +CollectionObject->Creator + + + + + +CollectionObject->PreparationType + + + + + +CollectionObject->Project + + + + + +CollectionObject->RangedLotCategory + + + + + +CollectionObject->Repository + + + + + +CollectionObject->Updater + + + + + +CollectionObject->AccessionProvider + + + + + + + + +CollectionObject->AccessionProviderRole + + + + + + + + +CollectionObject->Container + + + + + + + + +CollectionObject->ContainerItem + + + + + + + + +CollectionObject->DeaccessionRecipient + + + + + + + + +CollectionObject->DeaccessionRecipientRole + + + + + + + + +CollectionObject->DwcOccurrence + + + + + + + + +CollectionObject->OriginCitation + + + + + + + + +CollectionObject->ParentContainerItem + + + + + + + + + +Observation->Descriptor + + + + + + +CollectingEvent->Georeference + + + + + +Otu->TaxonName + + + + + + + +BiocurationClassification->BiocurationClass + + + + + +CitationTopic->Topic + + + + + +DerivedCollectionObject->CollectionObjectObservation + + + + + +TaxonDetermination->Otu + + + + + +TaxonDetermination->Determiner + + + + + +OriginRelationship->Extract + + + + + + +Extract->Sequence + + + + + +Georeference->GeographicItem + + + + + +LoanItem->Loan + + + + + +ObservationMatrixRow->ObservationMatrix + + + + + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +ProtocolRelationship + + +ProtocolRelationship + + + + + +CollectionObject + + + +CollectionObject + + + + + +BiologicalAssociation + + +BiologicalAssociation + + + + + +Observation + + +Observation + + + + + +Descriptor + + +Descriptor + + + + + +CollectingEvent + + +CollectingEvent + + + + + +Otu + + +Otu + + + + + +Sequence + + +Sequence + + + + + +Source + + +Source + + + + + +TaxonName + + +TaxonName + + + + + +BiocurationClassification + + +BiocurationClassification + + + + + +BiocurationClass + + +BiocurationClass + + + + + +CitationTopic + + +CitationTopic + + + + + +DerivedCollectionObject + + +DerivedCollectionObject + + + + + +CollectionObjectObservation + + +CollectionObjectObservation + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +TaxonDetermination + + +TaxonDetermination + + + + + +Determiner + + +Determiner + + + + + +OriginRelationship + + +OriginRelationship + + + + + +Extract + + +Extract + + + + + +Georeference + + +Georeference + + + + + +GeographicItem + + +GeographicItem + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +LoanItem + + +LoanItem + + + + + +Loan + + +Loan + + + + + +ObservationMatrixRow + + +ObservationMatrixRow + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +ObservationMatrixRowItem + + +ObservationMatrixRowItem + + + + + +PinboardItem + + +PinboardItem + + + + + +Protocol + + +Protocol + + + + + +RelatedBiologicalAssociation + + +RelatedBiologicalAssociation + + + + + +RelatedOriginRelationship + + +RelatedOriginRelationship + + + + + +Role + + +Role + + + + + +SqedDepiction + + +SqedDepiction + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +TypeMaterial + + +TypeMaterial + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +PreparationType + + +PreparationType + + + + + +Project + + +Project + + + + + +RangedLotCategory + + +RangedLotCategory + + + + + +Repository + + +Repository + + + + + +Updater + + +Updater + + + + + +AccessionProvider + + +AccessionProvider + + + + + +AccessionProviderRole + + +AccessionProviderRole + + + + + +Container + + +Container + + + + + +ContainerItem + + +ContainerItem + + + + + +DeaccessionRecipient + + +DeaccessionRecipient + + + + + +DeaccessionRecipientRole + + +DeaccessionRecipientRole + + + + + +DwcOccurrence + + +DwcOccurrence + + + + + +OriginCitation + + +OriginCitation + + + + + +ParentContainerItem + + +ParentContainerItem + + + + + diff --git a/images/model/collection_profiles_model_er.svg b/images/model/collection_profiles_model_er.svg new file mode 100644 index 00000000..a73745e7 --- /dev/null +++ b/images/model/collection_profiles_model_er.svg @@ -0,0 +1,221 @@ + + + + + + +CollectionProfile + + + +Tag->Keyword + + + + + +CollectionProfile->Identifier + + + + + +CollectionProfile->Tag + + + + + +CollectionProfile->Note + + + + + +CollectionProfile->Otu + + + + + +CollectionProfile->PinboardItem + + + + + +CollectionProfile->Role + + + + + +CollectionProfile->VerifierRole + + + + + +CollectionProfile->Container + + + + + +CollectionProfile->Creator + + + + + +CollectionProfile->Project + + + + + +CollectionProfile->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Otu + + +Otu + + + + + +CollectionProfile + + + +CollectionProfile + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Container + + +Container + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/common_names_model_er.svg b/images/model/common_names_model_er.svg new file mode 100644 index 00000000..9a9e51a6 --- /dev/null +++ b/images/model/common_names_model_er.svg @@ -0,0 +1,418 @@ + + + + + + +CommonName + + + +AlternateValue->AlternateValueLanguage + + + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Tag->Keyword + + + + + + + +CommonName->AlternateValue + + + + + +CommonName->Citation + + + + + +CommonName->DataAttribute + + + + + +CommonName->Identifier + + + + + +CommonName->Tag + + + + + +CommonName->Note + + + + + +CommonName->Source + + + + + + + + +CommonName->Otu + + + + + +CommonName->TaxonName + + + + + + + + +CommonName->PinboardItem + + + + + +CommonName->Role + + + + + +CommonName->SubsequentCitation + + + + + +CommonName->VerifierRole + + + + + +CommonName->Creator + + + + + +CommonName->GeographicArea + + + + + +CommonName->Language + + + + + +CommonName->Project + + + + + +CommonName->Updater + + + + + +CommonName->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +AlternateValue + + +AlternateValue + + + + + +Citation + + +Citation + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +Otu + + +Otu + + + + + +TaxonName + + +TaxonName + + + + + +CommonName + + + +CommonName + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +CitationTopic + + +CitationTopic + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +GeographicArea + + +GeographicArea + + + + + +Language + + +Language + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/confidences_model_er.svg b/images/model/confidences_model_er.svg new file mode 100644 index 00000000..d012cf7a --- /dev/null +++ b/images/model/confidences_model_er.svg @@ -0,0 +1,295 @@ + + + + + + +Confidence + + + +Confidence->Citation + + + + + +Confidence->Source + + + + + + + + +Confidence->ControlledVocabularyTerm + + + + + +Confidence->PinboardItem + + + + + +Confidence->Role + + + + + +Confidence->SubsequentCitation + + + + + +Confidence->VerifierRole + + + + + +Confidence->ConfidenceLevel + + + + + +Confidence->Creator + + + + + +Confidence->Project + + + + + +Confidence->Updater + + + + + +Confidence->OriginCitation + + + + + + + + +Confidence->Objects with Confidences + + + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Confidence + + + +Confidence + + + + + +Citation + + +Citation + + + + + +Source + + +Source + + + + + +ControlledVocabularyTerm + + +ControlledVocabularyTerm + + + + + +CitationTopic + + +CitationTopic + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + +Objects with Confidences + + +Objects with Confidences + + + + + diff --git a/images/model/container_items_model_er.svg b/images/model/container_items_model_er.svg new file mode 100644 index 00000000..629cc71a --- /dev/null +++ b/images/model/container_items_model_er.svg @@ -0,0 +1,236 @@ + + + + + + +ContainerItem + + + +ContainerItem->AncestorHierarchy + + + + + +ContainerItem->Child + + + + + +ContainerItem->DescendantHierarchy + + + + + +ContainerItem->PinboardItem + + + + + +ContainerItem->Role + + + + + +ContainerItem->VerifierRole + + + + + +ContainerItem->Creator + + + + + +ContainerItem->Parent + + + + + +ContainerItem->Project + + + + + +ContainerItem->Updater + + + + + +ContainerItem->Objects with Container items + + + + + +AncestorHierarchy->SelfAndAncestor + + + + + +DescendantHierarchy->SelfAndDescendant + + + + + + +VerifierRole->Verifier + + + + + + + +ContainerItem + + + +ContainerItem + + + + + +AncestorHierarchy + + +AncestorHierarchy + + + + + +Child + + +Child + + + + + +DescendantHierarchy + + +DescendantHierarchy + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SelfAndAncestor + + +SelfAndAncestor + + + + + +SelfAndDescendant + + +SelfAndDescendant + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Parent + + +Parent + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Container items + + +Objects with Container items + + + + + diff --git a/images/model/containers_model_er.svg b/images/model/containers_model_er.svg new file mode 100644 index 00000000..400b0aaf --- /dev/null +++ b/images/model/containers_model_er.svg @@ -0,0 +1,291 @@ + + + + + + +Container + + + +Tag->Keyword + + + + + +Container->Identifier + + + + + +Container->Tag + + + + + +Container->Container + + + + + + + + +Container->CollectionProfile + + + + + +Container->Label + + + + + +Container->LoanItem + + + + + +Container->Loan + + + + + + + + +Container->PinboardItem + + + + + +Container->Role + + + + + +Container->VerifierRole + + + + + +Container->Creator + + + + + +Container->Project + + + + + +Container->Updater + + + + + +Container->ContainerItem + + + + + + + + + +Container->ParentContainerItem + + + + + + + + +LoanItem->Loan + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Container + + + +Container + + + + + +CollectionProfile + + +CollectionProfile + + + + + +Keyword + + +Keyword + + + + + +Label + + +Label + + + + + +LoanItem + + +LoanItem + + + + + +Loan + + +Loan + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +ContainerItem + + +ContainerItem + + + + + +ParentContainerItem + + +ParentContainerItem + + + + + diff --git a/images/model/contents_model_er.svg b/images/model/contents_model_er.svg new file mode 100644 index 00000000..051ea6f2 --- /dev/null +++ b/images/model/contents_model_er.svg @@ -0,0 +1,413 @@ + + + + + + +Content + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + + + +Content->Citation + + + + + +Content->Confidence + + + + + +Content->DataAttribute + + + + + +Content->Depiction + + + + + +Content->Attribution + + + + + + + + +Content->Source + + + + + + + + +Content->Otu + + + + + +Content->PinboardItem + + + + + +Content->Role + + + + + +Content->SubsequentCitation + + + + + +Content->Topic + + + + + +Content->VerifierRole + + + + + +Content->Version + + + + + +Content->Creator + + + + + +Content->Language + + + + + +Content->Project + + + + + +Content->Updater + + + + + +Content->OriginCitation + + + + + + + + +Content->PublicContent + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Attribution + + +Attribution + + + + + +Source + + +Source + + + + + +Otu + + +Otu + + + + + +Content + + + +Content + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Image + + +Image + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Language + + +Language + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + +PublicContent + + +PublicContent + + + + + diff --git a/images/model/controlled_vocabulary_terms_model_er.svg b/images/model/controlled_vocabulary_terms_model_er.svg new file mode 100644 index 00000000..ba587bca --- /dev/null +++ b/images/model/controlled_vocabulary_terms_model_er.svg @@ -0,0 +1,223 @@ + + + + + + +ControlledVocabularyTerm + + + +AlternateValue->AlternateValueLanguage + + + + + +ControlledVocabularyTerm->AlternateValue + + + + + +ControlledVocabularyTerm->ObservationMatrixRowItem + + + + + +ControlledVocabularyTerm->ObservationMatrixColumnItem + + + + + +ControlledVocabularyTerm->PinboardItem + + + + + +ControlledVocabularyTerm->Role + + + + + +ControlledVocabularyTerm->VerifierRole + + + + + +ControlledVocabularyTerm->Version + + + + + +ControlledVocabularyTerm->Creator + + + + + +ControlledVocabularyTerm->Project + + + + + +ControlledVocabularyTerm->Updater + + + + + +ObservationMatrixRowItem->ObservationMatrix + + + + + + + +VerifierRole->Verifier + + + + + + + + +AlternateValue + + +AlternateValue + + + + + +ControlledVocabularyTerm + + + +ControlledVocabularyTerm + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +ObservationMatrixRowItem + + +ObservationMatrixRowItem + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +ObservationMatrixColumnItem + + +ObservationMatrixColumnItem + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/data/specimen_object_graph_eg1.svg b/images/model/data/specimen_object_graph_eg1.svg new file mode 100644 index 00000000..688d689b --- /dev/null +++ b/images/model/data/specimen_object_graph_eg1.svg @@ -0,0 +1,179 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CollectionObject 1131633, 5c5ff4a9-0986-4748-a8ea-5573fccb4e36 + + + + 5c5ff4a9-0986-4748-a8ea-5573fccb4e36 + + + + crowPontiac, IllMay 15, 1934J.C. McConaha + + + + + + + + McConaha, J.C. + + + + Georeference + + + + Illinois Natural History Survey (INHS) + + + + Female + + + + Myrsidea interrupta (Osborn, 1896) by Emerson on 1947 + + + + Myrsidea interrupta (Osborn, 1896) + + + + Taxon Code 48026 + + + + Myrsidea interrupta (Osborn, 1896) + + + + Myrsidea + + + + Menoponidae + + + + Amblycera + + + + Psocodea + + + + Insecta Linnaeus, 1758 + + + + + + + + Linnaeus, Carolus + + + + Q1043 + + + + Arthropoda + + + + Animalia + + + + Root + + + + + + + + Emerson, K. C. + + + + Corvus brachyrhynchos Brehm, 1822 + + + + Has biological relationship with + + diff --git a/images/model/data_attributes_model_er.svg b/images/model/data_attributes_model_er.svg new file mode 100644 index 00000000..0b3729f9 --- /dev/null +++ b/images/model/data_attributes_model_er.svg @@ -0,0 +1,280 @@ + + + + + + +DataAttribute + + + +DataAttribute->Citation + + + + + +DataAttribute->Source + + + + + + + + +DataAttribute->PinboardItem + + + + + +DataAttribute->Role + + + + + +DataAttribute->SubsequentCitation + + + + + +DataAttribute->VerifierRole + + + + + +DataAttribute->Creator + + + + + +DataAttribute->Predicate + + + + + +DataAttribute->Project + + + + + +DataAttribute->Updater + + + + + +DataAttribute->OriginCitation + + + + + + + + +DataAttribute->Objects with Data attributes + + + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +DataAttribute + + + +DataAttribute + + + + + +Citation + + +Citation + + + + + +Source + + +Source + + + + + +CitationTopic + + +CitationTopic + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Predicate + + +Predicate + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + +Objects with Data attributes + + +Objects with Data attributes + + + + + diff --git a/images/model/dataset_record_fields_model_er.svg b/images/model/dataset_record_fields_model_er.svg new file mode 100644 index 00000000..e4be5da0 --- /dev/null +++ b/images/model/dataset_record_fields_model_er.svg @@ -0,0 +1,135 @@ + + + + + + +DatasetRecordField + + + +DatasetRecordField->PinboardItem + + + + + +DatasetRecordField->Role + + + + + +DatasetRecordField->VerifierRole + + + + + +DatasetRecordField->DatasetRecord + + + + + +DatasetRecordField->ImportDataset + + + + + + + + +DatasetRecordField->Project + + + + + + + + + +VerifierRole->Verifier + + + + + +DatasetRecordField + + + +DatasetRecordField + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +DatasetRecord + + +DatasetRecord + + + + + +ImportDataset + + +ImportDataset + + + + + +Project + + +Project + + + + + diff --git a/images/model/dataset_records_model_er.svg b/images/model/dataset_records_model_er.svg new file mode 100644 index 00000000..87cba224 --- /dev/null +++ b/images/model/dataset_records_model_er.svg @@ -0,0 +1,146 @@ + + + + + + +DatasetRecord + + + +DatasetRecord->PinboardItem + + + + + +DatasetRecord->Role + + + + + +DatasetRecord->VerifierRole + + + + + +DatasetRecord->Creator + + + + + +DatasetRecord->ImportDataset + + + + + +DatasetRecord->Project + + + + + +DatasetRecord->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +DatasetRecord + + + +DatasetRecord + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +ImportDataset + + +ImportDataset + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/depictions_model_er.svg b/images/model/depictions_model_er.svg new file mode 100644 index 00000000..d07cb3e8 --- /dev/null +++ b/images/model/depictions_model_er.svg @@ -0,0 +1,239 @@ + + + + + + +Depiction + + + +Depiction->DataAttribute + + + + + +Depiction->Tag + + + + + +Depiction->PinboardItem + + + + + +Depiction->Role + + + + + +Depiction->VerifierRole + + + + + +Depiction->Creator + + + + + +Depiction->Image + + + + + +Depiction->Project + + + + + +Depiction->SledImage + + + + + +Depiction->Updater + + + + + +Depiction->SqedDepiction + + + + + + + + +Depiction->Objects with Depictions + + + + + +Tag->Keyword + + + + + + +VerifierRole->Verifier + + + + + + + +Depiction + + + +Depiction + + + + + +DataAttribute + + +DataAttribute + + + + + +Tag + + +Tag + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Image + + +Image + + + + + +Project + + +Project + + + + + +SledImage + + +SledImage + + + + + +Updater + + +Updater + + + + + +SqedDepiction + + +SqedDepiction + + + + + +Objects with Depictions + + +Objects with Depictions + + + + + diff --git a/images/model/derived_collection_objects_model_er.svg b/images/model/derived_collection_objects_model_er.svg new file mode 100644 index 00000000..c85f9a3d --- /dev/null +++ b/images/model/derived_collection_objects_model_er.svg @@ -0,0 +1,161 @@ + + + + + + +DerivedCollectionObject + + + +DerivedCollectionObject->CollectionObject + + + + + +DerivedCollectionObject->PinboardItem + + + + + +DerivedCollectionObject->Role + + + + + +DerivedCollectionObject->VerifierRole + + + + + +DerivedCollectionObject->CollectionObjectObservation + + + + + +DerivedCollectionObject->Creator + + + + + +DerivedCollectionObject->Project + + + + + +DerivedCollectionObject->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +CollectionObject + + +CollectionObject + + + + + +DerivedCollectionObject + + + +DerivedCollectionObject + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +CollectionObjectObservation + + +CollectionObjectObservation + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/descriptors_model_er.svg b/images/model/descriptors_model_er.svg new file mode 100644 index 00000000..11799c37 --- /dev/null +++ b/images/model/descriptors_model_er.svg @@ -0,0 +1,521 @@ + + + + + + +Descriptor + + + +AlternateValue->AlternateValueLanguage + + + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +Descriptor->AlternateValue + + + + + +Descriptor->Citation + + + + + +Descriptor->Confidence + + + + + +Descriptor->DataAttribute + + + + + +Descriptor->Depiction + + + + + +Descriptor->Identifier + + + + + +Descriptor->Tag + + + + + +Descriptor->Note + + + + + +Descriptor->Observation + + + + + +Descriptor->Source + + + + + + + + +Descriptor->Documentation + + + + + +Descriptor->ObservationMatrixColumn + + + + + +Descriptor->ObservationMatrixColumnItem + + + + + +Descriptor->PinboardItem + + + + + +Descriptor->Role + + + + + +Descriptor->SubsequentCitation + + + + + +Descriptor->VerifierRole + + + + + +Descriptor->Creator + + + + + +Descriptor->Project + + + + + +Descriptor->Updater + + + + + +Descriptor->OriginCitation + + + + + + + + +Observation->Otu + + + + + + + + +CitationTopic->Topic + + + + + +Documentation->Document + + + + + +ObservationMatrixColumn->ObservationMatrix + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +AlternateValue + + +AlternateValue + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Descriptor + + + +Descriptor + + + + + +Observation + + +Observation + + + + + +Otu + + +Otu + + + + + +Source + + +Source + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Documentation + + +Documentation + + + + + +Document + + +Document + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +ObservationMatrixColumn + + +ObservationMatrixColumn + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +ObservationMatrixColumnItem + + +ObservationMatrixColumnItem + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/documentation_model_er.svg b/images/model/documentation_model_er.svg new file mode 100644 index 00000000..f98492ba --- /dev/null +++ b/images/model/documentation_model_er.svg @@ -0,0 +1,221 @@ + + + + + + +Documentation + + + +Tag->Keyword + + + + + +Documentation->Identifier + + + + + +Documentation->Tag + + + + + +Documentation->Note + + + + + +Documentation->PinboardItem + + + + + +Documentation->Role + + + + + +Documentation->VerifierRole + + + + + +Documentation->Creator + + + + + +Documentation->Document + + + + + +Documentation->Project + + + + + +Documentation->Updater + + + + + +Documentation->Objects with Documentation + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Documentation + + + +Documentation + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Document + + +Document + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Documentation + + +Objects with Documentation + + + + + diff --git a/images/model/documents_model_er.svg b/images/model/documents_model_er.svg new file mode 100644 index 00000000..f286da48 --- /dev/null +++ b/images/model/documents_model_er.svg @@ -0,0 +1,221 @@ + + + + + + +Document + + + +Tag->Keyword + + + + + +Document->Identifier + + + + + +Document->Tag + + + + + +Document->Note + + + + + +Document->Documentation + + + + + +Document->PinboardItem + + + + + +Document->Role + + + + + +Document->VerifierRole + + + + + +Document->Creator + + + + + +Document->Project + + + + + +Document->Updater + + + + + +Documentation->Source + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +Document + + + +Document + + + + + +Documentation + + +Documentation + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/er.svg b/images/model/er.svg new file mode 100644 index 00000000..e6966f3c --- /dev/null +++ b/images/model/er.svg @@ -0,0 +1,434 @@ + + + + + + +G + +Generated 2022-02-08 10:47:04 -0600 via 'rake tw:docs:er'. + + +CollectingEvent->CollectionObject + + + + + +CollectionObject->Source + + + + + +CollectionObject->BiologicalAssociation + + + + + +CollectionObject->Observation + + + + + +CollectionObject->TypeMaterial + + + + + +CollectionObject->TaxonDetermination + + + + + +Otu->AssertedDistribution + + + + + +Otu->BiologicalAssociation + + + + + +Otu->Observation + + + + + +Otu->TaxonDetermination + + + + + +Otu->Identifier + + + + + +Otu->Depiction + + + + + +TaxonName->Otu + + + + + +TaxonName->TypeMaterial + + + + + +Descriptor->Observation + + + + + +Source->Citation + + + + + +Source->AlternateValue + + + + + +AssertedDistribution->Confidence + + + + + +Sequence->OriginRelationship + + + + + +ControlledVocabularyTerm->Tag + + + + + +ControlledVocabularyTerm->DataAttribute + + + + + +Image->Depiction + + + + + +Image->Attribution + + + + + +TaxonDetermination->Note + + + + + +TaxonDetermination->ProtocolRelationship + + + + + +Georeference->CollectingEvent + + + + + +Person->Role:Collector + + + + + +Role:Collector->CollectionObject + + + + + +CollectingEvent + + +CollectingEvent + + + + + +CollectionObject + + +CollectionObject + + + + + +Otu + + +Otu + + + + + +TaxonName + + +TaxonName + + + + + +Descriptor + + +Descriptor + + + + + +Source + + +Source + + + + + +AssertedDistribution + + +AssertedDistribution + + + + + +BiologicalAssociation + + +BiologicalAssociation + + + + + +Observation + + +Observation + + + + + +Sequence + + +Sequence + + + + + +ControlledVocabularyTerm + + +ControlledVocabularyTerm + + + + + +Image + + +Image + + + + + +TypeMaterial + + +TypeMaterial + + + + + +TaxonDetermination + + +TaxonDetermination + + + + + +Georeference + + +Georeference + + + + + +OriginRelationship + + +OriginRelationship + + + + + +Person + + +Person + + + + + +Role:Collector + + +Role:Collector + + + + + +Citation + + +Citation + + + + + +Tag + + +Tag + + + + + +DataAttribute + + +DataAttribute + + + + + +Note + + +Note + + + + + +Identifier + + +Identifier + + + + + +Confidence + + +Confidence + + + + + +AlternateValue + + +AlternateValue + + + + + +Depiction + + +Depiction + + + + + +ProtocolRelationship + + +ProtocolRelationship + + + + + +Attribution + + +Attribution + + + + + diff --git a/images/model/extracts_model_er.svg b/images/model/extracts_model_er.svg new file mode 100644 index 00000000..6b515d45 --- /dev/null +++ b/images/model/extracts_model_er.svg @@ -0,0 +1,478 @@ + + + + + + +Extract + + + +ProtocolRelationship->Protocol + + + + + +Extract->DataAttribute + + + + + +Extract->Identifier + + + + + +Extract->ProtocolRelationship + + + + + +Extract->RelatedOriginRelationship + + + + + +Extract->OriginRelationship + + + + + +Extract->ExtractorRole + + + + + +Extract->PinboardItem + + + + + +Extract->Role + + + + + +Extract->VerifierRole + + + + + +Extract->Creator + + + + + +Extract->Project + + + + + +Extract->Repository + + + + + +Extract->Updater + + + + + +Extract->Container + + + + + + + + +Extract->ContainerItem + + + + + + + + +Extract->ParentContainerItem + + + + + + + + +RelatedOriginRelationship->CollectionObject + + + + + +RelatedOriginRelationship->Otu + + + + + +RelatedOriginRelationship->Extract + + + + + +RelatedOriginRelationship->OriginExtract + + + + + +RelatedOriginRelationship->OriginLot + + + + + +RelatedOriginRelationship->OriginOtu + + + + + +RelatedOriginRelationship->OriginRangedLot + + + + + +RelatedOriginRelationship->OriginSpecimen + + + + + +OriginRelationship->Sequence + + + + + + +OriginRelationship->DerivedExtract + + + + + +OriginRelationship->DerivedSequence + + + + + +ExtractorRole->Extractor + + + + + + +VerifierRole->Verifier + + + + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +ProtocolRelationship + + +ProtocolRelationship + + + + + +CollectionObject + + +CollectionObject + + + + + +Otu + + +Otu + + + + + +Sequence + + +Sequence + + + + + +Extract + + + +Extract + + + + + +RelatedOriginRelationship + + +RelatedOriginRelationship + + + + + +OriginRelationship + + +OriginRelationship + + + + + +DerivedExtract + + +DerivedExtract + + + + + +DerivedSequence + + +DerivedSequence + + + + + +ExtractorRole + + +ExtractorRole + + + + + +Extractor + + +Extractor + + + + + +OriginExtract + + +OriginExtract + + + + + +OriginLot + + +OriginLot + + + + + +OriginOtu + + +OriginOtu + + + + + +OriginRangedLot + + +OriginRangedLot + + + + + +OriginSpecimen + + +OriginSpecimen + + + + + +PinboardItem + + +PinboardItem + + + + + +Protocol + + +Protocol + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Repository + + +Repository + + + + + +Updater + + +Updater + + + + + +Container + + +Container + + + + + +ContainerItem + + +ContainerItem + + + + + +ParentContainerItem + + +ParentContainerItem + + + + + diff --git a/images/model/gene_attributes_model_er.svg b/images/model/gene_attributes_model_er.svg new file mode 100644 index 00000000..b008b10c --- /dev/null +++ b/images/model/gene_attributes_model_er.svg @@ -0,0 +1,221 @@ + + + + + + +GeneAttribute + + + +Tag->Keyword + + + + + +GeneAttribute->Identifier + + + + + +GeneAttribute->Tag + + + + + +GeneAttribute->Note + + + + + +GeneAttribute->Descriptor + + + + + +GeneAttribute->Sequence + + + + + +GeneAttribute->PinboardItem + + + + + +GeneAttribute->Role + + + + + +GeneAttribute->VerifierRole + + + + + +GeneAttribute->Creator + + + + + +GeneAttribute->Project + + + + + +GeneAttribute->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Descriptor + + +Descriptor + + + + + +Sequence + + +Sequence + + + + + +GeneAttribute + + + +GeneAttribute + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/geographic_area_types_model_er.svg b/images/model/geographic_area_types_model_er.svg new file mode 100644 index 00000000..36d6b4e4 --- /dev/null +++ b/images/model/geographic_area_types_model_er.svg @@ -0,0 +1,130 @@ + + + + + + +GeographicAreaType + + + +GeographicAreaType->GeographicArea + + + + + +GeographicAreaType->PinboardItem + + + + + +GeographicAreaType->Role + + + + + +GeographicAreaType->VerifierRole + + + + + +GeographicAreaType->Creator + + + + + +GeographicAreaType->Updater + + + + + + +VerifierRole->Verifier + + + + + + +GeographicAreaType + + + +GeographicAreaType + + + + + +GeographicArea + + +GeographicArea + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/geographic_areas_geographic_items_model_er.svg b/images/model/geographic_areas_geographic_items_model_er.svg new file mode 100644 index 00000000..68bf9e0b --- /dev/null +++ b/images/model/geographic_areas_geographic_items_model_er.svg @@ -0,0 +1,114 @@ + + + + + + +GeographicAreasGeographicItem + + + +GeographicAreasGeographicItem->PinboardItem + + + + + +GeographicAreasGeographicItem->Role + + + + + +GeographicAreasGeographicItem->VerifierRole + + + + + +GeographicAreasGeographicItem->GeographicArea + + + + + +GeographicAreasGeographicItem->GeographicItem + + + + + + +VerifierRole->Verifier + + + + + +GeographicAreasGeographicItem + + + +GeographicAreasGeographicItem + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +GeographicArea + + +GeographicArea + + + + + +GeographicItem + + +GeographicItem + + + + + diff --git a/images/model/geographic_areas_model_er.svg b/images/model/geographic_areas_model_er.svg new file mode 100644 index 00000000..0aa984b1 --- /dev/null +++ b/images/model/geographic_areas_model_er.svg @@ -0,0 +1,325 @@ + + + + + + +GeographicArea + + + +GeographicArea->AssertedDistribution + + + + + +GeographicArea->CollectingEvent + + + + + +GeographicArea->AncestorHierarchy + + + + + +GeographicArea->Child + + + + + +GeographicArea->DescendantHierarchy + + + + + +GeographicArea->GeographicAreasGeographicItem + + + + + +GeographicArea->PinboardItem + + + + + +GeographicArea->Role + + + + + +GeographicArea->VerifierRole + + + + + +GeographicArea->Creator + + + + + +GeographicArea->GeographicAreaType + + + + + +GeographicArea->Level0 + + + + + +GeographicArea->Level1 + + + + + +GeographicArea->Level2 + + + + + +GeographicArea->Parent + + + + + +GeographicArea->Updater + + + + + +AncestorHierarchy->SelfAndAncestor + + + + + +DescendantHierarchy->SelfAndDescendant + + + + + +GeographicAreasGeographicItem->GeographicItem + + + + + + +VerifierRole->Verifier + + + + + + +AssertedDistribution + + +AssertedDistribution + + + + + +CollectingEvent + + +CollectingEvent + + + + + +GeographicArea + + + +GeographicArea + + + + + +AncestorHierarchy + + +AncestorHierarchy + + + + + +Child + + +Child + + + + + +DescendantHierarchy + + +DescendantHierarchy + + + + + +GeographicAreasGeographicItem + + +GeographicAreasGeographicItem + + + + + +GeographicItem + + +GeographicItem + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SelfAndAncestor + + +SelfAndAncestor + + + + + +SelfAndDescendant + + +SelfAndDescendant + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +GeographicAreaType + + +GeographicAreaType + + + + + +Level0 + + +Level0 + + + + + +Level1 + + +Level1 + + + + + +Level2 + + +Level2 + + + + + +Parent + + +Parent + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/geographic_items_model_er.svg b/images/model/geographic_items_model_er.svg new file mode 100644 index 00000000..d3a39ec3 --- /dev/null +++ b/images/model/geographic_items_model_er.svg @@ -0,0 +1,280 @@ + + + + + + +GeographicItem + + + +GeographicItem->GeoreferencesThroughErrorGeographicItem + + + + + +GeographicItem->Georeference + + + + + +GeographicItem->GadmGeographicArea + + + + + +GeographicItem->GeographicAreasGeographicItem + + + + + +GeographicItem->NeGeographicArea + + + + + +GeographicItem->PinboardItem + + + + + +GeographicItem->Role + + + + + +GeographicItem->TdwgGeographicArea + + + + + +GeographicItem->VerifierRole + + + + + +GeographicItem->Creator + + + + + +GeographicItem->Updater + + + + + +GeoreferencesThroughErrorGeographicItem->CollectingEventsThroughGeoreferenceErrorGeographicItem + + + + + +Georeference->CollectingEventsThroughGeoreference + + + + + +GeographicArea->GeographicAreaType + + + + + +GeographicArea->ParentGeographicArea + + + + + +GeographicAreasGeographicItem->GeographicArea + + + + + + +VerifierRole->Verifier + + + + + + +GeographicItem + + + +GeographicItem + + + + + +GeoreferencesThroughErrorGeographicItem + + +GeoreferencesThroughErrorGeographicItem + + + + + +CollectingEventsThroughGeoreferenceErrorGeographicItem + + +CollectingEventsThroughGeoreferenceErrorGeographicItem + + + + + +Georeference + + +Georeference + + + + + +CollectingEventsThroughGeoreference + + +CollectingEventsThroughGeoreference + + + + + +GadmGeographicArea + + +GadmGeographicArea + + + + + +GeographicArea + + +GeographicArea + + + + + +GeographicAreaType + + +GeographicAreaType + + + + + +GeographicAreasGeographicItem + + +GeographicAreasGeographicItem + + + + + +NeGeographicArea + + +NeGeographicArea + + + + + +ParentGeographicArea + + +ParentGeographicArea + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +TdwgGeographicArea + + +TdwgGeographicArea + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/georeferences_model_er.svg b/images/model/georeferences_model_er.svg new file mode 100644 index 00000000..ac17030d --- /dev/null +++ b/images/model/georeferences_model_er.svg @@ -0,0 +1,460 @@ + + + + + + +Georeference + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Tag->Keyword + + + + + +ProtocolRelationship->Protocol + + + + + +CollectingEvent->CollectionObject + + + + + + + +Georeference->Citation + + + + + +Georeference->Confidence + + + + + +Georeference->DataAttribute + + + + + +Georeference->Tag + + + + + +Georeference->Note + + + + + +Georeference->ProtocolRelationship + + + + + +Georeference->CollectingEvent + + + + + +Georeference->Source + + + + + + + + +Georeference->GeoreferencerRole + + + + + +Georeference->PinboardItem + + + + + +Georeference->Role + + + + + +Georeference->SubsequentCitation + + + + + +Georeference->VerifierRole + + + + + +Georeference->Creator + + + + + +Georeference->ErrorGeographicItem + + + + + +Georeference->GeographicItem + + + + + +Georeference->Project + + + + + +Georeference->Updater + + + + + +Georeference->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + +GeoreferencerRole->Georeferencer + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +ProtocolRelationship + + +ProtocolRelationship + + + + + +CollectingEvent + + +CollectingEvent + + + + + +CollectionObject + + +CollectionObject + + + + + +Source + + +Source + + + + + +Georeference + + + +Georeference + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +GeoreferencerRole + + +GeoreferencerRole + + + + + +Georeferencer + + +Georeferencer + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Protocol + + +Protocol + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +ErrorGeographicItem + + +ErrorGeographicItem + + + + + +GeographicItem + + +GeographicItem + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/identifiers_model_er.svg b/images/model/identifiers_model_er.svg new file mode 100644 index 00000000..9d2cde7b --- /dev/null +++ b/images/model/identifiers_model_er.svg @@ -0,0 +1,176 @@ + + + + + + +Identifier + + + +Identifier->Label + + + + + +Identifier->PinboardItem + + + + + +Identifier->Role + + + + + +Identifier->VerifierRole + + + + + +Identifier->Creator + + + + + +Identifier->Namespace + + + + + +Identifier->Project + + + + + +Identifier->Updater + + + + + +Identifier->Objects with Identifiers + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + + +Identifier + + + + + +Label + + +Label + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Namespace + + +Namespace + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Identifiers + + +Objects with Identifiers + + + + + diff --git a/images/model/images_model_er.svg b/images/model/images_model_er.svg new file mode 100644 index 00000000..8567cf29 --- /dev/null +++ b/images/model/images_model_er.svg @@ -0,0 +1,586 @@ + + + + + + +Image + + + +Depiction->CollectingEvent + + + + + +Depiction->CollectionObject + + + + + +Depiction->Descriptor + + + + + +Depiction->Observation + + + + + +Depiction->Otu + + + + + +Depiction->TaxonName + + + + + +Depiction->CharacterState + + + + + +Depiction->CollectionObjectObservation + + + + + +Depiction->Content + + + + + +Depiction->Label + + + + + +Depiction->Loan + + + + + +Depiction->Person + + + + + +Depiction->TaxonDetermination + + + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Tag->Keyword + + + + + +ProtocolRelationship->Protocol + + + + + + + +Image->Depiction + + + + + +Image->Citation + + + + + +Image->Identifier + + + + + +Image->Tag + + + + + +Image->Note + + + + + +Image->ProtocolRelationship + + + + + +Image->Attribution + + + + + + + + +Image->Source + + + + + + + + +Image->PinboardItem + + + + + +Image->Role + + + + + +Image->SubsequentCitation + + + + + +Image->VerifierRole + + + + + +Image->Creator + + + + + +Image->Project + + + + + +Image->Updater + + + + + +Image->OriginCitation + + + + + + + + +Image->SledImage + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Depiction + + +Depiction + + + + + +Citation + + +Citation + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +ProtocolRelationship + + +ProtocolRelationship + + + + + +Attribution + + +Attribution + + + + + +CollectingEvent + + +CollectingEvent + + + + + +CollectionObject + + +CollectionObject + + + + + +Descriptor + + +Descriptor + + + + + +Observation + + +Observation + + + + + +Otu + + +Otu + + + + + +Source + + +Source + + + + + +TaxonName + + +TaxonName + + + + + +Image + + + +Image + + + + + +CharacterState + + +CharacterState + + + + + +CitationTopic + + +CitationTopic + + + + + +CollectionObjectObservation + + +CollectionObjectObservation + + + + + +Content + + +Content + + + + + +Keyword + + +Keyword + + + + + +Label + + +Label + + + + + +Loan + + +Loan + + + + + +Person + + +Person + + + + + +PinboardItem + + +PinboardItem + + + + + +Protocol + + +Protocol + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +TaxonDetermination + + +TaxonDetermination + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + +SledImage + + +SledImage + + + + + diff --git a/images/model/import_datasets_model_er.svg b/images/model/import_datasets_model_er.svg new file mode 100644 index 00000000..eff1e72c --- /dev/null +++ b/images/model/import_datasets_model_er.svg @@ -0,0 +1,192 @@ + + + + + + +ImportDataset + + + +ImportDataset->DatasetRecordField + + + + + +ImportDataset->DatasetRecord + + + + + +ImportDataset->OriginRelationship + + + + + +ImportDataset->PinboardItem + + + + + +ImportDataset->RelatedOriginRelationship + + + + + +ImportDataset->Role + + + + + +ImportDataset->VerifierRole + + + + + +ImportDataset->Creator + + + + + +ImportDataset->Project + + + + + +ImportDataset->Updater + + + + + + + +VerifierRole->Verifier + + + + + + + +ImportDataset + + + +ImportDataset + + + + + +DatasetRecordField + + +DatasetRecordField + + + + + +DatasetRecord + + +DatasetRecord + + + + + +OriginRelationship + + +OriginRelationship + + + + + +PinboardItem + + +PinboardItem + + + + + +RelatedOriginRelationship + + +RelatedOriginRelationship + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/labels_model_er.svg b/images/model/labels_model_er.svg new file mode 100644 index 00000000..f784e388 --- /dev/null +++ b/images/model/labels_model_er.svg @@ -0,0 +1,221 @@ + + + + + + +Label + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +Label->Depiction + + + + + +Label->Tag + + + + + +Label->Note + + + + + +Label->PinboardItem + + + + + +Label->Role + + + + + +Label->VerifierRole + + + + + +Label->Creator + + + + + +Label->Project + + + + + +Label->Updater + + + + + +Label->Objects with Labels + + + + + + +VerifierRole->Verifier + + + + + + + +Depiction + + +Depiction + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Label + + + +Label + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Labels + + +Objects with Labels + + + + + diff --git a/images/model/languages_model_er.svg b/images/model/languages_model_er.svg new file mode 100644 index 00000000..573266a4 --- /dev/null +++ b/images/model/languages_model_er.svg @@ -0,0 +1,160 @@ + + + + + + +Language + + + +Language->Source + + + + + +Language->AlternateValueTranslation + + + + + +Language->PinboardItem + + + + + +Language->Role + + + + + +Language->Serial + + + + + +Language->VerifierRole + + + + + +Language->Creator + + + + + +Language->Updater + + + + + + +VerifierRole->Verifier + + + + + + +Source + + +Source + + + + + +Language + + + +Language + + + + + +AlternateValueTranslation + + +AlternateValueTranslation + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +Serial + + +Serial + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/loan_items_model_er.svg b/images/model/loan_items_model_er.svg new file mode 100644 index 00000000..6080dd94 --- /dev/null +++ b/images/model/loan_items_model_er.svg @@ -0,0 +1,221 @@ + + + + + + +LoanItem + + + +Tag->Keyword + + + + + +LoanItem->DataAttribute + + + + + +LoanItem->Tag + + + + + +LoanItem->Note + + + + + +LoanItem->PinboardItem + + + + + +LoanItem->Role + + + + + +LoanItem->VerifierRole + + + + + +LoanItem->Creator + + + + + +LoanItem->Loan + + + + + +LoanItem->Project + + + + + +LoanItem->Updater + + + + + +LoanItem->Objects with Loan items + + + + + + +VerifierRole->Verifier + + + + + + + +DataAttribute + + +DataAttribute + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +LoanItem + + + +LoanItem + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Loan + + +Loan + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Loan items + + +Objects with Loan items + + + + + diff --git a/images/model/loans_model_er.svg b/images/model/loans_model_er.svg new file mode 100644 index 00000000..5df87f58 --- /dev/null +++ b/images/model/loans_model_er.svg @@ -0,0 +1,372 @@ + + + + + + +Loan + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +Loan->DataAttribute + + + + + +Loan->Depiction + + + + + +Loan->Identifier + + + + + +Loan->Tag + + + + + +Loan->Note + + + + + +Loan->Documentation + + + + + +Loan->LoanItem + + + + + +Loan->LoanRecipientRole + + + + + +Loan->LoanSupervisorRole + + + + + +Loan->Role + + + + + +Loan->PinboardItem + + + + + +Loan->VerifierRole + + + + + +Loan->Version + + + + + +Loan->Creator + + + + + +Loan->Project + + + + + +Loan->Updater + + + + + +Documentation->Document + + + + + +LoanRecipientRole->LoanRecipient + + + + + +LoanSupervisorRole->LoanSupervisor + + + + + +Role->Person + + + + + + +VerifierRole->Verifier + + + + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Loan + + + +Loan + + + + + +Documentation + + +Documentation + + + + + +Document + + +Document + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +LoanItem + + +LoanItem + + + + + +LoanRecipientRole + + +LoanRecipientRole + + + + + +LoanRecipient + + +LoanRecipient + + + + + +LoanSupervisorRole + + +LoanSupervisorRole + + + + + +LoanSupervisor + + +LoanSupervisor + + + + + +Role + + +Role + + + + + +Person + + +Person + + + + + +PinboardItem + + +PinboardItem + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/namespaces_model_er.svg b/images/model/namespaces_model_er.svg new file mode 100644 index 00000000..0a458b29 --- /dev/null +++ b/images/model/namespaces_model_er.svg @@ -0,0 +1,146 @@ + + + + + + +Namespace + + + +Namespace->Identifier + + + + + +Namespace->PinboardItem + + + + + +Namespace->Role + + + + + +Namespace->VerifierRole + + + + + +Namespace->Version + + + + + +Namespace->Creator + + + + + +Namespace->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + +Identifier + + + + + +Namespace + + + +Namespace + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/notes_model_er.svg b/images/model/notes_model_er.svg new file mode 100644 index 00000000..e60a90cf --- /dev/null +++ b/images/model/notes_model_er.svg @@ -0,0 +1,176 @@ + + + + + + +Note + + + +Note->Tag + + + + + +Note->PinboardItem + + + + + +Note->Role + + + + + +Note->VerifierRole + + + + + +Note->Creator + + + + + +Note->Project + + + + + +Note->Updater + + + + + +Note->Objects with Notes + + + + + +Tag->Keyword + + + + + + +VerifierRole->Verifier + + + + + + + +Note + + + +Note + + + + + +Tag + + +Tag + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Notes + + +Objects with Notes + + + + + diff --git a/images/model/observation_matrices_model_er.svg b/images/model/observation_matrices_model_er.svg new file mode 100644 index 00000000..570c34a5 --- /dev/null +++ b/images/model/observation_matrices_model_er.svg @@ -0,0 +1,433 @@ + + + + + + +ObservationMatrix + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Tag->Keyword + + + + + + + +ObservationMatrix->Citation + + + + + +ObservationMatrix->DataAttribute + + + + + +ObservationMatrix->Identifier + + + + + +ObservationMatrix->Tag + + + + + +ObservationMatrix->Note + + + + + +ObservationMatrix->Source + + + + + + + + +ObservationMatrix->ObservationMatrixRow + + + + + +ObservationMatrix->ObservationMatrixColumn + + + + + +ObservationMatrix->ObservationMatrixColumnItem + + + + + +ObservationMatrix->ObservationMatrixRowItem + + + + + +ObservationMatrix->PinboardItem + + + + + +ObservationMatrix->Role + + + + + +ObservationMatrix->SubsequentCitation + + + + + +ObservationMatrix->VerifierRole + + + + + +ObservationMatrix->Creator + + + + + +ObservationMatrix->Project + + + + + +ObservationMatrix->Updater + + + + + +ObservationMatrix->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + +ObservationMatrixRow->CollectionObject + + + + + +ObservationMatrixRow->Otu + + + + + + +ObservationMatrixColumn->Descriptor + + + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +CollectionObject + + +CollectionObject + + + + + +Descriptor + + +Descriptor + + + + + +Otu + + +Otu + + + + + +Source + + +Source + + + + + +ObservationMatrix + + + +ObservationMatrix + + + + + +CitationTopic + + +CitationTopic + + + + + +ObservationMatrixRow + + +ObservationMatrixRow + + + + + +ObservationMatrixColumn + + +ObservationMatrixColumn + + + + + +Keyword + + +Keyword + + + + + +ObservationMatrixColumnItem + + +ObservationMatrixColumnItem + + + + + +ObservationMatrixRowItem + + +ObservationMatrixRowItem + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/observation_matrix_column_items_model_er.svg b/images/model/observation_matrix_column_items_model_er.svg new file mode 100644 index 00000000..85df2047 --- /dev/null +++ b/images/model/observation_matrix_column_items_model_er.svg @@ -0,0 +1,206 @@ + + + + + + +ObservationMatrixColumnItem + + + +Tag->Keyword + + + + + +ObservationMatrixColumnItem->Identifier + + + + + +ObservationMatrixColumnItem->Tag + + + + + +ObservationMatrixColumnItem->Note + + + + + +ObservationMatrixColumnItem->PinboardItem + + + + + +ObservationMatrixColumnItem->Role + + + + + +ObservationMatrixColumnItem->VerifierRole + + + + + +ObservationMatrixColumnItem->Creator + + + + + +ObservationMatrixColumnItem->ObservationMatrix + + + + + +ObservationMatrixColumnItem->Project + + + + + +ObservationMatrixColumnItem->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +ObservationMatrixColumnItem + + + +ObservationMatrixColumnItem + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/observation_matrix_columns_model_er.svg b/images/model/observation_matrix_columns_model_er.svg new file mode 100644 index 00000000..65653d31 --- /dev/null +++ b/images/model/observation_matrix_columns_model_er.svg @@ -0,0 +1,222 @@ + + + + + + +ObservationMatrixColumn + + + +Tag->Keyword + + + + + + +ObservationMatrixColumn->Tag + + + + + +ObservationMatrixColumn->Note + + + + + +ObservationMatrixColumn->Observation + + + + + +ObservationMatrixColumn->Descriptor + + + + + +ObservationMatrixColumn->PinboardItem + + + + + +ObservationMatrixColumn->Role + + + + + +ObservationMatrixColumn->VerifierRole + + + + + +ObservationMatrixColumn->Creator + + + + + +ObservationMatrixColumn->ObservationMatrix + + + + + +ObservationMatrixColumn->Project + + + + + +ObservationMatrixColumn->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Observation + + +Observation + + + + + +Descriptor + + +Descriptor + + + + + +ObservationMatrixColumn + + + +ObservationMatrixColumn + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/observation_matrix_row_items_model_er.svg b/images/model/observation_matrix_row_items_model_er.svg new file mode 100644 index 00000000..c2d15c3d --- /dev/null +++ b/images/model/observation_matrix_row_items_model_er.svg @@ -0,0 +1,325 @@ + + + + + + +ObservationMatrixRowItem + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Tag->Keyword + + + + + + + +ObservationMatrixRowItem->Citation + + + + + +ObservationMatrixRowItem->Identifier + + + + + +ObservationMatrixRowItem->Tag + + + + + +ObservationMatrixRowItem->Note + + + + + +ObservationMatrixRowItem->Source + + + + + + + + +ObservationMatrixRowItem->PinboardItem + + + + + +ObservationMatrixRowItem->Role + + + + + +ObservationMatrixRowItem->SubsequentCitation + + + + + +ObservationMatrixRowItem->VerifierRole + + + + + +ObservationMatrixRowItem->Creator + + + + + +ObservationMatrixRowItem->ObservationMatrix + + + + + +ObservationMatrixRowItem->Project + + + + + +ObservationMatrixRowItem->Updater + + + + + +ObservationMatrixRowItem->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +ObservationMatrixRowItem + + + +ObservationMatrixRowItem + + + + + +CitationTopic + + +CitationTopic + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/observation_matrix_rows_model_er.svg b/images/model/observation_matrix_rows_model_er.svg new file mode 100644 index 00000000..12185fa8 --- /dev/null +++ b/images/model/observation_matrix_rows_model_er.svg @@ -0,0 +1,355 @@ + + + + + + +ObservationMatrixRow + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Tag->Keyword + + + + + + + +ObservationMatrixRow->Citation + + + + + +ObservationMatrixRow->Identifier + + + + + +ObservationMatrixRow->Tag + + + + + +ObservationMatrixRow->Note + + + + + +ObservationMatrixRow->Source + + + + + + + + +ObservationMatrixRow->CollectionObject + + + + + +ObservationMatrixRow->Otu + + + + + +ObservationMatrixRow->PinboardItem + + + + + +ObservationMatrixRow->Role + + + + + +ObservationMatrixRow->SubsequentCitation + + + + + +ObservationMatrixRow->VerifierRole + + + + + +ObservationMatrixRow->Creator + + + + + +ObservationMatrixRow->ObservationMatrix + + + + + +ObservationMatrixRow->Project + + + + + +ObservationMatrixRow->Updater + + + + + +ObservationMatrixRow->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +CollectionObject + + +CollectionObject + + + + + +Otu + + +Otu + + + + + +ObservationMatrixRow + + + +ObservationMatrixRow + + + + + +CitationTopic + + +CitationTopic + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/observations_model_er.svg b/images/model/observations_model_er.svg new file mode 100644 index 00000000..102a5119 --- /dev/null +++ b/images/model/observations_model_er.svg @@ -0,0 +1,445 @@ + + + + + + +Observation + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +Observation->Citation + + + + + +Observation->Confidence + + + + + +Observation->DataAttribute + + + + + +Observation->Depiction + + + + + +Observation->Identifier + + + + + +Observation->Tag + + + + + +Observation->Note + + + + + +Observation->Source + + + + + + + + +Observation->CollectionObject + + + + + +Observation->Descriptor + + + + + +Observation->Otu + + + + + +Observation->PinboardItem + + + + + +Observation->Role + + + + + +Observation->SubsequentCitation + + + + + +Observation->VerifierRole + + + + + +Observation->CharacterState + + + + + +Observation->Creator + + + + + +Observation->Project + + + + + +Observation->Updater + + + + + +Observation->OriginCitation + + + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Observation + + + +Observation + + + + + +Source + + +Source + + + + + +CollectionObject + + +CollectionObject + + + + + +Descriptor + + +Descriptor + + + + + +Otu + + +Otu + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +CharacterState + + +CharacterState + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/organizations_model_er.svg b/images/model/organizations_model_er.svg new file mode 100644 index 00000000..23748e15 --- /dev/null +++ b/images/model/organizations_model_er.svg @@ -0,0 +1,205 @@ + + + + + + +Organization + + + +Organization->Identifier + + + + + +Organization->Note + + + + + +Organization->PinboardItem + + + + + +Organization->Role + + + + + +Organization->VerifierRole + + + + + +Organization->AreaServed + + + + + +Organization->Creator + + + + + +Organization->Department + + + + + +Organization->ParentOrganization + + + + + +Organization->SameA + + + + + +Organization->Updater + + + + + + +VerifierRole->Verifier + + + + + + +Identifier + + +Identifier + + + + + +Note + + +Note + + + + + +Organization + + + +Organization + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +AreaServed + + +AreaServed + + + + + +Creator + + +Creator + + + + + +Department + + +Department + + + + + +ParentOrganization + + +ParentOrganization + + + + + +SameA + + +SameA + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/origin_relationships_model_er.svg b/images/model/origin_relationships_model_er.svg new file mode 100644 index 00000000..4a8bb066 --- /dev/null +++ b/images/model/origin_relationships_model_er.svg @@ -0,0 +1,146 @@ + + + + + + +OriginRelationship + + + +OriginRelationship->PinboardItem + + + + + +OriginRelationship->Role + + + + + +OriginRelationship->VerifierRole + + + + + +OriginRelationship->Creator + + + + + +OriginRelationship->Project + + + + + +OriginRelationship->Updater + + + + + +OriginRelationship->Objects with Origin relationships + + + + + + +VerifierRole->Verifier + + + + + + + +OriginRelationship + + + +OriginRelationship + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Origin relationships + + +Objects with Origin relationships + + + + + diff --git a/images/model/otu_page_layout_sections_model_er.svg b/images/model/otu_page_layout_sections_model_er.svg new file mode 100644 index 00000000..9c1c8a9e --- /dev/null +++ b/images/model/otu_page_layout_sections_model_er.svg @@ -0,0 +1,161 @@ + + + + + + +OtuPageLayoutSection + + + +OtuPageLayoutSection->PinboardItem + + + + + +OtuPageLayoutSection->Role + + + + + +OtuPageLayoutSection->VerifierRole + + + + + +OtuPageLayoutSection->Creator + + + + + +OtuPageLayoutSection->OtuPageLayout + + + + + +OtuPageLayoutSection->Project + + + + + +OtuPageLayoutSection->Topic + + + + + +OtuPageLayoutSection->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +OtuPageLayoutSection + + + +OtuPageLayoutSection + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +OtuPageLayout + + +OtuPageLayout + + + + + +Project + + +Project + + + + + +Topic + + +Topic + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/otu_page_layouts_model_er.svg b/images/model/otu_page_layouts_model_er.svg new file mode 100644 index 00000000..537bdb1b --- /dev/null +++ b/images/model/otu_page_layouts_model_er.svg @@ -0,0 +1,176 @@ + + + + + + +OtuPageLayout + + + +OtuPageLayout->OtuPageLayoutSection + + + + + +OtuPageLayout->PinboardItem + + + + + +OtuPageLayout->Role + + + + + +OtuPageLayout->StandardSection + + + + + +OtuPageLayout->VerifierRole + + + + + +OtuPageLayout->Creator + + + + + +OtuPageLayout->Project + + + + + +OtuPageLayout->Updater + + + + + + +StandardSection->Topic + + + + + +VerifierRole->Verifier + + + + + + + +OtuPageLayout + + + +OtuPageLayout + + + + + +OtuPageLayoutSection + + +OtuPageLayoutSection + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +StandardSection + + +StandardSection + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/otus_model_er.svg b/images/model/otus_model_er.svg new file mode 100644 index 00000000..0b06c797 --- /dev/null +++ b/images/model/otus_model_er.svg @@ -0,0 +1,819 @@ + + + + + + +Otu + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +Otu->Citation + + + + + +Otu->Confidence + + + + + +Otu->DataAttribute + + + + + +Otu->Depiction + + + + + +Otu->Identifier + + + + + +Otu->Tag + + + + + +Otu->Note + + + + + +Otu->AssertedDistribution + + + + + +Otu->BiologicalAssociation + + + + + +Otu->Observation + + + + + +Otu->Source + + + + + + + + +Otu->TaxonName + + + + + +Otu->TaxonDetermination + + + + + +Otu->CollectionProfile + + + + + +Otu->CommonName + + + + + +Otu->Content + + + + + +Otu->OriginRelationship + + + + + +Otu->LoanItem + + + + + +Otu->Loan + + + + + + + + +Otu->ObservationMatrixRow + + + + + +Otu->ObservationMatrixRowItem + + + + + +Otu->PinboardItem + + + + + +Otu->RelatedBiologicalAssociation + + + + + +Otu->RelatedOriginRelationship + + + + + +Otu->Role + + + + + +Otu->SubsequentCitation + + + + + +Otu->VerifierRole + + + + + +Otu->Version + + + + + +Otu->Creator + + + + + +Otu->Project + + + + + +Otu->Updater + + + + + +Otu->OriginCitation + + + + + + + + +AssertedDistribution->GeographicAreasFromAssertedDistribution + + + + + + +CollectionObject->CollectingEvent + + + + + +CollectionObject->Extract + + + + + +CollectingEvent->GeographicAreasFromCollectingEvent + + + + + +CollectingEvent->Georeference + + + + + +Observation->Descriptor + + + + + + + + +CitationTopic->Topic + + + + + +TaxonDetermination->CollectionObject + + + + + +Content->ContentTopic + + + + + +OriginRelationship->DerivedExtract + + + + + +OriginRelationship->DerivedSequence + + + + + + +Extract->Sequence + + + + + +LoanItem->Loan + + + + + +ObservationMatrixRow->ObservationMatrix + + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Otu + + + +Otu + + + + + +AssertedDistribution + + +AssertedDistribution + + + + + +BiologicalAssociation + + +BiologicalAssociation + + + + + +CollectionObject + + +CollectionObject + + + + + +CollectingEvent + + +CollectingEvent + + + + + +Observation + + +Observation + + + + + +Descriptor + + +Descriptor + + + + + +Sequence + + +Sequence + + + + + +Source + + +Source + + + + + +TaxonName + + +TaxonName + + + + + +CitationTopic + + +CitationTopic + + + + + +TaxonDetermination + + +TaxonDetermination + + + + + +CollectionProfile + + +CollectionProfile + + + + + +CommonName + + +CommonName + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Content + + +Content + + + + + +ContentTopic + + +ContentTopic + + + + + +OriginRelationship + + +OriginRelationship + + + + + +DerivedExtract + + +DerivedExtract + + + + + +DerivedSequence + + +DerivedSequence + + + + + +Extract + + +Extract + + + + + +GeographicAreasFromAssertedDistribution + + +GeographicAreasFromAssertedDistribution + + + + + +GeographicAreasFromCollectingEvent + + +GeographicAreasFromCollectingEvent + + + + + +Georeference + + +Georeference + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +LoanItem + + +LoanItem + + + + + +Loan + + +Loan + + + + + +ObservationMatrixRow + + +ObservationMatrixRow + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +ObservationMatrixRowItem + + +ObservationMatrixRowItem + + + + + +PinboardItem + + +PinboardItem + + + + + +RelatedBiologicalAssociation + + +RelatedBiologicalAssociation + + + + + +RelatedOriginRelationship + + +RelatedOriginRelationship + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/people_model_er.svg b/images/model/people_model_er.svg new file mode 100644 index 00000000..323d24c1 --- /dev/null +++ b/images/model/people_model_er.svg @@ -0,0 +1,570 @@ + + + + + + +Person + + + +AlternateValue->AlternateValueLanguage + + + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +CollectingEvent->CollectionObject + + + + + +CollectionObject->DwcOccurrence + + + + + +Person->AlternateValue + + + + + +Person->DataAttribute + + + + + +Person->Depiction + + + + + +Person->Identifier + + + + + +Person->Tag + + + + + +Person->Note + + + + + +Person->AuthorRole + + + + + +Person->TaxonNameAuthorRole + + + + + +Person->CollectorRole + + + + + +Person->DeterminerRole + + + + + +Person->EditorRole + + + + + +Person->GeoreferencerRole + + + + + +Person->SourceRole + + + + + +Person->OriginRelationship + + + + + +Person->PinboardItem + + + + + +Person->RelatedOriginRelationship + + + + + +Person->Role + + + + + +Person->VerifierRole + + + + + +Person->Version + + + + + +Person->Creator + + + + + +Person->Updater + + + + + +Person->User + + + + + + + + +AuthorRole->AuthoredSource + + + + + +TaxonNameAuthorRole->AuthoredTaxonName + + + + + +CollectorRole->CollectingEvent + + + + + +DeterminerRole->TaxonDetermination + + + + + +EditorRole->EditedSource + + + + + +GeoreferencerRole->Georeference + + + + + +SourceRole->HumanSource + + + + + + +Role->Source + + + + + + +VerifierRole->Verifier + + + + + + + +AlternateValue + + +AlternateValue + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +CollectingEvent + + +CollectingEvent + + + + + +CollectionObject + + +CollectionObject + + + + + +Source + + +Source + + + + + +Person + + + +Person + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +AuthorRole + + +AuthorRole + + + + + +AuthoredSource + + +AuthoredSource + + + + + +TaxonNameAuthorRole + + +TaxonNameAuthorRole + + + + + +AuthoredTaxonName + + +AuthoredTaxonName + + + + + +CollectorRole + + +CollectorRole + + + + + +DeterminerRole + + +DeterminerRole + + + + + +DwcOccurrence + + +DwcOccurrence + + + + + +EditorRole + + +EditorRole + + + + + +EditedSource + + +EditedSource + + + + + +GeoreferencerRole + + +GeoreferencerRole + + + + + +Georeference + + +Georeference + + + + + +SourceRole + + +SourceRole + + + + + +HumanSource + + +HumanSource + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +OriginRelationship + + +OriginRelationship + + + + + +PinboardItem + + +PinboardItem + + + + + +RelatedOriginRelationship + + +RelatedOriginRelationship + + + + + +Role + + +Role + + + + + +TaxonDetermination + + +TaxonDetermination + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Updater + + +Updater + + + + + +User + + +User + + + + + diff --git a/images/model/preparation_types_model_er.svg b/images/model/preparation_types_model_er.svg new file mode 100644 index 00000000..baa06601 --- /dev/null +++ b/images/model/preparation_types_model_er.svg @@ -0,0 +1,176 @@ + + + + + + +PreparationType + + + +Tag->Keyword + + + + + +PreparationType->Tag + + + + + +PreparationType->CollectionObject + + + + + +PreparationType->PinboardItem + + + + + +PreparationType->Role + + + + + +PreparationType->VerifierRole + + + + + +PreparationType->Version + + + + + +PreparationType->Creator + + + + + +PreparationType->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Tag + + +Tag + + + + + +CollectionObject + + +CollectionObject + + + + + +PreparationType + + + +PreparationType + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/project_members_model_er.svg b/images/model/project_members_model_er.svg new file mode 100644 index 00000000..4ea32188 --- /dev/null +++ b/images/model/project_members_model_er.svg @@ -0,0 +1,146 @@ + + + + + + +ProjectMember + + + +ProjectMember->PinboardItem + + + + + +ProjectMember->Role + + + + + +ProjectMember->VerifierRole + + + + + +ProjectMember->Creator + + + + + +ProjectMember->Project + + + + + +ProjectMember->Updater + + + + + +ProjectMember->User + + + + + + +VerifierRole->Verifier + + + + + + + +ProjectMember + + + +ProjectMember + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +User + + +User + + + + + diff --git a/images/model/project_sources_model_er.svg b/images/model/project_sources_model_er.svg new file mode 100644 index 00000000..09055a2e --- /dev/null +++ b/images/model/project_sources_model_er.svg @@ -0,0 +1,146 @@ + + + + + + +ProjectSource + + + +ProjectSource->Source + + + + + +ProjectSource->PinboardItem + + + + + +ProjectSource->Role + + + + + +ProjectSource->VerifierRole + + + + + +ProjectSource->Creator + + + + + +ProjectSource->Project + + + + + +ProjectSource->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Source + + +Source + + + + + +ProjectSource + + + +ProjectSource + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/protocol_relationships_model_er.svg b/images/model/protocol_relationships_model_er.svg new file mode 100644 index 00000000..ac840db0 --- /dev/null +++ b/images/model/protocol_relationships_model_er.svg @@ -0,0 +1,161 @@ + + + + + + +ProtocolRelationship + + + +ProtocolRelationship->PinboardItem + + + + + +ProtocolRelationship->Role + + + + + +ProtocolRelationship->VerifierRole + + + + + +ProtocolRelationship->Creator + + + + + +ProtocolRelationship->Project + + + + + +ProtocolRelationship->Protocol + + + + + +ProtocolRelationship->Updater + + + + + +ProtocolRelationship->Objects with Protocol relationships + + + + + + +VerifierRole->Verifier + + + + + + + +ProtocolRelationship + + + +ProtocolRelationship + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Protocol + + +Protocol + + + + + +Updater + + +Updater + + + + + +Objects with Protocol relationships + + +Objects with Protocol relationships + + + + + diff --git a/images/model/protocols_model_er.svg b/images/model/protocols_model_er.svg new file mode 100644 index 00000000..2702eca2 --- /dev/null +++ b/images/model/protocols_model_er.svg @@ -0,0 +1,295 @@ + + + + + + +Protocol + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + + + +Protocol->Citation + + + + + +Protocol->ProtocolRelationship + + + + + +Protocol->Source + + + + + + + + +Protocol->Documentation + + + + + +Protocol->PinboardItem + + + + + +Protocol->Role + + + + + +Protocol->SubsequentCitation + + + + + +Protocol->VerifierRole + + + + + +Protocol->Creator + + + + + +Protocol->Project + + + + + +Protocol->Updater + + + + + +Protocol->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + +Documentation->Document + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +ProtocolRelationship + + +ProtocolRelationship + + + + + +Source + + +Source + + + + + +Protocol + + + +Protocol + + + + + +CitationTopic + + +CitationTopic + + + + + +Documentation + + +Documentation + + + + + +Document + + +Document + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/ranged_lot_categories_model_er.svg b/images/model/ranged_lot_categories_model_er.svg new file mode 100644 index 00000000..608ebe03 --- /dev/null +++ b/images/model/ranged_lot_categories_model_er.svg @@ -0,0 +1,146 @@ + + + + + + +RangedLotCategory + + + +RangedLotCategory->PinboardItem + + + + + +RangedLotCategory->RangedLot + + + + + +RangedLotCategory->Role + + + + + +RangedLotCategory->VerifierRole + + + + + +RangedLotCategory->Creator + + + + + +RangedLotCategory->Project + + + + + +RangedLotCategory->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +RangedLotCategory + + + +RangedLotCategory + + + + + +PinboardItem + + +PinboardItem + + + + + +RangedLot + + +RangedLot + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/repositories_model_er.svg b/images/model/repositories_model_er.svg new file mode 100644 index 00000000..e6f8d27b --- /dev/null +++ b/images/model/repositories_model_er.svg @@ -0,0 +1,280 @@ + + + + + + +Repository + + + +AlternateValue->AlternateValueLanguage + + + + + +Confidence->ConfidenceLevel + + + + + +Tag->Keyword + + + + + +Repository->AlternateValue + + + + + +Repository->Confidence + + + + + +Repository->DataAttribute + + + + + +Repository->Identifier + + + + + +Repository->Tag + + + + + +Repository->Note + + + + + +Repository->CollectionObject + + + + + +Repository->Extract + + + + + +Repository->PinboardItem + + + + + +Repository->Role + + + + + +Repository->VerifierRole + + + + + +Repository->Creator + + + + + +Repository->Updater + + + + + + +VerifierRole->Verifier + + + + + + +AlternateValue + + +AlternateValue + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +CollectionObject + + +CollectionObject + + + + + +Repository + + + +Repository + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Extract + + +Extract + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/roles_model_er.svg b/images/model/roles_model_er.svg new file mode 100644 index 00000000..3b934be6 --- /dev/null +++ b/images/model/roles_model_er.svg @@ -0,0 +1,151 @@ + + + + + + +Role + + + +Role->Role + + + + + +Role->PinboardItem + + + + + +Role->VerifierRole + + + + + + +Role->Creator + + + + + +Role->Organization + + + + + +Role->Person + + + + + +Role->Updater + + + + + +Role->Objects with Roles + + + + + +VerifierRole->Verifier + + + + + + +Role + + + +Role + + + + + +PinboardItem + + +PinboardItem + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Organization + + +Organization + + + + + +Person + + +Person + + + + + +Updater + + +Updater + + + + + +Objects with Roles + + +Objects with Roles + + + + + diff --git a/images/model/sequence_relationships_model_er.svg b/images/model/sequence_relationships_model_er.svg new file mode 100644 index 00000000..5f9c512d --- /dev/null +++ b/images/model/sequence_relationships_model_er.svg @@ -0,0 +1,221 @@ + + + + + + +SequenceRelationship + + + +Tag->Keyword + + + + + +SequenceRelationship->Identifier + + + + + +SequenceRelationship->Tag + + + + + +SequenceRelationship->Note + + + + + +SequenceRelationship->PinboardItem + + + + + +SequenceRelationship->Role + + + + + +SequenceRelationship->VerifierRole + + + + + +SequenceRelationship->Creator + + + + + +SequenceRelationship->ObjectSequence + + + + + +SequenceRelationship->Project + + + + + +SequenceRelationship->SubjectSequence + + + + + +SequenceRelationship->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +SequenceRelationship + + + +SequenceRelationship + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +ObjectSequence + + +ObjectSequence + + + + + +Project + + +Project + + + + + +SubjectSequence + + +SubjectSequence + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/sequences_model_er.svg b/images/model/sequences_model_er.svg new file mode 100644 index 00000000..5e65ec57 --- /dev/null +++ b/images/model/sequences_model_er.svg @@ -0,0 +1,649 @@ + + + + + + +Sequence + + + +AlternateValue->AlternateValueLanguage + + + + + +Confidence->ConfidenceLevel + + + + + +Tag->Keyword + + + + + +ProtocolRelationship->Protocol + + + + + +Sequence->AlternateValue + + + + + +Sequence->Confidence + + + + + +Sequence->DataAttribute + + + + + +Sequence->Identifier + + + + + +Sequence->Tag + + + + + +Sequence->Note + + + + + +Sequence->ProtocolRelationship + + + + + +Sequence->BlastQuerySequenceRelationship + + + + + +Sequence->OriginRelationship + + + + + +Sequence->Documentation + + + + + +Sequence->ForwardPrimerRelationship + + + + + +Sequence->GeneAttribute + + + + + +Sequence->RelatedOriginRelationship + + + + + +Sequence->PinboardItem + + + + + +Sequence->ReferenceSequenceForAssemblyRelationship + + + + + +Sequence->RelatedSequenceRelationship + + + + + +Sequence->ReversePrimerRelationship + + + + + +Sequence->Role + + + + + +Sequence->SequenceRelationship + + + + + +Sequence->VerifierRole + + + + + +Sequence->Version + + + + + +Sequence->Creator + + + + + +Sequence->Project + + + + + +Sequence->Updater + + + + + +BlastQuerySequenceRelationship->BlastQuerySequenceSequence + + + + + +OriginRelationship->DerivedSequence + + + + + + +Documentation->Document + + + + + +ForwardPrimerRelationship->ForwardPrimerSequence + + + + + +RelatedOriginRelationship->OriginExtract + + + + + +RelatedOriginRelationship->OriginLot + + + + + +RelatedOriginRelationship->OriginRangedLot + + + + + +RelatedOriginRelationship->OriginSequence + + + + + +RelatedOriginRelationship->OriginSpecimen + + + + + +ReferenceSequenceForAssemblyRelationship->ReferenceSequenceForAssemblySequence + + + + + +RelatedSequenceRelationship->RelatedSequence + + + + + +ReversePrimerRelationship->ReversePrimerSequence + + + + + + +SequenceRelationship->Sequence + + + + + +VerifierRole->Verifier + + + + + + + + +AlternateValue + + +AlternateValue + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +ProtocolRelationship + + +ProtocolRelationship + + + + + +Sequence + + + +Sequence + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +BlastQuerySequenceRelationship + + +BlastQuerySequenceRelationship + + + + + +BlastQuerySequenceSequence + + +BlastQuerySequenceSequence + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +OriginRelationship + + +OriginRelationship + + + + + +DerivedSequence + + +DerivedSequence + + + + + +Documentation + + +Documentation + + + + + +Document + + +Document + + + + + +ForwardPrimerRelationship + + +ForwardPrimerRelationship + + + + + +ForwardPrimerSequence + + +ForwardPrimerSequence + + + + + +GeneAttribute + + +GeneAttribute + + + + + +Keyword + + +Keyword + + + + + +RelatedOriginRelationship + + +RelatedOriginRelationship + + + + + +OriginExtract + + +OriginExtract + + + + + +OriginLot + + +OriginLot + + + + + +OriginRangedLot + + +OriginRangedLot + + + + + +OriginSequence + + +OriginSequence + + + + + +OriginSpecimen + + +OriginSpecimen + + + + + +PinboardItem + + +PinboardItem + + + + + +Protocol + + +Protocol + + + + + +ReferenceSequenceForAssemblyRelationship + + +ReferenceSequenceForAssemblyRelationship + + + + + +ReferenceSequenceForAssemblySequence + + +ReferenceSequenceForAssemblySequence + + + + + +RelatedSequenceRelationship + + +RelatedSequenceRelationship + + + + + +RelatedSequence + + +RelatedSequence + + + + + +ReversePrimerRelationship + + +ReversePrimerRelationship + + + + + +ReversePrimerSequence + + +ReversePrimerSequence + + + + + +Role + + +Role + + + + + +SequenceRelationship + + +SequenceRelationship + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/serial_chronologies_model_er.svg b/images/model/serial_chronologies_model_er.svg new file mode 100644 index 00000000..c2210606 --- /dev/null +++ b/images/model/serial_chronologies_model_er.svg @@ -0,0 +1,145 @@ + + + + + + +SerialChronology + + + +SerialChronology->PinboardItem + + + + + +SerialChronology->Role + + + + + +SerialChronology->VerifierRole + + + + + +SerialChronology->Creator + + + + + +SerialChronology->PrecedingSerial + + + + + +SerialChronology->SucceedingSerial + + + + + +SerialChronology->Updater + + + + + + +VerifierRole->Verifier + + + + + + +SerialChronology + + + +SerialChronology + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +PrecedingSerial + + +PrecedingSerial + + + + + +SucceedingSerial + + +SucceedingSerial + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/serials_model_er.svg b/images/model/serials_model_er.svg new file mode 100644 index 00000000..ee9e9a6b --- /dev/null +++ b/images/model/serials_model_er.svg @@ -0,0 +1,356 @@ + + + + + + +Serial + + + +AlternateValue->AlternateValueLanguage + + + + + +Tag->Keyword + + + + + +Serial->AlternateValue + + + + + +Serial->DataAttribute + + + + + +Serial->Identifier + + + + + +Serial->Tag + + + + + +Serial->Note + + + + + +Serial->Source + + + + + +Serial->SucceedingSerialChronology + + + + + +Serial->PrecedingSerialChronology + + + + + +Serial->PinboardItem + + + + + +Serial->Role + + + + + +Serial->Translation + + + + + +Serial->VerifierRole + + + + + +Serial->Version + + + + + +Serial->Creator + + + + + +Serial->Language + + + + + +Serial->TranslatedFromSerial + + + + + +Serial->Updater + + + + + +SucceedingSerialChronology->ImmediatelyPrecedingSerial + + + + + +PrecedingSerialChronology->ImmediatelySucceedingSerial + + + + + + +VerifierRole->Verifier + + + + + + + +AlternateValue + + +AlternateValue + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +Serial + + + +Serial + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +SucceedingSerialChronology + + +SucceedingSerialChronology + + + + + +ImmediatelyPrecedingSerial + + +ImmediatelyPrecedingSerial + + + + + +PrecedingSerialChronology + + +PrecedingSerialChronology + + + + + +ImmediatelySucceedingSerial + + +ImmediatelySucceedingSerial + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +Translation + + +Translation + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Language + + +Language + + + + + +TranslatedFromSerial + + +TranslatedFromSerial + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/sled_images_model_er.svg b/images/model/sled_images_model_er.svg new file mode 100644 index 00000000..a2ac6169 --- /dev/null +++ b/images/model/sled_images_model_er.svg @@ -0,0 +1,221 @@ + + + + + + +SledImage + + + +Depiction->CollectionObject + + + + + +Tag->Keyword + + + + + +SledImage->Tag + + + + + +SledImage->Note + + + + + +SledImage->Image + + + + + +SledImage->PinboardItem + + + + + +SledImage->Role + + + + + +SledImage->VerifierRole + + + + + +SledImage->Creator + + + + + +SledImage->Project + + + + + +SledImage->Updater + + + + + +Image->Depiction + + + + + + +VerifierRole->Verifier + + + + + + + +Depiction + + +Depiction + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +CollectionObject + + +CollectionObject + + + + + +SledImage + + + +SledImage + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/sources_model_er.svg b/images/model/sources_model_er.svg new file mode 100644 index 00000000..194a4c7c --- /dev/null +++ b/images/model/sources_model_er.svg @@ -0,0 +1,357 @@ + + + + + + +Source + + + +AlternateValue->AlternateValueLanguage + + + + + +Citation->AssertedDistribution + + + + + +Citation->CitationTopic + + + + + +Tag->Keyword + + + + + +Source->AlternateValue + + + + + +Source->Citation + + + + + +Source->DataAttribute + + + + + +Source->Identifier + + + + + +Source->Tag + + + + + +Source->Note + + + + + +Source->Documentation + + + + + +Source->PinboardItem + + + + + +Source->ProjectSource + + + + + +Source->Role + + + + + +Source->VerifierRole + + + + + +Source->Version + + + + + +Source->Creator + + + + + +Source->Updater + + + + + +CitationTopic->Topic + + + + + +Documentation->Document + + + + + +ProjectSource->Project + + + + + + + +VerifierRole->Verifier + + + + + + + +AlternateValue + + +AlternateValue + + + + + +Citation + + +Citation + + + + + +DataAttribute + + +DataAttribute + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Source + + + +Source + + + + + +AssertedDistribution + + +AssertedDistribution + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +CitationTopic + + +CitationTopic + + + + + +Documentation + + +Documentation + + + + + +Document + + +Document + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +ProjectSource + + +ProjectSource + + + + + +Project + + +Project + + + + + +Role + + +Role + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/tagged_section_keywords_model_er.svg b/images/model/tagged_section_keywords_model_er.svg new file mode 100644 index 00000000..82611e28 --- /dev/null +++ b/images/model/tagged_section_keywords_model_er.svg @@ -0,0 +1,161 @@ + + + + + + +TaggedSectionKeyword + + + +TaggedSectionKeyword->PinboardItem + + + + + +TaggedSectionKeyword->Role + + + + + +TaggedSectionKeyword->VerifierRole + + + + + +TaggedSectionKeyword->Creator + + + + + +TaggedSectionKeyword->Keyword + + + + + +TaggedSectionKeyword->OtuPageLayoutSection + + + + + +TaggedSectionKeyword->Project + + + + + +TaggedSectionKeyword->Updater + + + + + + +VerifierRole->Verifier + + + + + + + +TaggedSectionKeyword + + + +TaggedSectionKeyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Keyword + + +Keyword + + + + + +OtuPageLayoutSection + + +OtuPageLayoutSection + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + diff --git a/images/model/tags_model_er.svg b/images/model/tags_model_er.svg new file mode 100644 index 00000000..f11e88a7 --- /dev/null +++ b/images/model/tags_model_er.svg @@ -0,0 +1,176 @@ + + + + + + +Tag + + + +Tag->ControlledVocabularyTerm + + + + + +Tag->PinboardItem + + + + + +Tag->Role + + + + + +Tag->VerifierRole + + + + + +Tag->Creator + + + + + +Tag->Keyword + + + + + +Tag->Project + + + + + +Tag->Updater + + + + + +Tag->Objects with Tags + + + + + + +VerifierRole->Verifier + + + + + + + +Tag + + + +Tag + + + + + +ControlledVocabularyTerm + + +ControlledVocabularyTerm + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Keyword + + +Keyword + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +Objects with Tags + + +Objects with Tags + + + + + diff --git a/images/model/taxon_determinations_model_er.svg b/images/model/taxon_determinations_model_er.svg new file mode 100644 index 00000000..4616b2bb --- /dev/null +++ b/images/model/taxon_determinations_model_er.svg @@ -0,0 +1,445 @@ + + + + + + +TaxonDetermination + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + +ProtocolRelationship->Protocol + + + + + + + +TaxonDetermination->Citation + + + + + +TaxonDetermination->Confidence + + + + + +TaxonDetermination->DataAttribute + + + + + +TaxonDetermination->Depiction + + + + + +TaxonDetermination->Note + + + + + +TaxonDetermination->ProtocolRelationship + + + + + +TaxonDetermination->Source + + + + + + + + +TaxonDetermination->Otu + + + + + +TaxonDetermination->DeterminerRole + + + + + +TaxonDetermination->Label + + + + + +TaxonDetermination->PinboardItem + + + + + +TaxonDetermination->Role + + + + + +TaxonDetermination->SubsequentCitation + + + + + +TaxonDetermination->VerifierRole + + + + + +TaxonDetermination->BiologicalCollectionObject + + + + + +TaxonDetermination->Creator + + + + + +TaxonDetermination->Project + + + + + +TaxonDetermination->Updater + + + + + +TaxonDetermination->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + +DeterminerRole->Determiner + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Note + + +Note + + + + + +ProtocolRelationship + + +ProtocolRelationship + + + + + +Source + + +Source + + + + + +Otu + + +Otu + + + + + +TaxonDetermination + + + +TaxonDetermination + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +DeterminerRole + + +DeterminerRole + + + + + +Determiner + + +Determiner + + + + + +Image + + +Image + + + + + +Label + + +Label + + + + + +PinboardItem + + +PinboardItem + + + + + +Protocol + + +Protocol + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +BiologicalCollectionObject + + +BiologicalCollectionObject + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/taxon_name_classifications_model_er.svg b/images/model/taxon_name_classifications_model_er.svg new file mode 100644 index 00000000..0294d5cb --- /dev/null +++ b/images/model/taxon_name_classifications_model_er.svg @@ -0,0 +1,280 @@ + + + + + + +TaxonNameClassification + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + + + +TaxonNameClassification->Citation + + + + + +TaxonNameClassification->Note + + + + + +TaxonNameClassification->Source + + + + + + + + +TaxonNameClassification->TaxonName + + + + + +TaxonNameClassification->PinboardItem + + + + + +TaxonNameClassification->Role + + + + + +TaxonNameClassification->SubsequentCitation + + + + + +TaxonNameClassification->VerifierRole + + + + + +TaxonNameClassification->Creator + + + + + +TaxonNameClassification->Project + + + + + +TaxonNameClassification->Updater + + + + + +TaxonNameClassification->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +TaxonName + + +TaxonName + + + + + +TaxonNameClassification + + + +TaxonNameClassification + + + + + +CitationTopic + + +CitationTopic + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/taxon_name_relationships_model_er.svg b/images/model/taxon_name_relationships_model_er.svg new file mode 100644 index 00000000..07c6cde2 --- /dev/null +++ b/images/model/taxon_name_relationships_model_er.svg @@ -0,0 +1,295 @@ + + + + + + +TaxonNameRelationship + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + + + +TaxonNameRelationship->Citation + + + + + +TaxonNameRelationship->Note + + + + + +TaxonNameRelationship->Source + + + + + + + + +TaxonNameRelationship->PinboardItem + + + + + +TaxonNameRelationship->Role + + + + + +TaxonNameRelationship->SubsequentCitation + + + + + +TaxonNameRelationship->VerifierRole + + + + + +TaxonNameRelationship->Creator + + + + + +TaxonNameRelationship->ObjectTaxonName + + + + + +TaxonNameRelationship->Project + + + + + +TaxonNameRelationship->SubjectTaxonName + + + + + +TaxonNameRelationship->Updater + + + + + +TaxonNameRelationship->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +TaxonNameRelationship + + + +TaxonNameRelationship + + + + + +CitationTopic + + +CitationTopic + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +ObjectTaxonName + + +ObjectTaxonName + + + + + +Project + + +Project + + + + + +SubjectTaxonName + + +SubjectTaxonName + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/model/taxon_names_model_er.svg b/images/model/taxon_names_model_er.svg new file mode 100644 index 00000000..aa918181 --- /dev/null +++ b/images/model/taxon_names_model_er.svg @@ -0,0 +1,752 @@ + + + + + + +TaxonName + + + +AlternateValue->AlternateValueLanguage + + + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Depiction->Image + + + + + +Tag->Keyword + + + + + +TaxonName->AlternateValue + + + + + +TaxonName->Citation + + + + + +TaxonName->Confidence + + + + + +TaxonName->DataAttribute + + + + + +TaxonName->Depiction + + + + + +TaxonName->Identifier + + + + + +TaxonName->Tag + + + + + +TaxonName->Note + + + + + +TaxonName->Otu + + + + + +TaxonName->Source + + + + + + + + +TaxonName->AncestorHierarchy + + + + + +TaxonName->Child + + + + + +TaxonName->ClassifiedAsUnavailableOrInvalid + + + + + +TaxonName->DescendantHierarchy + + + + + +TaxonName->HistoricalTaxonName + + + + + +TaxonName->ObservationMatrixRowItem + + + + + +TaxonName->PinboardItem + + + + + +TaxonName->RelatedTaxonNameRelationship + + + + + +TaxonName->Role + + + + + +TaxonName->SubsequentCitation + + + + + +TaxonName->TaxonNameAuthorRole + + + + + +TaxonName->TaxonNameClassification + + + + + +TaxonName->TaxonNameRelationship + + + + + +TaxonName->VerifierRole + + + + + +TaxonName->Version + + + + + +TaxonName->Creator + + + + + +TaxonName->Parent + + + + + +TaxonName->Project + + + + + +TaxonName->Updater + + + + + +TaxonName->ValidTaxonName + + + + + +TaxonName->OriginCitation + + + + + + + + +TaxonName->SourceClassifiedA + + + + + + + + +TaxonName->SourceClassifiedAsRelationship + + + + + + + + +Otu->TaxonDetermination + + + + + + + +AncestorHierarchy->SelfAndAncestor + + + + + +CitationTopic->Topic + + + + + +TaxonDetermination->CollectionObject + + + + + +DescendantHierarchy->SelfAndDescendant + + + + + +ObservationMatrixRowItem->ObservationMatrix + + + + + + +SubsequentCitation->SubsequentSource + + + + + +TaxonNameAuthorRole->TaxonNameAuthor + + + + + +VerifierRole->Verifier + + + + + + + + +AlternateValue + + +AlternateValue + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Depiction + + +Depiction + + + + + +Identifier + + +Identifier + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +TaxonName + + + +TaxonName + + + + + +CollectionObject + + +CollectionObject + + + + + +Otu + + +Otu + + + + + +Source + + +Source + + + + + +AlternateValueLanguage + + +AlternateValueLanguage + + + + + +AncestorHierarchy + + +AncestorHierarchy + + + + + +Child + + +Child + + + + + +CitationTopic + + +CitationTopic + + + + + +ClassifiedAsUnavailableOrInvalid + + +ClassifiedAsUnavailableOrInvalid + + + + + +TaxonDetermination + + +TaxonDetermination + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +DescendantHierarchy + + +DescendantHierarchy + + + + + +HistoricalTaxonName + + +HistoricalTaxonName + + + + + +Image + + +Image + + + + + +Keyword + + +Keyword + + + + + +ObservationMatrixRowItem + + +ObservationMatrixRowItem + + + + + +ObservationMatrix + + +ObservationMatrix + + + + + +PinboardItem + + +PinboardItem + + + + + +RelatedTaxonNameRelationship + + +RelatedTaxonNameRelationship + + + + + +Role + + +Role + + + + + +SelfAndAncestor + + +SelfAndAncestor + + + + + +SelfAndDescendant + + +SelfAndDescendant + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +TaxonNameAuthorRole + + +TaxonNameAuthorRole + + + + + +TaxonNameAuthor + + +TaxonNameAuthor + + + + + +TaxonNameClassification + + +TaxonNameClassification + + + + + +TaxonNameRelationship + + +TaxonNameRelationship + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Version + + +Version + + + + + +Creator + + +Creator + + + + + +Parent + + +Parent + + + + + +Project + + +Project + + + + + +Updater + + +Updater + + + + + +ValidTaxonName + + +ValidTaxonName + + + + + +OriginCitation + + +OriginCitation + + + + + +SourceClassifiedA + + +SourceClassifiedA + + + + + +SourceClassifiedAsRelationship + + +SourceClassifiedAsRelationship + + + + + diff --git a/images/model/type_materials_model_er.svg b/images/model/type_materials_model_er.svg new file mode 100644 index 00000000..b27cb163 --- /dev/null +++ b/images/model/type_materials_model_er.svg @@ -0,0 +1,370 @@ + + + + + + +TypeMaterial + + + +Citation->Source + + + + + +Citation->CitationTopic + + + + + +Confidence->ConfidenceLevel + + + + + +Tag->Keyword + + + + + + + +TypeMaterial->Citation + + + + + +TypeMaterial->Confidence + + + + + +TypeMaterial->DataAttribute + + + + + +TypeMaterial->Tag + + + + + +TypeMaterial->Note + + + + + +TypeMaterial->Source + + + + + + + + +TypeMaterial->CollectionObject + + + + + +TypeMaterial->PinboardItem + + + + + +TypeMaterial->Role + + + + + +TypeMaterial->SubsequentCitation + + + + + +TypeMaterial->VerifierRole + + + + + +TypeMaterial->Creator + + + + + +TypeMaterial->Project + + + + + +TypeMaterial->Protonym + + + + + +TypeMaterial->Updater + + + + + +TypeMaterial->OriginCitation + + + + + + + + +CitationTopic->Topic + + + + + + +SubsequentCitation->SubsequentSource + + + + + +VerifierRole->Verifier + + + + + + + +Citation + + +Citation + + + + + +Confidence + + +Confidence + + + + + +DataAttribute + + +DataAttribute + + + + + +Tag + + +Tag + + + + + +Note + + +Note + + + + + +Source + + +Source + + + + + +CollectionObject + + +CollectionObject + + + + + +TypeMaterial + + + +TypeMaterial + + + + + +CitationTopic + + +CitationTopic + + + + + +ConfidenceLevel + + +ConfidenceLevel + + + + + +Keyword + + +Keyword + + + + + +PinboardItem + + +PinboardItem + + + + + +Role + + +Role + + + + + +SubsequentCitation + + +SubsequentCitation + + + + + +SubsequentSource + + +SubsequentSource + + + + + +Topic + + +Topic + + + + + +VerifierRole + + +VerifierRole + + + + + +Verifier + + +Verifier + + + + + +Creator + + +Creator + + + + + +Project + + +Project + + + + + +Protonym + + +Protonym + + + + + +Updater + + +Updater + + + + + +OriginCitation + + +OriginCitation + + + + + diff --git a/images/taxonworks-black-circle.svg b/images/taxonworks-black-circle.svg new file mode 100644 index 00000000..acaa339b --- /dev/null +++ b/images/taxonworks-black-circle.svg @@ -0,0 +1,10 @@ + + 5B0334BE-6F60-46AA-8E99-5EF2E5EC3231 + + + + + + + + \ No newline at end of file diff --git a/images/taxonworks-white-circle.svg b/images/taxonworks-white-circle.svg new file mode 100644 index 00000000..23355466 --- /dev/null +++ b/images/taxonworks-white-circle.svg @@ -0,0 +1,10 @@ + + 5B0334BE-6F60-46AA-8E99-5EF2E5EC3231 + + + + + + + + \ No newline at end of file diff --git a/images/taxonworks_home.svg b/images/taxonworks_home.svg new file mode 100644 index 00000000..d257a515 --- /dev/null +++ b/images/taxonworks_home.svg @@ -0,0 +1,85 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + diff --git a/index.html b/index.html new file mode 100644 index 00000000..1a721148 --- /dev/null +++ b/index.html @@ -0,0 +1,37 @@ + + + + + + + + + Home | TaxonWorks Docs + + + + + +
    + + +