diff --git a/doc/source/api/regolith.rst b/doc/source/api/index.rst similarity index 79% rename from doc/source/api/regolith.rst rename to doc/source/api/index.rst index 62a3828b2..1f52ba354 100644 --- a/doc/source/api/regolith.rst +++ b/doc/source/api/index.rst @@ -1,28 +1,22 @@ -:tocdepth: -1 +.. _api: -regolith package -================ - -.. automodule:: regolith - :members: - :undoc-members: - :show-inheritance: - -Subpackages ------------ +================= +Regolith API +================= +For those of you who want the gritty details. .. toctree:: - :titlesonly: + :maxdepth: 1 regolith.builders regolith.static regolith.templates regolith.helpers -Submodules +Other API usage ---------- -regolith.fsclient module +regolith.fsclient ^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.fsclient @@ -30,7 +24,7 @@ regolith.fsclient module :undoc-members: :show-inheritance: -regolith.helper_connect_main module +regolith.helper_connect_main ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.helper_connect_main @@ -38,7 +32,7 @@ regolith.helper_connect_main module :undoc-members: :show-inheritance: -regolith.stylers module +regolith.stylers ^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.stylers @@ -46,7 +40,7 @@ regolith.stylers module :undoc-members: :show-inheritance: -regolith.sorters module +regolith.sorters ^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.sorters @@ -54,7 +48,7 @@ regolith.sorters module :undoc-members: :show-inheritance: -regolith.helper_gui_main module +regolith.helper_gui_main ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.helper_gui_main @@ -62,7 +56,7 @@ regolith.helper_gui_main module :undoc-members: :show-inheritance: -regolith.deploy module +regolith.deploy ^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.deploy @@ -70,7 +64,7 @@ regolith.deploy module :undoc-members: :show-inheritance: -regolith.grader module +regolith.grader ^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.grader @@ -78,7 +72,7 @@ regolith.grader module :undoc-members: :show-inheritance: -regolith.validators module +regolith.validators ^^^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.validators @@ -86,7 +80,7 @@ regolith.validators module :undoc-members: :show-inheritance: -regolith.runcontrol module +regolith.runcontrol ^^^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.runcontrol @@ -94,7 +88,7 @@ regolith.runcontrol module :undoc-members: :show-inheritance: -regolith.tools module +regolith.tools ^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.tools @@ -102,7 +96,7 @@ regolith.tools module :undoc-members: :show-inheritance: -regolith.client_manager module +regolith.client_manager ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.client_manager @@ -110,7 +104,7 @@ regolith.client_manager module :undoc-members: :show-inheritance: -regolith.builder module +regolith.builder ^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.builder @@ -118,7 +112,7 @@ regolith.builder module :undoc-members: :show-inheritance: -regolith.classlist module +regolith.classlist ^^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.classlist @@ -126,7 +120,7 @@ regolith.classlist module :undoc-members: :show-inheritance: -regolith.schemas module +regolith.schemas ^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.schemas @@ -134,7 +128,7 @@ regolith.schemas module :undoc-members: :show-inheritance: -regolith.storage module +regolith.storage ^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.storage @@ -142,7 +136,7 @@ regolith.storage module :undoc-members: :show-inheritance: -regolith.helper module +regolith.helper ^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.helper @@ -150,7 +144,7 @@ regolith.helper module :undoc-members: :show-inheritance: -regolith.emailer module +regolith.emailer ^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.emailer @@ -158,7 +152,7 @@ regolith.emailer module :undoc-members: :show-inheritance: -regolith.app module +regolith.app ^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.app @@ -166,7 +160,7 @@ regolith.app module :undoc-members: :show-inheritance: -regolith.dates module +regolith.dates ^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.dates @@ -174,7 +168,7 @@ regolith.dates module :undoc-members: :show-inheritance: -regolith.broker module +regolith.broker ^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.broker @@ -182,7 +176,7 @@ regolith.broker module :undoc-members: :show-inheritance: -regolith.main module +regolith.main ^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.main @@ -190,7 +184,7 @@ regolith.main module :undoc-members: :show-inheritance: -regolith.chained_db module +regolith.chained_db ^^^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.chained_db @@ -198,7 +192,7 @@ regolith.chained_db module :undoc-members: :show-inheritance: -regolith.interact module +regolith.interact ^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.interact @@ -206,7 +200,7 @@ regolith.interact module :undoc-members: :show-inheritance: -regolith.commands module +regolith.commands ^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.commands @@ -214,7 +208,7 @@ regolith.commands module :undoc-members: :show-inheritance: -regolith.mongoclient module +regolith.mongoclient ^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. automodule:: regolith.mongoclient diff --git a/doc/source/collections/abstracts.rst b/doc/source/collections/abstracts.rst index 1543414ca..5ee5c924f 100644 --- a/doc/source/collections/abstracts.rst +++ b/doc/source/collections/abstracts.rst @@ -10,7 +10,7 @@ The following lists key names mapped to its type and meaning for each entry. :coauthors: string, names of coauthors, optional :email: string, contact email for the author., required :firstname: string, first name of the author., required -:institution: string, name of the inistitution, required +:institution: string, name of the institution, required :lastname: string, last name of the author., required :references: string, HTML string of reference for the abstract itself, optional :text: string, HTML string of the abstract., required diff --git a/doc/source/collections/beamplan.rst b/doc/source/collections/beamplan.rst new file mode 100644 index 000000000..f381656d7 --- /dev/null +++ b/doc/source/collections/beamplan.rst @@ -0,0 +1,128 @@ +Beamplan +======== +Information about the experiment plan for the beamtime. + +Schema +------ +The following lists key names mapped to its type and meaning for each entry. + +:_id: string, Unique identifier for the experiment plan. It should have a format '{year:2d}{month:2d}{people_id:s}_{plan_name:s}', required +:beamtime: string, The id for the beamtime. Check the Airtable., required +:begin_date: ['string', 'datetime', 'date'], The begin date of the beam time., required +:devices: list, The dictionary of devices used in the measurement e. g. , required + + :type: string, optional +:end_date: ['string', 'datetime', 'date'], The end date of the beam time., required +:exp_plan: list, Steps to carry out the experiments at BNL. Need details, required + + :type: string, optional +:holder: string, Sample holder used during the measurement, e. g. 3 mm OD tubes holder., required +:measurement: string, What data to be measured, e. g. PDF, XRD, SAXS. This will determine the setup., required +:notes: ['list', 'string'], Notes of the plan, e. g. the preferred time., optional + + :type: string, optional +:objective: string, What to study in the experiments. What goal to achieve., required +:pipeline: string, The analysis pipeline for the experiment. If no new pipeline is needed, use 'usual'., required +:prep_plan: list, Steps to prepare the samples. Do NOT need details., required + + :type: string, optional +:project: string, The id for the project which the plan belongs to. It should be on airtable., required +:project_lead: string, The id for person who put out this plan. It should be inside the people.yml., required +:samples: list, The list of samples to be measured., required + + :type: string, optional +:scanplan: list, The scanplan for the experiment, e. g. tseries, Tramp, ct., required + + :type: string, optional +:ship_plan: list, Steps to carry the samples from the producer to the BNL. Do NOT need details., required + + :type: string, optional +:time: integer, The total time of executing the exp_plan. Unit: min., required +:todo: list, The TODO list before the beamtime., required + + :type: string, optional + + +YAML Example +------------ + +.. code-block:: yaml + + test: + beamtime: 2020-1-XPD + begin_date: '2020-01-01' + devices: + - cryostream + end_date: '2020-01-02' + exp_plan: + - load samples on the holder + - scan the holder to locate the samples + - take room temperature measurement of sample and the subtrate + - ramp down temperature to 100K + - ramp up, measure PDF at temperature 100K ~ 300K, 10K stepsize, 1 min exposure + holder: film holder (1 cm * 1 cm * 1 mm) + measurement: Tramp + objective: temperature ramping PDF of one WO3 film (100, 300K, 10K) + pipeline: usual + prep_plan: + - films will be made by kriti + project: 20ks_wo3 + project_lead: kseth + samples: + - WO3 film + - glass subtrate + scanplan: + - Scanplan(bt, Tramp, 30, 80, 500, 10) + ship_plan: + - seal and ship to CU + - carry to the beamline + time: 190 + todo: + - todo something + + +JSON/Mongo Example +------------------ + +.. code-block:: json + + { + "_id": "test", + "beamtime": "2020-1-XPD", + "begin_date": "2020-01-01", + "devices": [ + "cryostream" + ], + "end_date": "2020-01-02", + "exp_plan": [ + "load samples on the holder", + "scan the holder to locate the samples", + "take room temperature measurement of sample and the subtrate", + "ramp down temperature to 100K", + "ramp up, measure PDF at temperature 100K ~ 300K, 10K stepsize, 1 min exposure" + ], + "holder": "film holder (1 cm * 1 cm * 1 mm)", + "measurement": "Tramp", + "objective": "temperature ramping PDF of one WO3 film (100, 300K, 10K)", + "pipeline": "usual", + "prep_plan": [ + "films will be made by kriti" + ], + "project": "20ks_wo3", + "project_lead": "kseth", + "samples": [ + "WO3 film", + "glass subtrate" + ], + "scanplan": [ + "Scanplan(bt, Tramp, 30, 80, 500, 10)" + ], + "ship_plan": [ + "seal and ship to CU", + "carry to the beamline" + ], + "time": 190, + "todo": [ + "todo something" + ] + } diff --git a/doc/source/collections/contacts.rst b/doc/source/collections/contacts.rst index 8c399f25e..62f86b907 100644 --- a/doc/source/collections/contacts.rst +++ b/doc/source/collections/contacts.rst @@ -1,18 +1,24 @@ Contacts ======== -a lighter version of people. Fewer required fieldsfor capturing people who are less tightly coupled +a lighter version of people. Fewer required fields for capturing people who are less tightly coupled Schema ------ The following lists key names mapped to its type and meaning for each entry. :aka: list, other names for the person, optional +:date: ['string', 'date'], date when the entry was created in ISO format, optional +:day: integer, day when the entry was created, optional :department: string, Department at the institution, optional :email: string, Contact email for the contact, optional :institution: string, the institution where they are located. This isrequired for building a COI list of coauthors, butnot in general. It can be institute id or anythingin the aka or name, optional -:name: string, the person canonical name, required +:month: ['string', 'integer'], month when the entry was created, optional +:name: string, the person's canonical name, required :notes: ['list', 'string'], notes about the person, optional :title: string, how the person is addressed, optional +:updated: ['string', 'datetime', 'date'], most recently updated, optional +:uuid: string, universally unique identifier, optional +:year: integer, year when the entry was created, optional YAML Example @@ -22,13 +28,20 @@ YAML Example afriend: aka: - - A. B. FriendAB FriendTony Friend + - A. B. Friend + - AB Friend + - Tony Friend + day: 15 department: physics email: friend@deed.com institution: columbiau + month: January name: Anthony B Friend - notes: The guy I meet for coffee sometimes + notes: + - The guy I meet for coffee sometimes title: Mr. + uuid: 76f2a4c7-aa63-4fa3-88b5-396b0c15d368 + year: 2020 JSON/Mongo Example @@ -39,12 +52,20 @@ JSON/Mongo Example { "_id": "afriend", "aka": [ - "A. B. FriendAB FriendTony Friend" + "A. B. Friend", + "AB Friend", + "Tony Friend" ], + "day": 15, "department": "physics", "email": "friend@deed.com", "institution": "columbiau", + "month": "January", "name": "Anthony B Friend", - "notes": "The guy I meet for coffee sometimes", - "title": "Mr." + "notes": [ + "The guy I meet for coffee sometimes" + ], + "title": "Mr.", + "uuid": "76f2a4c7-aa63-4fa3-88b5-396b0c15d368", + "year": 2020 } diff --git a/doc/source/collections/expenses.rst b/doc/source/collections/expenses.rst index 6f1038f86..008b47755 100644 --- a/doc/source/collections/expenses.rst +++ b/doc/source/collections/expenses.rst @@ -7,6 +7,14 @@ Schema The following lists key names mapped to its type and meaning for each entry. :_id: string, short representation, such as this-is-my-name, required +:begin_date: ['string', 'date'], begin date in YYYY-MM-DD, optional +:begin_day: integer, The day when the travel/business started, optional +:begin_month: ['string', 'integer'], The month when the travel/business started, optional +:begin_year: integer, The year when the travel/business started, optional +:end_date: ['string', 'date'], end date in YYYY-MM-DD, optional +:end_day: integer, The day when the travel/business end, optional +:end_month: ['string', 'integer'], The month when the travel/business end, optional +:end_year: integer, The year when the travel/business end, optional Allowed values: * travel @@ -18,15 +26,40 @@ The following lists key names mapped to its type and meaning for each entry. :type: dict, optional :day: integer, Expense day, optional + :date: ['string', 'date'], Expense date, optional :month: ['string', 'integer'], Expense month, optional :year: integer, Expense year, optional :purpose: string, reason for expense, optional :unsegregated_expense: float, The allowed expenses, optional :segregated_expense: float, The unallowed expenses, optional - :original_currency: float, The currency the payment was made in, optional + :currency: string, The currency the payment was made in, optional + :prepaid_expense: float, The amount of prepaid expense in USD, optional + :notes: ['list', 'string'], notes about the expense, optional +:notes: ['list', 'string'], Description of the expenses. It will not be included in the reimbursement form, optional :overall_purpose: string, The reason for the expenses, required :payee: string, The name or id of the payee filing the expense, required -:project: ['string', 'list'], project or list of projects that this presentation is associated with. Should be discoverable in projects collection, required +:project: ['string', 'list'], project or list of projects that this presentation is associated with. Should be discoverable in projects collection, optional +:reimbursements: list, Reimbursements for the expense, optional + + :type: dict, optional + + :amount: float, amount for reimbursements, optional + :date: ['string', 'date'], date of reimbursement, optional + :submission_date: ['string', 'date'], date of submission, optional + :submission_day: integer, day of submission. deprecated but here for backwards compatibility, optional + :submission_month: ['integer', 'string'], month of submission. deprecated but here for backwards compatibility, optional + :submission_year: integer, year of submission. deprecated but here for backwards compatibility, optional + :day: integer, day of reimbursement. deprecated but here for backwards compatibility, optional + :month: ['string', 'integer'], month of reimbursement. deprecated but here for backwards compatibility, optional + :year: integer, year of reimbursement. deprecated but here for backwards compatibility, optional + :where: string, where the reimbursement has been sent, optional +:status: string, The status of the expense, optional + + Allowed values: + * unsubmitted + * submitted + * reimbursed + * declined YAML Example @@ -35,6 +68,8 @@ YAML Example .. code-block:: yaml test: + begin_date: '2018-01-01' + end_date: '2018-01-10' expense_type: business grant_percentages: - '50' @@ -45,67 +80,143 @@ YAML Example itemized_expenses: - day: 1 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 10 year: 2018 - day: 2 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 20 year: 2018 - day: 3 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 30 year: 2018 - day: 4 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 40 year: 2018 - day: 5 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 50 year: 2018 - day: 6 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 60 year: 2018 - day: 7 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 70 year: 2018 - day: 8 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 80 year: 2018 - day: 9 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 90 year: 2018 - day: 10 month: Jan + prepaid_expense: 10.3 purpose: test segregated_expense: 0 unsegregated_expense: 100 year: 2018 - overall_purpose: testing the database + notes: this expense was used to get the work done + overall_purpose: testing the databallectionsse payee: scopatz project: Cyclus + reimbursements: + - amount: 500 + date: tbd + submission_date: tbd + where: Columbia + - amount: 1000 + date: '2019-02-15' + submission_date: '2019-09-05' + where: Columbia + status: submitted + test2: + begin_date: '2019-01-01' + end_date: '2019-01-10' + expense_type: business + grant_percentages: + - '100' + grants: + - SymPy-1.1 + itemized_expenses: + - currency: USD + day: 2 + month: Jan + notes: + - this is just a test + prepaid_expense: 10.3 + purpose: test + segregated_expense: 0 + unsegregated_expense: 10 + year: 2019 + notes: some note + overall_purpose: testing + payee: sbillinge + project: reimbursed expense + reimbursements: + - amount: 100 + date: '2019-09-15' + submission_date: tbd + where: Columbia + status: reimbursed + test3: + begin_date: '2020-01-01' + end_date: '2020-01-10' + expense_type: business + grant_percentages: + - '100' + grants: + - SymPy-1.1 + itemized_expenses: + - day: 3 + month: Jan + prepaid_expense: 10.3 + purpose: test + segregated_expense: 0 + unsegregated_expense: 10 + year: 2020 + notes: some other note + overall_purpose: more testing + payee: sbillinge + project: reimbursed expense + reimbursements: + - amount: 100 + date: '2020-09-15' + submission_date: tbd + where: Columbia + status: bad_status JSON/Mongo Example @@ -115,6 +226,8 @@ JSON/Mongo Example { "_id": "test", + "begin_date": "2018-01-01", + "end_date": "2018-01-10", "expense_type": "business", "grant_percentages": [ "50", @@ -128,6 +241,7 @@ JSON/Mongo Example { "day": 1, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 10, @@ -136,6 +250,7 @@ JSON/Mongo Example { "day": 2, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 20, @@ -144,6 +259,7 @@ JSON/Mongo Example { "day": 3, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 30, @@ -152,6 +268,7 @@ JSON/Mongo Example { "day": 4, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 40, @@ -160,6 +277,7 @@ JSON/Mongo Example { "day": 5, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 50, @@ -168,6 +286,7 @@ JSON/Mongo Example { "day": 6, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 60, @@ -176,6 +295,7 @@ JSON/Mongo Example { "day": 7, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 70, @@ -184,6 +304,7 @@ JSON/Mongo Example { "day": 8, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 80, @@ -192,6 +313,7 @@ JSON/Mongo Example { "day": 9, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 90, @@ -200,13 +322,106 @@ JSON/Mongo Example { "day": 10, "month": "Jan", + "prepaid_expense": 10.3, "purpose": "test", "segregated_expense": 0, "unsegregated_expense": 100, "year": 2018 } ], - "overall_purpose": "testing the database", + "notes": "this expense was used to get the work done", + "overall_purpose": "testing the databallectionsse", "payee": "scopatz", - "project": "Cyclus" + "project": "Cyclus", + "reimbursements": [ + { + "amount": 500, + "date": "tbd", + "submission_date": "tbd", + "where": "Columbia" + }, + { + "amount": 1000, + "date": "2019-02-15", + "submission_date": "2019-09-05", + "where": "Columbia" + } + ], + "status": "submitted" + } + { + "_id": "test2", + "begin_date": "2019-01-01", + "end_date": "2019-01-10", + "expense_type": "business", + "grant_percentages": [ + "100" + ], + "grants": [ + "SymPy-1.1" + ], + "itemized_expenses": [ + { + "currency": "USD", + "day": 2, + "month": "Jan", + "notes": [ + "this is just a test" + ], + "prepaid_expense": 10.3, + "purpose": "test", + "segregated_expense": 0, + "unsegregated_expense": 10, + "year": 2019 + } + ], + "notes": "some note", + "overall_purpose": "testing", + "payee": "sbillinge", + "project": "reimbursed expense", + "reimbursements": [ + { + "amount": 100, + "date": "2019-09-15", + "submission_date": "tbd", + "where": "Columbia" + } + ], + "status": "reimbursed" + } + { + "_id": "test3", + "begin_date": "2020-01-01", + "end_date": "2020-01-10", + "expense_type": "business", + "grant_percentages": [ + "100" + ], + "grants": [ + "SymPy-1.1" + ], + "itemized_expenses": [ + { + "day": 3, + "month": "Jan", + "prepaid_expense": 10.3, + "purpose": "test", + "segregated_expense": 0, + "unsegregated_expense": 10, + "year": 2020 + } + ], + "notes": "some other note", + "overall_purpose": "more testing", + "payee": "sbillinge", + "project": "reimbursed expense", + "reimbursements": [ + { + "amount": 100, + "date": "2020-09-15", + "submission_date": "tbd", + "where": "Columbia" + } + ], + "status": "bad_status" } diff --git a/doc/source/collections/formalletters.rst b/doc/source/collections/formalletters.rst new file mode 100644 index 000000000..4fde105fc --- /dev/null +++ b/doc/source/collections/formalletters.rst @@ -0,0 +1,94 @@ +Formalletters +============= +Letters with a formal formatting, subject, recipients, enclosures, etc. + +Schema +------ +The following lists key names mapped to its type and meaning for each entry. + +:_id: ['string', 'integer', 'float'], short representation, such as id_of_the_letter, required +:copy_to: ['list'], List of people who will receive a copy, optional +:date: ['string', 'date'], Letter date. ISO format YYYY-MM-DD, required +:encls: ['list'], List of enclosures, optional + + :name: string, The name of the sender, optional + :title: string, The title of the person, Sir, Mr., Major. Ranks can be shortened to codes., optional + :postfix: string, The post-fix, PhD, (Admiral, retired), whatever, optional +:paras: ['list'], content of the letter in the form of a List of paragraphs, required +:refs: ['list'], List of references, optional +:subject: ['string'], The subject of the letter, optional + + :name: string, The name of the recipient, optional + :title: string, The title of the person, Sir, Mr., Major. Ranks can be shortened to codes., optional + :postfix: string, The post-fix, PhD, (Admiral, retired), whatever, optional + + +YAML Example +------------ + +.. code-block:: yaml + + first_letter: + copy_to: + - copied-person1 + - copied-person2 + date: '2022-06-05' + encls: + - encl 1 + - encl 2 + from: + name: John Doy + postfix: Royalty + title: Sir + paras: + - first paragraph made long enough to make sure the wrapping gives the desired + result and that it looks nice all around. + - para 2 + - para 3 + refs: + - ref 1 + - ref 2 + subject: this letter is about this + to: + name: Julie Doe + postfix: USM + title: lc + + +JSON/Mongo Example +------------------ + +.. code-block:: json + + { + "_id": "first_letter", + "copy_to": [ + "copied-person1", + "copied-person2" + ], + "date": "2022-06-05", + "encls": [ + "encl 1", + "encl 2" + ], + "from": { + "name": "John Doy", + "postfix": "Royalty", + "title": "Sir" + }, + "paras": [ + "first paragraph made long enough to make sure the wrapping gives the desired result and that it looks nice all around.", + "para 2", + "para 3" + ], + "refs": [ + "ref 1", + "ref 2" + ], + "subject": "this letter is about this", + "to": { + "name": "Julie Doe", + "postfix": "USM", + "title": "lc" + } + } diff --git a/doc/source/collections/grants.rst b/doc/source/collections/grants.rst index eb8cba8d5..78609cfb0 100644 --- a/doc/source/collections/grants.rst +++ b/doc/source/collections/grants.rst @@ -6,28 +6,56 @@ Schema ------ The following lists key names mapped to its type and meaning for each entry. -:_id: ('string', 'integer', 'float'), short representation, such as this-is-my-name, required +:_id: ['string', 'integer', 'float'], short representation, such as this-is-my-name, required :account: string, the account number which holds the funds, optional -:admin: string, the group administering the grant, optional -:amount: ('integer', 'float'), value of award, required +:admin: string, the unit or group administering the grant, optional +:alias: string, the alias of the grant, optional +:amount: ['integer', 'float'], value of award, required +:awardnr: string, the number of the award from the agency, optional +:begin_date: ['string', 'date'], start date of the grant (if string, in format YYYY-MM-DD), optional :begin_day: integer, start day of the grant, optional -:begin_month: ['string', 'integer'], start month of the grant, required -:begin_year: integer, start year of the grant, required +:begin_month: ['string', 'integer'], start month of the grant, optional +:begin_year: integer, start year of the grant, optional :benefit_of_collaboration: string, optional +:budget: list, budget periods of grant, optional + + :type: dict, optional + + :begin_date: ['string', 'date'], start date of the budget period in format YYYY-MM-DD, optional + :end_date: ['string', 'date'], end date of the budget period in format YYYY-MM-DD, optional + :student_months: ['float', 'integer'], number of months of funding for student members during the academic year, optional + :postdoc_months: ['float', 'integer'], number of months of funding for postdoc members during the academic year, optional + :ss_months: ['float', 'integer'], number of months of funding for the summer, optional + :amount: ['float', 'integer'], subaward for this budget period, optional :call_for_proposals: string, optional :currency: string, typically '$' or 'USD', optional -:end_day: ('string', 'integer'), end day of the grant, optional +:end_date: ['string', 'date'], start date of the grant (if string, in format YYYY-MM-DD), optional +:end_day: ['string', 'integer'], end day of the grant, optional :end_month: ['string', 'integer'], end month of the grant, optional -:end_year: integer, end year of the grant, required +:end_year: integer, end year of the grant, optional :funder: string, the agency funding the work, required +:funds_available: list, funds available on date, optional + + :type: dict, optional + + :date: ['string', 'date'], optional + :funds_available: ['integer', 'float'], optional :grant_id: string, the identifier for this work, optional +:highlights: list, lists of highlights from the project, optional + + :type: dict, optional + + :year: integer, optional + :month: integer, optional + :description: string, optional :institution: string, the host institution for the grant, optional :narrative: string, optional :notes: string, notes about the grant, optional -:person_months_academic: ['integer', 'float'], Number of months of funding during the academicyear, optional +:person_months_academic: ['integer', 'float'], Number of months of funding during the academic year, optional :person_months_summer: ['integer', 'float'], Number of months of funding during the summer, optional -:program: string, the program the work was funded under, required -:scope: string, The scope of the grant, answers the prompt: "Describe Research Including Synergies and Delineation with Respect to this Proposal/Award:", optional +:program: string, the program the work was funded under, optional +:proposal_id: string, initial proposal made for grant, optional +:scope: string, The scope of the grant, answers the prompt: Describe Research Including Synergies and Delineation with Respect to this Proposal/Award:, optional :status: string, status of the grant, optional Allowed values: @@ -39,11 +67,16 @@ The following lists key names mapped to its type and meaning for each entry. :type: dict, optional + :admin_people: list, optional :cv: string, optional :institution: string, optional :name: string, optional :position: string, optional - :subaward_amount: ('integer', 'float'), optional + + Allowed values: + * pi + * copi + :subaward_amount: ['integer', 'float'], optional :title: string, actual title of proposal / grant, required @@ -53,35 +86,140 @@ YAML Example .. code-block:: yaml SymPy-1.1: + admin: APAM + alias: sym amount: 3000.0 + awardnr: NF-1234 begin_day: 1 begin_month: May begin_year: 2030 + budget: + - amount: 1000.0 + begin_date: '2030-05-01' + end_date: '2030-06-30' + postdoc_months: 0.0 + ss_months: 1.0 + student_months: 0.5 + - amount: 1000.0 + begin_date: '2030-07-01' + end_date: '2030-09-30' + postdoc_months: 0.0 + ss_months: 2.0 + student_months: 1.5 + - amount: 1000.0 + begin_date: '2030-10-01' + end_date: '2030-12-31' + postdoc_months: 0.0 + ss_months: 0.0 + student_months: 3.0 call_for_proposals: https://groups.google.com/d/msg/numfocus/wPjhdm8NJiA/S8JL1_NZDQAJ end_day: 31 end_month: December end_year: 2030 funder: NumFOCUS + funds_available: + - date: '2020-04-01' + funds_available: 2800.0 + - date: '2021-01-03' + funds_available: 2100.0 + - date: '2020-07-21' + funds_available: 2600.0 narrative: https://docs.google.com/document/d/1nZxqoL-Ucni_aXLWmXtRDd3IWqW0mZBO65CEvDrsXZM/edit?usp=sharing program: Small Development Grants - status: pending team: - institution: University of South Carolina name: Anthony Scopatz - position: PI - - institution: University of South Carolina + position: pi + - admin_people: + - A. D. Ministrator + institution: University of South Carolina name: Aaron Meurer position: researcher title: SymPy 1.1 Release Support + SymPy-2.0: + admin: APAM + alias: sym2.0 + amount: 3000.0 + awardnr: NF-1234 + begin_day: 1 + begin_month: 6 + begin_year: 2019 + call_for_proposals: https://groups.google.com/d/msg/numfocus/wPjhdm8NJiA/S8JL1_NZDQAJ + end_day: 31 + end_month: December + end_year: 2030 + funder: NumFOCUS + funds_available: + - date: '2020-04-01' + funds_available: 2800.0 + - date: '2021-01-03' + funds_available: 2100.0 + - date: '2020-07-21' + funds_available: 2600.0 + highlights: + - description: high profile pub in Nature + month: 5 + year: 2020 + narrative: https://docs.google.com/document/d/1nZxqoL-Ucni_aXLWmXtRDd3IWqW0mZBO65CEvDrsXZM/edit?usp=sharing + program: Small Development Grants + proposal_id: SymPy-2.0 + status: accepted + team: + - institution: University of South Carolina + name: Anthony Scopatz + position: pi + - institution: University of South Carolina + name: Aaron Meurer + position: researcher + title: SymPy 2.0 Release Support + abc42: + alias: abc42 + amount: 42000.0 + begin_date: '2020-06-01' + budget: + - amount: 42000.0 + begin_date: '2020-06-01' + end_date: '2020-12-31' + postdoc_months: 0.0 + ss_months: 1.0 + student_months: 0.0 + end_date: '2020-12-31' + funder: Life + program: Metaphysical Grants + proposal_id: abc42 + team: + - institution: University of Pedagogy + name: Chief Pedagogue + position: pi + - institution: University of Pedagogy + name: Pedagogue Jr. + position: copi + title: The answer to life, the universe, and everything dmref15: account: GG012345 + admin: DSI + alias: dmref15 amount: 982785.0 - begin_day: 1 - begin_month: october - begin_year: 2015 - end_day: 30 - end_month: september - end_year: 2025 + awardnr: DMR-0785462 + budget: + - amount: 327595.0 + begin_date: '2018-05-01' + end_date: '2018-09-30' + postdoc_months: 0.0 + ss_months: 6.0 + student_months: 12.0 + - amount: 327595.0 + begin_date: '2018-10-01' + end_date: '2019-01-30' + postdoc_months: 0.0 + ss_months: 12.0 + student_months: 8.0 + - amount: 327595.0 + begin_date: '2019-02-01' + end_date: '2019-05-01' + postdoc_months: 0.0 + ss_months: 6.0 + student_months: 12.0 funder: NSF grant_id: DMREF-1534910 institution: Columbia University @@ -89,22 +227,44 @@ YAML Example person_months_academic: 0.0 person_months_summer: 0.25 program: DMREF + proposal_id: dmref15 scope: This grant is to develop complex modeling methods for regularizing ill-posed nanostructure inverse problems using data analytic and machine learning based approaches. This does not overlap with any other grant. team: - institution: Columbia University name: qdu - position: Co-PI + position: copi - institution: Columbia University name: dhsu - position: Co-PI + position: copi - institution: Columbia University name: Anthony Scopatz - position: PI + position: pi subaward_amount: 330000.0 title: 'DMREF: Novel, data validated, nanostructure determination methods for accelerating materials discovery' + ta: + amount: 0.0 + begin_date: '2020-06-01' + budget: + - amount: 0.0 + begin_date: '2020-06-01' + end_date: '2020-08-30' + postdoc_months: 0.0 + ss_months: 0.0 + student_months: 0.0 + end_date: '2020-12-31' + funder: Life + program: Underground Grants + team: + - institution: Ministry of Magic + name: Chief Witch + position: pi + - institution: Ministry of Magic + name: Chief Wizard + position: copi + title: Support for teaching assistants JSON/Mongo Example @@ -114,25 +274,70 @@ JSON/Mongo Example { "_id": "SymPy-1.1", + "admin": "APAM", + "alias": "sym", "amount": 3000.0, + "awardnr": "NF-1234", "begin_day": 1, "begin_month": "May", "begin_year": 2030, + "budget": [ + { + "amount": 1000.0, + "begin_date": "2030-05-01", + "end_date": "2030-06-30", + "postdoc_months": 0.0, + "ss_months": 1.0, + "student_months": 0.5 + }, + { + "amount": 1000.0, + "begin_date": "2030-07-01", + "end_date": "2030-09-30", + "postdoc_months": 0.0, + "ss_months": 2.0, + "student_months": 1.5 + }, + { + "amount": 1000.0, + "begin_date": "2030-10-01", + "end_date": "2030-12-31", + "postdoc_months": 0.0, + "ss_months": 0.0, + "student_months": 3.0 + } + ], "call_for_proposals": "https://groups.google.com/d/msg/numfocus/wPjhdm8NJiA/S8JL1_NZDQAJ", "end_day": 31, "end_month": "December", "end_year": 2030, "funder": "NumFOCUS", + "funds_available": [ + { + "date": "2020-04-01", + "funds_available": 2800.0 + }, + { + "date": "2021-01-03", + "funds_available": 2100.0 + }, + { + "date": "2020-07-21", + "funds_available": 2600.0 + } + ], "narrative": "https://docs.google.com/document/d/1nZxqoL-Ucni_aXLWmXtRDd3IWqW0mZBO65CEvDrsXZM/edit?usp=sharing", "program": "Small Development Grants", - "status": "pending", "team": [ { "institution": "University of South Carolina", "name": "Anthony Scopatz", - "position": "PI" + "position": "pi" }, { + "admin_people": [ + "A. D. Ministrator" + ], "institution": "University of South Carolina", "name": "Aaron Meurer", "position": "researcher" @@ -140,16 +345,125 @@ JSON/Mongo Example ], "title": "SymPy 1.1 Release Support" } + { + "_id": "SymPy-2.0", + "admin": "APAM", + "alias": "sym2.0", + "amount": 3000.0, + "awardnr": "NF-1234", + "begin_day": 1, + "begin_month": 6, + "begin_year": 2019, + "call_for_proposals": "https://groups.google.com/d/msg/numfocus/wPjhdm8NJiA/S8JL1_NZDQAJ", + "end_day": 31, + "end_month": "December", + "end_year": 2030, + "funder": "NumFOCUS", + "funds_available": [ + { + "date": "2020-04-01", + "funds_available": 2800.0 + }, + { + "date": "2021-01-03", + "funds_available": 2100.0 + }, + { + "date": "2020-07-21", + "funds_available": 2600.0 + } + ], + "highlights": [ + { + "description": "high profile pub in Nature", + "month": 5, + "year": 2020 + } + ], + "narrative": "https://docs.google.com/document/d/1nZxqoL-Ucni_aXLWmXtRDd3IWqW0mZBO65CEvDrsXZM/edit?usp=sharing", + "program": "Small Development Grants", + "proposal_id": "SymPy-2.0", + "status": "accepted", + "team": [ + { + "institution": "University of South Carolina", + "name": "Anthony Scopatz", + "position": "pi" + }, + { + "institution": "University of South Carolina", + "name": "Aaron Meurer", + "position": "researcher" + } + ], + "title": "SymPy 2.0 Release Support" + } + { + "_id": "abc42", + "alias": "abc42", + "amount": 42000.0, + "begin_date": "2020-06-01", + "budget": [ + { + "amount": 42000.0, + "begin_date": "2020-06-01", + "end_date": "2020-12-31", + "postdoc_months": 0.0, + "ss_months": 1.0, + "student_months": 0.0 + } + ], + "end_date": "2020-12-31", + "funder": "Life", + "program": "Metaphysical Grants", + "proposal_id": "abc42", + "team": [ + { + "institution": "University of Pedagogy", + "name": "Chief Pedagogue", + "position": "pi" + }, + { + "institution": "University of Pedagogy", + "name": "Pedagogue Jr.", + "position": "copi" + } + ], + "title": "The answer to life, the universe, and everything" + } { "_id": "dmref15", "account": "GG012345", + "admin": "DSI", + "alias": "dmref15", "amount": 982785.0, - "begin_day": 1, - "begin_month": "october", - "begin_year": 2015, - "end_day": 30, - "end_month": "september", - "end_year": 2025, + "awardnr": "DMR-0785462", + "budget": [ + { + "amount": 327595.0, + "begin_date": "2018-05-01", + "end_date": "2018-09-30", + "postdoc_months": 0.0, + "ss_months": 6.0, + "student_months": 12.0 + }, + { + "amount": 327595.0, + "begin_date": "2018-10-01", + "end_date": "2019-01-30", + "postdoc_months": 0.0, + "ss_months": 12.0, + "student_months": 8.0 + }, + { + "amount": 327595.0, + "begin_date": "2019-02-01", + "end_date": "2019-05-01", + "postdoc_months": 0.0, + "ss_months": 6.0, + "student_months": 12.0 + } + ], "funder": "NSF", "grant_id": "DMREF-1534910", "institution": "Columbia University", @@ -157,24 +471,56 @@ JSON/Mongo Example "person_months_academic": 0.0, "person_months_summer": 0.25, "program": "DMREF", + "proposal_id": "dmref15", "scope": "This grant is to develop complex modeling methods for regularizing ill-posed nanostructure inverse problems using data analytic and machine learning based approaches. This does not overlap with any other grant.", "team": [ { "institution": "Columbia University", "name": "qdu", - "position": "Co-PI" + "position": "copi" }, { "institution": "Columbia University", "name": "dhsu", - "position": "Co-PI" + "position": "copi" }, { "institution": "Columbia University", "name": "Anthony Scopatz", - "position": "PI", + "position": "pi", "subaward_amount": 330000.0 } ], "title": "DMREF: Novel, data validated, nanostructure determination methods for accelerating materials discovery" } + { + "_id": "ta", + "amount": 0.0, + "begin_date": "2020-06-01", + "budget": [ + { + "amount": 0.0, + "begin_date": "2020-06-01", + "end_date": "2020-08-30", + "postdoc_months": 0.0, + "ss_months": 0.0, + "student_months": 0.0 + } + ], + "end_date": "2020-12-31", + "funder": "Life", + "program": "Underground Grants", + "team": [ + { + "institution": "Ministry of Magic", + "name": "Chief Witch", + "position": "pi" + }, + { + "institution": "Ministry of Magic", + "name": "Chief Wizard", + "position": "copi" + } + ], + "title": "Support for teaching assistants" + } diff --git a/doc/source/collections/groups.rst b/doc/source/collections/groups.rst index 37dd42827..ed7cf79cf 100644 --- a/doc/source/collections/groups.rst +++ b/doc/source/collections/groups.rst @@ -31,18 +31,10 @@ YAML Example department: Mechanical Engineering email: scopatz (AT) cec.sc.edu institution: University of South Carolina - mission_statement: "ERGS, or Energy Research Group: \n Scopatz,\ - \ is the Computational \n Nuclear\ - \ Engineering\n research group at the \n University of South Carolina. \n Our focus is on uncertainty quantification\ - \ & predictive modeling, nuclear \n fuel cycle simulation, and improving nuclear\ - \ engineering techniques through \n automation.\n We are committed to open\ - \ & accessible research tools and methods." + mission_statement: We are committed to open and accessible research tools and methods. name: ERGS pi_name: Anthony Scopatz - projects: "ERGS is involved in a large number of computational \n projects. Please\ - \ visit the projects page for \n more information!\n\ - \ " + projects: ERGS is involved in a large number of computational projects. website: www.ergs.sc.edu @@ -60,9 +52,9 @@ JSON/Mongo Example "department": "Mechanical Engineering", "email": "scopatz (AT) cec.sc.edu", "institution": "University of South Carolina", - "mission_statement": "ERGS, or Energy Research Group: \n Scopatz, is the Computational \n Nuclear Engineering\n research group at the \n University of South Carolina. \n Our focus is on uncertainty quantification & predictive modeling, nuclear \n fuel cycle simulation, and improving nuclear engineering techniques through \n automation.\n We are committed to open & accessible research tools and methods.", + "mission_statement": "We are committed to open and accessible research tools and methods.", "name": "ERGS", "pi_name": "Anthony Scopatz", - "projects": "ERGS is involved in a large number of computational \n projects. Please visit the projects page for \n more information!\n ", + "projects": "ERGS is involved in a large number of computational projects.", "website": "www.ergs.sc.edu" } diff --git a/doc/source/collections/index.rst b/doc/source/collections/index.rst index a9396764f..60c4c3dcc 100644 --- a/doc/source/collections/index.rst +++ b/doc/source/collections/index.rst @@ -10,21 +10,28 @@ The following contain the regolith schemas and examples in both YAML and JSON/Mo abstracts assignments + beamplan blog citations contacts courses expenses + formalletters grades grants groups institutions jobs + meetings news people presentations + projecta projects proposalReviews proposals + reading_lists refereeReports + software students + todos diff --git a/doc/source/collections/institutions.rst b/doc/source/collections/institutions.rst index ee817a6b5..c4f982a4d 100644 --- a/doc/source/collections/institutions.rst +++ b/doc/source/collections/institutions.rst @@ -10,11 +10,17 @@ The following lists key names mapped to its type and meaning for each entry. :aka: list, list of all the different names this the institution is known by, optional :city: string, the city where the institution is, required :country: string, The country where the institution is, required +:date: ['string', 'date'], Expense date, optional +:day: integer, the day the entry was created, optional :departments: dict, all the departments and centers andvarious units in the institution, optional +:month: ['string', 'integer'], the month the entry was created, optional :name: string, the canonical name of the institutions, required :schools: dict, this is more for universities, but it be used for larger divisions in big organizations, optional :state: string, the state where the institution is, optional :street: string, the street where the institution is, optional +:updated: ['string', 'datetime', 'date'], a datetime when the entry was updated, optional +:uuid: string, a uuid for the entry, optional +:year: integer, the year the entry was created, optional :zip: ['integer', 'string'], the zip or postal code of the institution, optional @@ -29,11 +35,12 @@ YAML Example - Columbia city: New York country: USA + day: 30 departments: apam: aka: - APAM - name: Department of Applied Physicsand Applied Mathematics + name: Department of Applied Physics and Applied Mathematics chemistry: aka: - Chemistry @@ -44,6 +51,7 @@ YAML Example - Dept. of Physics - Physics name: Department of Physics + month: May name: Columbia University schools: seas: @@ -54,7 +62,50 @@ YAML Example name: School of Engineering and Applied Science state: NY street: 500 W 120th St + updated: '2020-05-30' + uuid: avacazdraca345rfsvwre + year: 2020 zip: '10027' + usouthcarolina: + aka: + - The University of South Carolina + city: Columbia + country: USA + day: 30 + departments: + apam: + aka: + - APAM + name: Department of Applied Physics and Applied Mathematics + chemistry: + aka: + - Chemistry + - Dept. of Chemistry + name: Department of Chemistry + mechanical engineering: + aka: + - Mechanical + - Dept. of Mechanical + name: Department of Mechanical Engineering + physics: + aka: + - Dept. of Physics + - Physics + name: Department of Physics + month: May + name: The University of South Carolina + schools: + cec: + aka: + - CEC + - College of Engineering and Computing + name: College of Engineering and Computing + state: SC + street: 1716 College Street + updated: '2020-06-30' + uuid: 4E89A0DD-19AE-45CC-BCB4-83A2D84545E3 + year: 2020 + zip: '29208' JSON/Mongo Example @@ -70,12 +121,13 @@ JSON/Mongo Example ], "city": "New York", "country": "USA", + "day": 30, "departments": { "apam": { "aka": [ "APAM" ], - "name": "Department of Applied Physicsand Applied Mathematics" + "name": "Department of Applied Physics and Applied Mathematics" }, "chemistry": { "aka": [ @@ -92,6 +144,7 @@ JSON/Mongo Example "name": "Department of Physics" } }, + "month": "May", "name": "Columbia University", "schools": { "seas": { @@ -105,5 +158,63 @@ JSON/Mongo Example }, "state": "NY", "street": "500 W 120th St", + "updated": "2020-05-30", + "uuid": "avacazdraca345rfsvwre", + "year": 2020, "zip": "10027" } + { + "_id": "usouthcarolina", + "aka": [ + "The University of South Carolina" + ], + "city": "Columbia", + "country": "USA", + "day": 30, + "departments": { + "apam": { + "aka": [ + "APAM" + ], + "name": "Department of Applied Physics and Applied Mathematics" + }, + "chemistry": { + "aka": [ + "Chemistry", + "Dept. of Chemistry" + ], + "name": "Department of Chemistry" + }, + "mechanical engineering": { + "aka": [ + "Mechanical", + "Dept. of Mechanical" + ], + "name": "Department of Mechanical Engineering" + }, + "physics": { + "aka": [ + "Dept. of Physics", + "Physics" + ], + "name": "Department of Physics" + } + }, + "month": "May", + "name": "The University of South Carolina", + "schools": { + "cec": { + "aka": [ + "CEC", + "College of Engineering and Computing" + ], + "name": "College of Engineering and Computing" + } + }, + "state": "SC", + "street": "1716 College Street", + "updated": "2020-06-30", + "uuid": "4E89A0DD-19AE-45CC-BCB4-83A2D84545E3", + "year": 2020, + "zip": "29208" + } diff --git a/doc/source/collections/meetings.rst b/doc/source/collections/meetings.rst new file mode 100644 index 000000000..44cffd443 --- /dev/null +++ b/doc/source/collections/meetings.rst @@ -0,0 +1,304 @@ +Meetings +======== +the group meeting. + +Schema +------ +The following lists key names mapped to its type and meaning for each entry. + +:_id: string, unique identifier for the date of the group meeting, required +:actions: list, action items expected from the group members for that particular meeting week, required +:agenda: list, schedule of the current meeting, required +:buddies: list, list of pairs of group members that are selected for the buddy round robin, required +:date: ['string', 'datetime', 'date'], date of meeting in format YYYY-MM-DD, optional +:day: integer, day of the group meeting, or the day the entry was edited, optional +:journal_club: dict, Journal club presentation in group meeting, optional + + :doi: string, The doi of the journal club presentation paper. tbd if it is not known yet, optional + :link: string, the url to the repo, google slide location, or other web location where the presentation can be found, optional + :presenter: string, The _id of the group member presenting, or a string describing the presenter, e.g., their full name., optional + :title: string, The title of the talk., optional +:lead: string, person who will be leading the meeting of the current week, required +:minutes: list, meeting notes in a chronological order according to comments made by the group members, required +:month: ['string', 'integer'], month in which the meeting is taking place, required +:place: string, location where the meeting is taking place on campus, optional +:presentation: dict, indicating the title of the presentation along with the link and the presenter , optional + + :title: string, The title of the presentation. tbd if it is not known yet, optional + :link: string, the url to the repo, google slide location, or other web location where the presentation can be found, optional + :presenter: string, The _id of the group member presenting or a string describing the person., optional +:scribe: string, person who will be taking notes and updating minutes accordingly, required +:time: ['string', 'integer', 'datetime'], the time of the meetingIf an integer is minutes past midnight, so 13:30 is 810 forexample., optional +:updated: ['string', 'datetime', 'date'], The datetime.date object of the most recent update, optional +:uuid: string, A uuid for the entry, optional +:year: integer, year the meeting took place, required + + +YAML Example +------------ + +.. code-block:: yaml + + grp1000-01-01: + actions: + - (Everyone) Update overdue milestones + - (Professor Billinge) Explore, and plan a machine learning project for DSI + - (Professor Billinge, Emil, Yevgeny, Songsheng) Come up with a Kaggle competition + for this DSI project + - (Emil) Set up the slack channel for the DSI project + agenda: + - Review actions + - Fargo is not free on any streaming platforms + - Review Airtable for deliverables and celebrate + - Mention diversity action initiative + - Songsheng's journal club presentation + - (Vivian and Zicheng) Finish rest of crystallography presentation next week + - Emil's 7th inning Yoga Stretch + - Crystallography talk + - Presentation + buddies: + - ' Jaylyn C. Umana, Simon J. L. Billinge' + - ' Long Yang, Emil Kjaer' + - ' Sani Harouna-Mayer, Akshay Choudhry' + - ' Vivian Lin, Songsheng Tao' + - ' Ran Gu, Adiba Ejaz' + - ' Zach Thatcher, Yevgeny Rakita' + - " Zicheng 'Taylor' Liu, Eric Shen " + - ' Hung Vuong, Daniela Hikari Yano' + - ' Ahmed Shaaban, Jiawei Zang' + - ' Berrak Ozer, Michael Winitch' + - ' Shomik Ghose' + day: 1 + journal_club: + doi: 10.1107/S2053273319005606 + link: https://link/to/my/talk.ppt + presenter: sbillinge + title: what the paper was about and more + lead: sbillinge + minutes: + - Talked about eyesight and prescription lenses + - Professor Billinge tells everyone a Logician/Mathematician joke + - Mentioned pyjokes, a package in Python that lists bad jokes + - Jaylyn greets everyone + - Reviewed action items from last time + - Talked about fargo, and the merits (or lack thereof) of the Dakotas + - Celebrated finished prums + - Songhsheng holds journal club presentation on Machine Learning techniques + - Discussed Linear Classification, Gradient Descent, Perceptrons, Convolution + and other ML topics + - Discussed how we can derive scientific meaning from ML algorithms + - Discussed real space versus reciprocal space + - Finished journal club, had to postpone Akshay's presentation, and the Yoga session + to next week + month: 1 + place: Mudd 1106 + presentation: + link: 2007ac_grpmtg + presenter: sbillinge + title: PDF Distance Extraction + scribe: sbillinge + time: '0' + updated: '2020-07-31 23:27:50.764475' + uuid: 3fbee8d9-e283-48e7-948f-eecfc2a123b7 + year: 1000 + grp2020-07-31: + actions: + - (Everyone) Update overdue milestones + - (Professor Billinge) Explore, and plan a machine learning project for DSI + - (Professor Billinge, Emil, Yevgeny, Songsheng) Come up with a Kaggle competition + for this DSI project + - (Emil) Set up the slack channel for the DSI project + agenda: + - Review actions + - Fargo is not free on any streaming platforms + - Review Airtable for deliverables and celebrate + - Mention diversity action initiative + - Songsheng's journal club presentation + - (Vivian and Zicheng) Finish rest of crystallography presentation next week + - Emil's 7th inning Yoga Stretch + - Crystallography talk + - Presentation + buddies: + - ' Jaylyn C. Umana, Simon J. L. Billinge' + - ' Long Yang, Emil Kjaer' + - ' Sani Harouna-Mayer, Akshay Choudhry' + - ' Vivian Lin, Songsheng Tao' + - ' Ran Gu, Adiba Ejaz' + - ' Zach Thatcher, Yevgeny Rakita' + - " Zicheng 'Taylor' Liu, Eric Shen " + - ' Hung Vuong, Daniela Hikari Yano' + - ' Ahmed Shaaban, Jiawei Zang' + - ' Berrak Ozer, Michael Winitch' + - ' Shomik Ghose' + day: 1 + journal_club: + doi: 10.1107/S2053273319005606 + link: http://myslides.com/link/to/2007ac_grpmtg + presenter: not_a_valid_group_id + lead: sbillinge + minutes: + - Talked about eyesight and prescription lenses + - Professor Billinge tells everyone a Logician/Mathematician joke + - Mentioned pyjokes, a package in Python that lists bad jokes + - Jaylyn greets everyone + - Reviewed action items from last time + - Talked about fargo, and the merits (or lack thereof) of the Dakotas + - Celebrated finished prums + - Songhsheng holds journal club presentation on Machine Learning techniques + - Discussed Linear Classification, Gradient Descent, Perceptrons, Convolution + and other ML topics + - Discussed how we can derive scientific meaning from ML algorithms + - Discussed real space versus reciprocal space + - Finished journal club, had to postpone Akshay's presentation, and the Yoga session + to next week + month: 1 + place: Mudd 1106 + presentation: + link: 2007ac_grpmtg + presenter: not_a_valid_group_id + title: PDF Distance Extraction + scribe: sbillinge + time: '0' + updated: '2020-07-31 23:27:50.764475' + uuid: 3fbee8d9-e283-48e7-948f-eecfc2a123b7 + year: 7000 + + +JSON/Mongo Example +------------------ + +.. code-block:: json + + { + "_id": "grp1000-01-01", + "actions": [ + "(Everyone) Update overdue milestones", + "(Professor Billinge) Explore, and plan a machine learning project for DSI", + "(Professor Billinge, Emil, Yevgeny, Songsheng) Come up with a Kaggle competition for this DSI project", + "(Emil) Set up the slack channel for the DSI project" + ], + "agenda": [ + "Review actions", + "Fargo is not free on any streaming platforms", + "Review Airtable for deliverables and celebrate", + "Mention diversity action initiative", + "Songsheng's journal club presentation", + "(Vivian and Zicheng) Finish rest of crystallography presentation next week", + "Emil's 7th inning Yoga Stretch", + "Crystallography talk", + "Presentation" + ], + "buddies": [ + " Jaylyn C. Umana, Simon J. L. Billinge", + " Long Yang, Emil Kjaer", + " Sani Harouna-Mayer, Akshay Choudhry", + " Vivian Lin, Songsheng Tao", + " Ran Gu, Adiba Ejaz", + " Zach Thatcher, Yevgeny Rakita", + " Zicheng 'Taylor' Liu, Eric Shen ", + " Hung Vuong, Daniela Hikari Yano", + " Ahmed Shaaban, Jiawei Zang", + " Berrak Ozer, Michael Winitch", + " Shomik Ghose" + ], + "day": 1, + "journal_club": { + "doi": "10.1107/S2053273319005606", + "link": "https://link/to/my/talk.ppt", + "presenter": "sbillinge", + "title": "what the paper was about and more" + }, + "lead": "sbillinge", + "minutes": [ + "Talked about eyesight and prescription lenses", + "Professor Billinge tells everyone a Logician/Mathematician joke", + "Mentioned pyjokes, a package in Python that lists bad jokes", + "Jaylyn greets everyone", + "Reviewed action items from last time", + "Talked about fargo, and the merits (or lack thereof) of the Dakotas", + "Celebrated finished prums", + "Songhsheng holds journal club presentation on Machine Learning techniques", + "Discussed Linear Classification, Gradient Descent, Perceptrons, Convolution and other ML topics", + "Discussed how we can derive scientific meaning from ML algorithms", + "Discussed real space versus reciprocal space", + "Finished journal club, had to postpone Akshay's presentation, and the Yoga session to next week" + ], + "month": 1, + "place": "Mudd 1106", + "presentation": { + "link": "2007ac_grpmtg", + "presenter": "sbillinge", + "title": "PDF Distance Extraction" + }, + "scribe": "sbillinge", + "time": "0", + "updated": "2020-07-31 23:27:50.764475", + "uuid": "3fbee8d9-e283-48e7-948f-eecfc2a123b7", + "year": 1000 + } + { + "_id": "grp2020-07-31", + "actions": [ + "(Everyone) Update overdue milestones", + "(Professor Billinge) Explore, and plan a machine learning project for DSI", + "(Professor Billinge, Emil, Yevgeny, Songsheng) Come up with a Kaggle competition for this DSI project", + "(Emil) Set up the slack channel for the DSI project" + ], + "agenda": [ + "Review actions", + "Fargo is not free on any streaming platforms", + "Review Airtable for deliverables and celebrate", + "Mention diversity action initiative", + "Songsheng's journal club presentation", + "(Vivian and Zicheng) Finish rest of crystallography presentation next week", + "Emil's 7th inning Yoga Stretch", + "Crystallography talk", + "Presentation" + ], + "buddies": [ + " Jaylyn C. Umana, Simon J. L. Billinge", + " Long Yang, Emil Kjaer", + " Sani Harouna-Mayer, Akshay Choudhry", + " Vivian Lin, Songsheng Tao", + " Ran Gu, Adiba Ejaz", + " Zach Thatcher, Yevgeny Rakita", + " Zicheng 'Taylor' Liu, Eric Shen ", + " Hung Vuong, Daniela Hikari Yano", + " Ahmed Shaaban, Jiawei Zang", + " Berrak Ozer, Michael Winitch", + " Shomik Ghose" + ], + "day": 1, + "journal_club": { + "doi": "10.1107/S2053273319005606", + "link": "http://myslides.com/link/to/2007ac_grpmtg", + "presenter": "not_a_valid_group_id" + }, + "lead": "sbillinge", + "minutes": [ + "Talked about eyesight and prescription lenses", + "Professor Billinge tells everyone a Logician/Mathematician joke", + "Mentioned pyjokes, a package in Python that lists bad jokes", + "Jaylyn greets everyone", + "Reviewed action items from last time", + "Talked about fargo, and the merits (or lack thereof) of the Dakotas", + "Celebrated finished prums", + "Songhsheng holds journal club presentation on Machine Learning techniques", + "Discussed Linear Classification, Gradient Descent, Perceptrons, Convolution and other ML topics", + "Discussed how we can derive scientific meaning from ML algorithms", + "Discussed real space versus reciprocal space", + "Finished journal club, had to postpone Akshay's presentation, and the Yoga session to next week" + ], + "month": 1, + "place": "Mudd 1106", + "presentation": { + "link": "2007ac_grpmtg", + "presenter": "not_a_valid_group_id", + "title": "PDF Distance Extraction" + }, + "scribe": "sbillinge", + "time": "0", + "updated": "2020-07-31 23:27:50.764475", + "uuid": "3fbee8d9-e283-48e7-948f-eecfc2a123b7", + "year": 7000 + } diff --git a/doc/source/collections/people.rst b/doc/source/collections/people.rst index af2f882d8..77625fb56 100644 --- a/doc/source/collections/people.rst +++ b/doc/source/collections/people.rst @@ -7,25 +7,67 @@ Schema The following lists key names mapped to its type and meaning for each entry. :_id: string, unique identifier for the group member, required -:active: boolean, If the person is an active member, default True., optional +:active: boolean, If the person is an active member, default true., optional +:activities: list, activities may be teaching or research things, optional + + :type: dict, optional + + :day: integer, the day the activity took place, optional + :type: string, the type of the activity, optional + + Allowed values: + * teaching + * research + :month: ['integer', 'string'], the month the activity took place, optional + :name: string, brief statement of the activity, optional + :other: string, longer statement of the activity, optional + :year: integer, the year the activity took place, optional :aka: ['string', 'list'], list of aliases (also-known-as), useful for identifying the group member in citations or elsewhere., required +:appointments: dict, begin and end date, grant loading status and notes about appointments, optional :avatar: string, URL to avatar, required :bio: string, short biographical text, required -:collab: boolean, If the person is a collaborator, default False., optional +:bios: ['string', 'list'], longer biographical text if needed, optional +:collab: boolean, If the person is a collaborator, default false., optional +:committees: list, Committees that are served on, optional + + :type: dict, optional + + :name: string, name of committee, or person if it is a phd committee, optional + :day: integer, optional + :month: ['string', 'integer'], optional + :notes: ['string', 'list'], extra things you want to record about the thing, optional + :year: integer, optional + :unit: string, name of department or school etc., optional + :type: string, type of committee, department, school, university, external, optional + + Allowed values: + * phdoral + * phddefense + * phdproposal + * promotion + :level: string, department or school or university, or external, optional + + Allowed values: + * department + * school + * university + * external + :group: string, this employment is/was ina group in groups coll, optional :education: list, This contains the educational information for the group member., required :type: dict, optional + :advisor: string, name or id of advisor for this degree, optional :begin_day: integer, optional :begin_month: ['string', 'integer'], optional :begin_year: integer, optional :degree: string, optional - :department: string, department withinthe institution, optional + :department: string, department within the institution, optional :group: string, this employment is/was ina group in groups coll, optional :end_day: integer, optional :end_month: ['string', 'integer'], optional :end_year: integer, optional - :gpa: ('float', 'string'), optional + :gpa: ['float', 'string'], optional :institution: string, optional :location: string, optional :other: list, optional @@ -34,19 +76,104 @@ The following lists key names mapped to its type and meaning for each entry. :type: dict, optional + :advisor: string, name or id of advisor/mentor/manager, optional :begin_day: integer, optional :begin_month: ['string', 'integer'], optional :begin_year: integer, optional + :begin_date: ['string', 'date', 'datetime'], begin date of employment in format YYYY-MM-DD, optional + :coworkers: list, list of coworkers. If position is editor, these are assumed to be coeditors inconflict of interest builder, optional :department: string, optional :end_day: integer, optional - :end_month: ['string', 'integer'], optional :end_year: integer, optional + :end_date: ['string', 'date', 'datetime'], end date of employment in format YYYY-MM-DD, optional :group: string, this employment is/was ina group in groups coll, optional :location: string, optional + :not_in_cv: boolean, set to true if you want to suppress this entry in all cv's and resumes, optional :organization: string, optional :other: list, optional + :permanent: boolean, true if the position is open ended and has no fixed end-date, optional :position: string, optional + + Allowed values: + * ``''`` + * editor + * unknown + * undergraduate research assistant + * undergraduate researcher + * intern + * visiting student + * research assistant + * masters research assistant + * masters researcher + * graduate research assistant + * teaching assistant + * post-doctoral scholar + * research fellow + * assistant scientist + * assistant lecturer + * research scientist + * lecturer + * adjunct scientist + * senior assistant lecturer + * research associate + * reader + * ajunct professor + * adjunct professor + * consultant + * programer + * programmer + * visiting scientist + * research assistant professor + * associate scientist + * assistant professor + * assistant physicist + * associate professor + * associate physicist + * professor emeritus + * visiting professor + * manager + * director + * scientist + * engineer + * physicist + * president + * professor + * distinguished professor + :position_full: string, The full on title of the position. This will be typeset if it is here, or if not Position will be used. Position will be used for sorting and must come from a fixed list of positions, optional :status: string, optional + + Allowed values: + * pi + * adjunct + * high-school + * undergrad + * ms + * phd + * postdoc + * visitor-supported + * visitor-unsupported + * research-associate +:facilities: list, facilities may be teaching or research things, optional + + :type: dict, optional + + :begin_day: integer, the day facility, or the wish for the facility, started, optional + :end_day: integer, the day facility started, optional + :type: string, the type of the facility. Columbia asksfor wished-for facilities, so there are teaching-wish and research-wish fields., optional + + Allowed values: + * teaching + * research + * shared + * other + * teaching_wish + * research_wish + :begin_month: ['integer', 'string'], the month the facility (or wish) started, optional + :end_month: ['integer', 'string'], the month the faclity went away, optional + :name: string, description of the facility, optional + :notes: ['string', 'list'], anything else you want to jot down, optional + :begin_year: integer, the year the facility (or wish) started, optional + :end_year: integer, the year the facility (or wish) went away, optional :funding: list, Funding and scholarship that the group member has individually obtained in the past. **WARNING:** this is not to be confused with the **grants** collection, optional :type: dict, optional @@ -55,9 +182,24 @@ The following lists key names mapped to its type and meaning for each entry. :duration: string, optional :month: ['string', 'integer'], optional :name: string, optional - :value: ('float', 'integer'), optional + :value: ['float', 'integer'], optional :year: integer, optional -:google_scholar_url: string, URL of your Google Scholar rofile, optional +:github_id: string, Your GitHub ID, optional +:google_scholar_url: string, URL of your Google Scholar profile, optional +:grp_mtg_active: boolean, Whether to schedule tasks at group meeting or not, optional +:hindex: list, details of hindex pulled on a certain date, optional + + :type: dict, optional + + :h: integer, the value of the h index, optional + :h_last_five: integer, h index over past 5 years, optional + :citations: integer, total number of citations, optional + :citations_last_five: integer, number of citations in the past 5 years, optional + :origin: string, where the numbers came from, optional + :since: integer, year of first citation, optional + :year: integer, year when the data were pulled, optional + :month: ['string', 'integer'], month when the data were pulled, optional + :day: integer, day when the data were pulled, optional :home_address: dict, The person's home address, optional :street: string, street address, optional @@ -73,6 +215,7 @@ The following lists key names mapped to its type and meaning for each entry. :name: string, optional :year: integer, optional :initials: string, The canonical initials for this group member, optional +:linkedin_url: string, The URL of this person's LinkedIn account, optional :membership: list, Professional organizations this member is a part of, optional :type: dict, optional @@ -85,31 +228,79 @@ The following lists key names mapped to its type and meaning for each entry. :organization: string, optional :position: string, optional :website: string, optional +:miscellaneous: dict, Place to put weird things needed for special reporta, optional + + :metrics_for_success: list, How do I want to be judged, optional :name: string, Full, canonical name for the person, required +:office: string, The person's office, optional :orcid_id: string, The ORCID ID of the person, optional :position: string, such as professor, graduate student, or scientist, optional Allowed values: * ``''`` + * editor + * unknown * undergraduate research assistant - * graduate research assistant + * undergraduate researcher + * intern + * visiting student * research assistant + * masters research assistant + * masters researcher + * graduate research assistant + * teaching assistant * post-doctoral scholar + * research fellow * assistant scientist + * assistant lecturer * research scientist - * associate scientist + * lecturer + * adjunct scientist + * senior assistant lecturer * research associate + * reader * ajunct professor + * adjunct professor + * consultant * programer * programmer * visiting scientist * research assistant professor + * associate scientist * assistant professor + * assistant physicist * associate professor + * associate physicist * professor emeritus + * visiting professor + * manager + * director * scientist * engineer + * physicist + * president * professor + * distinguished professor +:position_full: string, The full on title of the position. This will be typeset if it is here, or if not Position will be used. Position will be used for sorting and must come from a fixed list of positions, optional +:publicity: list, summary of publicity that person has received, optional + + :type: dict, optional + + :type: string, optional + + Allowed values: + * online + * article + :topic: string, The short sentence of what the publicity was about, optional + :title: string, The title of the piece, optional + :date: ['string', 'date'], the date of the service, optional + :day: integer, The day the piece appeared, optional + :month: ['string', 'integer'], The month the piece appeared, optional + :publication: string, The place where the publicity was placed, optional + :text: string, The text of the publicity, optional + :url: string, The URL where the piece may be found, optional + :year: integer, The year the piece appeared, optional + :grant: string, The identifier of the grant associated with the piece, optional :research_focus_areas: list, summary of research projects that are ongoing. Usedin Annual appraisal for example, optional :type: dict, optional @@ -117,18 +308,35 @@ The following lists key names mapped to its type and meaning for each entry. :begin_year: integer, optional :end_year: integer, optional :description: string, optional +:research_summary: string, Brief summary of overarching research goals, optional :service: list, Service that this group member has provided, optional :type: dict, optional + :date: ['string', 'date'], the date of the service, optional + :begin_date: ['string', 'date'], the begin date, optional + :end_date: ['string', 'date'], the end date, optional :description: string, optional :duration: string, optional :month: ['string', 'integer'], Use month and year if the servicedoesn't extend more than one year.Otherwise use begin_year and end_year, optional :name: string, optional + :role: string, the role played in the activity, e.g., co-chair, optional + :notes: ['string', 'list'], optional :year: integer, optional :begin_year: integer, optional + :begin_day: integer, optional + :begin_month: ['string', 'integer'], Use month and year if the servicedoesn't extend more than one year.Otherwise use begin_year/month and end_year/month, optional :end_year: integer, optional + :end_month: ['string', 'integer'], Use month and year if the servicedoesn't extend more than one year.Otherwise use begin_year and end_year, optional + :end_day: integer, optional :other: ['string', 'list'], optional + :type: string, profession, department, school, university, optional + + Allowed values: + * profession + * university + * school + * department :skills: list, Skill the group member has, optional :type: dict, optional @@ -141,13 +349,28 @@ The following lists key names mapped to its type and meaning for each entry. :type: dict, optional :course: string, optional + :courseid: string, optional :description: string, optional :end_month: ['string', 'integer'], optional :end_year: integer, optional + :enrollment: ['integer', 'string'], optional + :evaluation: dict, optional + + :response_rate: number, optional + :amount_learned: number, optional + :appropriateness_workload: number, optional + :course_overall: number, optional + :fairness_grading: number, optional + :organization: number, optional + :classroom_delivery: number, optional + :approachability: number, optional + :instructor_overall: number, optional + :comments: list, student comments, optional :materials: string, optional :month: ['string', 'integer'], optional :organization: string, optional :position: string, optional + :semester: string, optional :syllabus: string, optional :video: string, optional :website: string, optional @@ -160,6 +383,302 @@ YAML Example .. code-block:: yaml + abeing: + active: false + aka: + - being + - human + - person + avatar: https://xkcd.com/1221/ + bio: Abstract Being is an exemplar human existence + education: + - begin_year: 2010 + degree: bachelors + institution: University of Laughs + employment: + - begin_date: '2015-06-01' + end_date: '2015-08-31' + group: bg + organization: columbiau + position: intern + - begin_date: '2020-01-01' + end_date: '2030-12-31' + group: agroup + organization: usouthcarolina + position: intern + - begin_date: '2010-06-01' + end_date: '2012-08-31' + group: ergs + organization: columbiau + position: intern + - begin_date: '2017-06-01' + end_date: '2019-08-31' + group: bg + organization: columbiau + position: intern + name: Abstract Being + position: intern + sbillinge: + active: true + activities: + - name: course development + other: Developed a new course for Materials Science + type: teaching + year: 2018 + aka: + - Billinge + avatar: https://avatars1.githubusercontent.com/u/320553?v=3&s=200 + bio: Simon teaches and does research + committees: + - level: department + name: Same Old + notes: something + type: phddefense + unit: Materials Science + year: 2018 + education: + - advisor: scopatz + begin_year: 2008 + degree: Ph.D. Mechanical Engineering, Nuclear and Radiation Engineering Program + department: apam + end_year: 2011 + group: ergs + institution: The University of Texas at Austin + location: Austin, TX + other: + - 'Adviser: Erich A. Schneider' + - 'Dissertation: Essential Physics for Fuel Cycle Modeling & Analysis' + email: sb2896@columbia.edu + employment: + - advisor: scopatz + begin_year: 2015 + group: ergs + location: Columbia, SC + organization: The University of South Carolina + other: + - 'Cyclus: An agent-based, discrete time nuclear fuel cycle simulator.' + - 'PyNE: The Nuclear Engineering Toolkit.' + - 'Website: http://www.ergs.sc.edu/' + position: assistant professor + status: phd + facilities: + - begin_year: 2015 + name: Shared {Habanero} compute cluster + type: other + - begin_year: 2015 + name: Shared access to wet lab + type: research_wish + - begin_year: 2017 + name: Courseworks2 + type: teaching + - begin_year: 2019 + name: nothing right now + type: teaching_wish + - begin_year: 2008 + name: I don't have one + type: research + funding: + - name: Omega Laser User's Group Travel Award + value: 1100 + year: 2013 + - name: NIF User's Group Travel Award + value: 1150 + year: 2013 + google_scholar_url: https://scholar.google.com/citations?user=dRm8f + grp_mtg_active: true + hindex: + - citations: 17890 + citations_last_five: 8817 + day: 12 + h: 65 + h_last_five: 43 + month: May + origin: Google Scholar + since: 1991 + year: 2019 + home_address: + city: The big apple + state: plasma + street: 123 Wallabe Ln + zip: '007' + initials: SJLB + linkedin_url: https://scholar.google.com/citations?hl=en&user=PAJ + membership: + - begin_year: 2006 + organization: American Nuclear Society + position: Member + miscellaneous: + metrics_for_success: + - publications(quality, quantity) + - invite talks + - funding + - citations + name: Simon J. L. Billinge + office: 1105 Seely W. Mudd Building (inner office) + orcid_id: 0000-0002-9432-4248 + position: professor + publicity: + - date: '2019-07-24' + day: 24 + grant: bnlldrd18 + month: Jul + publication: Brookhaven National Laboratory Web Story + title: An awesome project and well worth the money + topic: LDRD Provenance project + type: online + url: http://www.google.com + year: 2019 + research_focus_areas: + - begin_year: 2010 + description: software applied to materials engineering and life + service: + - month: August + name: 'Master of Ceremonies and Organizer Brown University Chemistry: Believe + it or Not public chemistry demonstration' + type: profession + year: 2017 + - begin_date: '2018-01-01' + end_date: '2018-01-01' + name: Applied Physics program committee + type: department + - date: '2017-06-01' + name: Ad hoc tenure committee + notes: Albert Einstein + type: school + - month: 12 + name: Co-organizer JUAMI + other: + - great way to meet people + role: co-organizer + type: profession + year: 2017 + skills: + - category: Programming Languages + level: expert + name: Python + teaching: + - course: 'MSAE-3010: Introduction to Materials Science' + courseid: f16-3010 + description: This course is an introduction to nuclear physics. + enrollment: 18 + evaluation: + amount_learned: 4.57 + approachability: 4.86 + appropriateness_workload: 4.29 + classroom_delivery: 4.29 + comments: + - Great teacher but disorganized + - Wears pink pants. Why? + course_overall: 4.43 + fairness_grading: 4.57 + instructor_overall: 4.43 + organization: 4.0 + response_rate: 58.33 + month: August + organization: Columbia University + position: professor + semester: Fall + syllabus: https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc + year: 2016 + - course: 'MSAE-3010: Introduction to Materials Science' + courseid: f17-3010 + description: This course is an introduction to nuclear physics. + enrollment: 18 + evaluation: + amount_learned: 4.57 + approachability: 4.86 + appropriateness_workload: 4.29 + classroom_delivery: 4.29 + comments: + - Great teacher but disorganized + - Wears pink pants. Why? + course_overall: 4.43 + fairness_grading: 4.57 + instructor_overall: 4.43 + organization: 4.0 + response_rate: 58.33 + month: August + organization: Columbia University + position: professor + semester: Fall + syllabus: https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc + year: 2017 + - course: 'MSAE-3010: Introduction to Materials Science' + courseid: s18-3010 + description: This course is an introduction to nuclear physics. + enrollment: 18 + evaluation: + amount_learned: 4.57 + approachability: 4.86 + appropriateness_workload: 4.29 + classroom_delivery: 4.29 + comments: + - Great teacher but disorganized + - Wears pink pants. Why? + course_overall: 4.43 + fairness_grading: 4.57 + instructor_overall: 4.43 + organization: 4.0 + response_rate: 58.33 + month: Jan + organization: Columbia University + position: professor + semester: Spring + syllabus: https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc + year: 2018 + - course: 'MSAE-3010: Introduction to Materials Science' + courseid: s17-3010 + description: This course is an introduction to nuclear physics. + enrollment: 18 + evaluation: + amount_learned: 4.57 + approachability: 4.86 + appropriateness_workload: 4.29 + classroom_delivery: 4.29 + comments: + - Great teacher but disorganized + - Wears pink pants. Why? + course_overall: 4.43 + fairness_grading: 4.57 + instructor_overall: 4.43 + organization: 4.0 + response_rate: 58.33 + month: Jan + organization: Columbia University + position: professor + semester: Spring + syllabus: https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc + year: 2017 + - course: 'MSAE-3010: Introduction to Materials Science' + courseid: s19-3010 + description: This course is an introduction to nuclear physics. + enrollment: 18 + month: Jan + organization: Columbia University + position: professor + semester: Spring + syllabus: https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc + year: 2019 + - course: 'MSAE-3010: Introduction to Materials Science' + courseid: f18-3010 + description: This course is an introduction to nuclear physics. + enrollment: 18 + month: August + organization: Columbia University + position: professor + semester: Fall + syllabus: https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc + year: 2018 + - course: 'MSAE-3010: Introduction to Materials Science' + courseid: f19-3010 + description: This course is an introduction to nuclear physics. + month: August + organization: Columbia University + position: professor + semester: Fall + syllabus: https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc + year: 2019 + title: Dr. scopatz: aka: - Scopatz @@ -167,10 +686,84 @@ YAML Example - Scopatz, A. - Scopatz, A M - Anthony Michael Scopatz + appointments: + f19: + begin_day: 1 + begin_month: 2 + begin_year: 2019 + end_day: 31 + end_month: 3 + end_year: 2019 + grant: dmref15 + loading: 0.75 + notes: + - forgetmenot + status: finalized + type: pd + s20: + begin_date: '2020-01-01' + end_date: '2020-05-15' + grant: sym + loading: 1.0 + notes: + - fully appointed + - outdated grant + status: finalized + type: pd + ss20: + begin_date: '2020-06-01' + end_date: '2020-08-31' + grant: abc42 + loading: 0.8 + notes: [] + status: proposed + type: ss + ss21: + begin_date: '2020-09-01' + end_date: '2021-08-31' + grant: future_grant + loading: 1.0 + notes: [] + status: proposed + type: ss avatar: https://avatars1.githubusercontent.com/u/320553?v=3&s=200 bio: Anthony Scopatz is currently an Assistant Professor + bios: + - Anthony Scopatz is currently an Assistant Professor but will go on to do great + things + committees: + - day: 1 + level: department + month: 3 + name: Heather Stanford + type: phdoral + unit: apam + year: 2020 + - day: 1 + level: school + month: 3 + name: Heather Stanford + type: promotion + unit: seas + year: 2020 + - day: 1 + level: external + month: 3 + name: Heather Stanford + notes: something else to remember about it, not published + type: phddefense + unit: U Denmark + year: 2020 + - day: 1 + level: university + month: 3 + name: Heather Stanford + type: promotion + unit: columbiau + year: 2020 education: - - begin_year: 2008 + - advisor: scopatz + begin_year: 2008 degree: Ph.D. Mechanical Engineering, Nuclear and Radiation Engineering Program department: apam end_year: 2011 @@ -207,7 +800,10 @@ YAML Example location: land, mostly email: scopatz@cec.sc.edu employment: - - begin_year: 2015 + - advisor: scopatz + begin_year: 2015 + coworkers: + - afriend group: ergs location: Columbia, SC organization: The University of South Carolina @@ -215,8 +811,12 @@ YAML Example - 'Cyclus: An agent-based, discrete time nuclear fuel cycle simulator.' - 'PyNE: The Nuclear Engineering Toolkit.' - 'Website: http://www.ergs.sc.edu/' - position: Assistant Professor, Mechanical Engineering Department - - begin_day: 1 + permanent: true + position: assistant professor + position_full: Assistant Professor, Mechanical Engineering Department + status: ms + - advisor: scopatz + begin_day: 1 begin_month: Jun begin_year: 2013 department: Physics @@ -229,7 +829,9 @@ YAML Example - 'Cyclus: An agent-based, discrete time nuclear fuel cycle simulator.' - 'PyNE: The Nuclear Engineering Toolkit.' - 'Website: https://cnerg.github.io/' - position: Associate Scientist, Engineering Physics Department + position: associate scientist + position_full: Associate Scientist, Engineering Physics Department + status: undergrad - begin_day: 1 begin_month: Nov begin_year: 2011 @@ -247,8 +849,16 @@ YAML Example FLASH.' - 'OpacPlot: HDF5-based equation of state and opacity file format.' - 'Website: http://flash.uchicago.edu/site/' - position: Research Scientist, Postdoctoral Scholar - status: PI + position: post-doctoral scholar + position_full: Research Scientist, Postdoctoral Scholar + status: pi + - begin_date: '2000-01-01' + end_date: '2001-12-31' + location: Chicago, IL + not_in_cv: true + organization: Google + other: [] + position: janitor funding: - name: Omega Laser User's Group Travel Award value: 1100 @@ -256,7 +866,18 @@ YAML Example - name: NIF User's Group Travel Award value: 1150 year: 2013 + github_id: ascopatz google_scholar_url: https://scholar.google.com/citations?user=dRm8f + hindex: + - citations: 19837 + citations_last_five: 9419 + day: 19 + h: 25 + h_last_five: 46 + month: 2 + origin: Google Scholar + since: 1991 + year: 2020 home_address: city: The big apple state: plasma @@ -277,13 +898,18 @@ YAML Example - begin_year: 2010 description: software applied to nuclear engineering and life service: - - name: 'Master of Ceremonies and Organizer Brown University "Chemistry: Believe - it or Not" public chemistry demonstration' - year: 2013 - - begin_year: 2012 - end_year: 2014 - name: Renewable Energy Presenter and Facility Tour Guide at the NSLS "Science - Sunday" laboratory open house at Brookhaven National Laboratory + - month: 3 + name: International Steering Committee + notes: + - something + role: chair + type: profession + year: 2020 + - begin_year: 2018 + end_year: 2021 + name: National Steering Committee + notes: something + type: profession skills: - category: Programming Languages level: expert @@ -293,17 +919,35 @@ YAML Example name: Cython teaching: - course: 'EMCH 552: Intro to Nuclear Engineering' + courseid: EMCH 552 description: This course is an introduction to nuclear physics. + enrollment: tbd month: August organization: University of South Carolina - position: Professor + position: professor + semester: Spring syllabus: https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc year: 2017 - course: 'EMCH 558/758: Reactor Power Systems' + courseid: EMCH 558 description: This course covers conventional reactors. + enrollment: 28 + evaluation: + amount_learned: 3.5 + approachability: 4.3 + appropriateness_workload: 3.15 + classroom_delivery: 4 + comments: + - super duper + - dandy + course_overall: 3.67 + fairness_grading: 3.54 + instructor_overall: 3.5 + organization: 3.25 + response_rate: 66.76 month: January organization: University of South Carolina - position: Professor + position: professor syllabus: https://docs.google.com/document/d/1uMAx_KFZK9ugYyF6wWtLLWgITVhaTBkAf8-PxiboYdM/edit?usp=sharing year: 2017 title: Dr. @@ -314,6 +958,400 @@ JSON/Mongo Example .. code-block:: json + { + "_id": "abeing", + "active": false, + "aka": [ + "being", + "human", + "person" + ], + "avatar": "https://xkcd.com/1221/", + "bio": "Abstract Being is an exemplar human existence", + "education": [ + { + "begin_year": 2010, + "degree": "bachelors", + "institution": "University of Laughs" + } + ], + "employment": [ + { + "begin_date": "2015-06-01", + "end_date": "2015-08-31", + "group": "bg", + "organization": "columbiau", + "position": "intern" + }, + { + "begin_date": "2020-01-01", + "end_date": "2030-12-31", + "group": "agroup", + "organization": "usouthcarolina", + "position": "intern" + }, + { + "begin_date": "2010-06-01", + "end_date": "2012-08-31", + "group": "ergs", + "organization": "columbiau", + "position": "intern" + }, + { + "begin_date": "2017-06-01", + "end_date": "2019-08-31", + "group": "bg", + "organization": "columbiau", + "position": "intern" + } + ], + "name": "Abstract Being", + "position": "intern" + } + { + "_id": "sbillinge", + "active": true, + "activities": [ + { + "name": "course development", + "other": "Developed a new course for Materials Science", + "type": "teaching", + "year": 2018 + } + ], + "aka": [ + "Billinge" + ], + "avatar": "https://avatars1.githubusercontent.com/u/320553?v=3&s=200", + "bio": "Simon teaches and does research", + "committees": [ + { + "level": "department", + "name": "Same Old", + "notes": "something", + "type": "phddefense", + "unit": "Materials Science", + "year": 2018 + } + ], + "education": [ + { + "advisor": "scopatz", + "begin_year": 2008, + "degree": "Ph.D. Mechanical Engineering, Nuclear and Radiation Engineering Program", + "department": "apam", + "end_year": 2011, + "group": "ergs", + "institution": "The University of Texas at Austin", + "location": "Austin, TX", + "other": [ + "Adviser: Erich A. Schneider", + "Dissertation: Essential Physics for Fuel Cycle Modeling & Analysis" + ] + } + ], + "email": "sb2896@columbia.edu", + "employment": [ + { + "advisor": "scopatz", + "begin_year": 2015, + "group": "ergs", + "location": "Columbia, SC", + "organization": "The University of South Carolina", + "other": [ + "Cyclus: An agent-based, discrete time nuclear fuel cycle simulator.", + "PyNE: The Nuclear Engineering Toolkit.", + "Website: http://www.ergs.sc.edu/" + ], + "position": "assistant professor", + "status": "phd" + } + ], + "facilities": [ + { + "begin_year": 2015, + "name": "Shared {Habanero} compute cluster", + "type": "other" + }, + { + "begin_year": 2015, + "name": "Shared access to wet lab", + "type": "research_wish" + }, + { + "begin_year": 2017, + "name": "Courseworks2", + "type": "teaching" + }, + { + "begin_year": 2019, + "name": "nothing right now", + "type": "teaching_wish" + }, + { + "begin_year": 2008, + "name": "I don't have one", + "type": "research" + } + ], + "funding": [ + { + "name": "Omega Laser User's Group Travel Award", + "value": 1100, + "year": 2013 + }, + { + "name": "NIF User's Group Travel Award", + "value": 1150, + "year": 2013 + } + ], + "google_scholar_url": "https://scholar.google.com/citations?user=dRm8f", + "grp_mtg_active": true, + "hindex": [ + { + "citations": 17890, + "citations_last_five": 8817, + "day": 12, + "h": 65, + "h_last_five": 43, + "month": "May", + "origin": "Google Scholar", + "since": 1991, + "year": 2019 + } + ], + "home_address": { + "city": "The big apple", + "state": "plasma", + "street": "123 Wallabe Ln", + "zip": "007" + }, + "initials": "SJLB", + "linkedin_url": "https://scholar.google.com/citations?hl=en&user=PAJ", + "membership": [ + { + "begin_year": 2006, + "organization": "American Nuclear Society", + "position": "Member" + } + ], + "miscellaneous": { + "metrics_for_success": [ + "publications(quality, quantity)", + "invite talks", + "funding", + "citations" + ] + }, + "name": "Simon J. L. Billinge", + "office": "1105 Seely W. Mudd Building (inner office)", + "orcid_id": "0000-0002-9432-4248", + "position": "professor", + "publicity": [ + { + "date": "2019-07-24", + "day": 24, + "grant": "bnlldrd18", + "month": "Jul", + "publication": "Brookhaven National Laboratory Web Story", + "title": "An awesome project and well worth the money", + "topic": "LDRD Provenance project", + "type": "online", + "url": "http://www.google.com", + "year": 2019 + } + ], + "research_focus_areas": [ + { + "begin_year": 2010, + "description": "software applied to materials engineering and life" + } + ], + "service": [ + { + "month": "August", + "name": "Master of Ceremonies and Organizer Brown University Chemistry: Believe it or Not public chemistry demonstration", + "type": "profession", + "year": 2017 + }, + { + "begin_date": "2018-01-01", + "end_date": "2018-01-01", + "name": "Applied Physics program committee", + "type": "department" + }, + { + "date": "2017-06-01", + "name": "Ad hoc tenure committee", + "notes": "Albert Einstein", + "type": "school" + }, + { + "month": 12, + "name": "Co-organizer JUAMI", + "other": [ + "great way to meet people" + ], + "role": "co-organizer", + "type": "profession", + "year": 2017 + } + ], + "skills": [ + { + "category": "Programming Languages", + "level": "expert", + "name": "Python" + } + ], + "teaching": [ + { + "course": "MSAE-3010: Introduction to Materials Science", + "courseid": "f16-3010", + "description": "This course is an introduction to nuclear physics.", + "enrollment": 18, + "evaluation": { + "amount_learned": 4.57, + "approachability": 4.86, + "appropriateness_workload": 4.29, + "classroom_delivery": 4.29, + "comments": [ + "Great teacher but disorganized", + "Wears pink pants. Why?" + ], + "course_overall": 4.43, + "fairness_grading": 4.57, + "instructor_overall": 4.43, + "organization": 4.0, + "response_rate": 58.33 + }, + "month": "August", + "organization": "Columbia University", + "position": "professor", + "semester": "Fall", + "syllabus": "https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc", + "year": 2016 + }, + { + "course": "MSAE-3010: Introduction to Materials Science", + "courseid": "f17-3010", + "description": "This course is an introduction to nuclear physics.", + "enrollment": 18, + "evaluation": { + "amount_learned": 4.57, + "approachability": 4.86, + "appropriateness_workload": 4.29, + "classroom_delivery": 4.29, + "comments": [ + "Great teacher but disorganized", + "Wears pink pants. Why?" + ], + "course_overall": 4.43, + "fairness_grading": 4.57, + "instructor_overall": 4.43, + "organization": 4.0, + "response_rate": 58.33 + }, + "month": "August", + "organization": "Columbia University", + "position": "professor", + "semester": "Fall", + "syllabus": "https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc", + "year": 2017 + }, + { + "course": "MSAE-3010: Introduction to Materials Science", + "courseid": "s18-3010", + "description": "This course is an introduction to nuclear physics.", + "enrollment": 18, + "evaluation": { + "amount_learned": 4.57, + "approachability": 4.86, + "appropriateness_workload": 4.29, + "classroom_delivery": 4.29, + "comments": [ + "Great teacher but disorganized", + "Wears pink pants. Why?" + ], + "course_overall": 4.43, + "fairness_grading": 4.57, + "instructor_overall": 4.43, + "organization": 4.0, + "response_rate": 58.33 + }, + "month": "Jan", + "organization": "Columbia University", + "position": "professor", + "semester": "Spring", + "syllabus": "https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc", + "year": 2018 + }, + { + "course": "MSAE-3010: Introduction to Materials Science", + "courseid": "s17-3010", + "description": "This course is an introduction to nuclear physics.", + "enrollment": 18, + "evaluation": { + "amount_learned": 4.57, + "approachability": 4.86, + "appropriateness_workload": 4.29, + "classroom_delivery": 4.29, + "comments": [ + "Great teacher but disorganized", + "Wears pink pants. Why?" + ], + "course_overall": 4.43, + "fairness_grading": 4.57, + "instructor_overall": 4.43, + "organization": 4.0, + "response_rate": 58.33 + }, + "month": "Jan", + "organization": "Columbia University", + "position": "professor", + "semester": "Spring", + "syllabus": "https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc", + "year": 2017 + }, + { + "course": "MSAE-3010: Introduction to Materials Science", + "courseid": "s19-3010", + "description": "This course is an introduction to nuclear physics.", + "enrollment": 18, + "month": "Jan", + "organization": "Columbia University", + "position": "professor", + "semester": "Spring", + "syllabus": "https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc", + "year": 2019 + }, + { + "course": "MSAE-3010: Introduction to Materials Science", + "courseid": "f18-3010", + "description": "This course is an introduction to nuclear physics.", + "enrollment": 18, + "month": "August", + "organization": "Columbia University", + "position": "professor", + "semester": "Fall", + "syllabus": "https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc", + "year": 2018 + }, + { + "course": "MSAE-3010: Introduction to Materials Science", + "courseid": "f19-3010", + "description": "This course is an introduction to nuclear physics.", + "month": "August", + "organization": "Columbia University", + "position": "professor", + "semester": "Fall", + "syllabus": "https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc", + "year": 2019 + } + ], + "title": "Dr." + } { "_id": "scopatz", "aka": [ @@ -323,10 +1361,100 @@ JSON/Mongo Example "Scopatz, A M", "Anthony Michael Scopatz" ], + "appointments": { + "f19": { + "begin_day": 1, + "begin_month": 2, + "begin_year": 2019, + "end_day": 31, + "end_month": 3, + "end_year": 2019, + "grant": "dmref15", + "loading": 0.75, + "notes": [ + "forgetmenot" + ], + "status": "finalized", + "type": "pd" + }, + "s20": { + "begin_date": "2020-01-01", + "end_date": "2020-05-15", + "grant": "sym", + "loading": 1.0, + "notes": [ + "fully appointed", + "outdated grant" + ], + "status": "finalized", + "type": "pd" + }, + "ss20": { + "begin_date": "2020-06-01", + "end_date": "2020-08-31", + "grant": "abc42", + "loading": 0.8, + "notes": [], + "status": "proposed", + "type": "ss" + }, + "ss21": { + "begin_date": "2020-09-01", + "end_date": "2021-08-31", + "grant": "future_grant", + "loading": 1.0, + "notes": [], + "status": "proposed", + "type": "ss" + } + }, "avatar": "https://avatars1.githubusercontent.com/u/320553?v=3&s=200", "bio": "Anthony Scopatz is currently an Assistant Professor", + "bios": [ + "Anthony Scopatz is currently an Assistant Professor but will go on to do great things" + ], + "committees": [ + { + "day": 1, + "level": "department", + "month": 3, + "name": "Heather Stanford", + "type": "phdoral", + "unit": "apam", + "year": 2020 + }, + { + "day": 1, + "level": "school", + "month": 3, + "name": "Heather Stanford", + "type": "promotion", + "unit": "seas", + "year": 2020 + }, + { + "day": 1, + "level": "external", + "month": 3, + "name": "Heather Stanford", + "notes": "something else to remember about it, not published", + "type": "phddefense", + "unit": "U Denmark", + "year": 2020 + }, + { + "day": 1, + "level": "university", + "month": 3, + "name": "Heather Stanford", + "type": "promotion", + "unit": "columbiau", + "year": 2020 + } + ], "education": [ { + "advisor": "scopatz", "begin_year": 2008, "degree": "Ph.D. Mechanical Engineering, Nuclear and Radiation Engineering Program", "department": "apam", @@ -376,7 +1504,11 @@ JSON/Mongo Example "email": "scopatz@cec.sc.edu", "employment": [ { + "advisor": "scopatz", "begin_year": 2015, + "coworkers": [ + "afriend" + ], "group": "ergs", "location": "Columbia, SC", "organization": "The University of South Carolina", @@ -385,9 +1517,13 @@ JSON/Mongo Example "PyNE: The Nuclear Engineering Toolkit.", "Website: http://www.ergs.sc.edu/" ], - "position": "Assistant Professor, Mechanical Engineering Department" + "permanent": true, + "position": "assistant professor", + "position_full": "Assistant Professor, Mechanical Engineering Department", + "status": "ms" }, { + "advisor": "scopatz", "begin_day": 1, "begin_month": "Jun", "begin_year": 2013, @@ -402,7 +1538,9 @@ JSON/Mongo Example "PyNE: The Nuclear Engineering Toolkit.", "Website: https://cnerg.github.io/" ], - "position": "Associate Scientist, Engineering Physics Department" + "position": "associate scientist", + "position_full": "Associate Scientist, Engineering Physics Department", + "status": "undergrad" }, { "begin_day": 1, @@ -420,8 +1558,18 @@ JSON/Mongo Example "OpacPlot: HDF5-based equation of state and opacity file format.", "Website: http://flash.uchicago.edu/site/" ], - "position": "Research Scientist, Postdoctoral Scholar", - "status": "PI" + "position": "post-doctoral scholar", + "position_full": "Research Scientist, Postdoctoral Scholar", + "status": "pi" + }, + { + "begin_date": "2000-01-01", + "end_date": "2001-12-31", + "location": "Chicago, IL", + "not_in_cv": true, + "organization": "Google", + "other": [], + "position": "janitor" } ], "funding": [ @@ -436,7 +1584,21 @@ JSON/Mongo Example "year": 2013 } ], + "github_id": "ascopatz", "google_scholar_url": "https://scholar.google.com/citations?user=dRm8f", + "hindex": [ + { + "citations": 19837, + "citations_last_five": 9419, + "day": 19, + "h": 25, + "h_last_five": 46, + "month": 2, + "origin": "Google Scholar", + "since": 1991, + "year": 2020 + } + ], "home_address": { "city": "The big apple", "state": "plasma", @@ -467,13 +1629,21 @@ JSON/Mongo Example ], "service": [ { - "name": "Master of Ceremonies and Organizer Brown University \"Chemistry: Believe it or Not\" public chemistry demonstration", - "year": 2013 + "month": 3, + "name": "International Steering Committee", + "notes": [ + "something" + ], + "role": "chair", + "type": "profession", + "year": 2020 }, { - "begin_year": 2012, - "end_year": 2014, - "name": "Renewable Energy Presenter and Facility Tour Guide at the NSLS \"Science Sunday\" laboratory open house at Brookhaven National Laboratory" + "begin_year": 2018, + "end_year": 2021, + "name": "National Steering Committee", + "notes": "something", + "type": "profession" } ], "skills": [ @@ -491,19 +1661,39 @@ JSON/Mongo Example "teaching": [ { "course": "EMCH 552: Intro to Nuclear Engineering", + "courseid": "EMCH 552", "description": "This course is an introduction to nuclear physics.", + "enrollment": "tbd", "month": "August", "organization": "University of South Carolina", - "position": "Professor", + "position": "professor", + "semester": "Spring", "syllabus": "https://drive.google.com/open?id=0BxUpd34yizZreDBCMEJNY2FUbnc", "year": 2017 }, { "course": "EMCH 558/758: Reactor Power Systems", + "courseid": "EMCH 558", "description": "This course covers conventional reactors.", + "enrollment": 28, + "evaluation": { + "amount_learned": 3.5, + "approachability": 4.3, + "appropriateness_workload": 3.15, + "classroom_delivery": 4, + "comments": [ + "super duper", + "dandy" + ], + "course_overall": 3.67, + "fairness_grading": 3.54, + "instructor_overall": 3.5, + "organization": 3.25, + "response_rate": 66.76 + }, "month": "January", "organization": "University of South Carolina", - "position": "Professor", + "position": "professor", "syllabus": "https://docs.google.com/document/d/1uMAx_KFZK9ugYyF6wWtLLWgITVhaTBkAf8-PxiboYdM/edit?usp=sharing", "year": 2017 } diff --git a/doc/source/collections/presentations.rst b/doc/source/collections/presentations.rst index ae5c9cc96..3e6934d0e 100644 --- a/doc/source/collections/presentations.rst +++ b/doc/source/collections/presentations.rst @@ -9,10 +9,12 @@ The following lists key names mapped to its type and meaning for each entry. :_id: string, unique id for the presentation, required :abstract: string, abstract of the presentation, optional :authors: ['string', 'list'], Author list., required +:begin_date: ['date', 'string'], begin date in YYYY-MM-DD, optional :begin_day: integer, optional -:begin_month: ['string', 'integer'], required -:begin_year: integer, year the conference or trip begins., required +:begin_month: ['string', 'integer'], optional +:begin_year: integer, year the conference or trip begins., optional :department: string, department of the institution where thepresentation will be made, if applicable. should be discoverable in institutions., optional +:end_date: ['date', 'string'], end_date in YYYY-MM-DD, optional :end_day: integer, optional :end_month: ['string', 'integer'], optional :end_year: integer, year the conference or trip ends, optional @@ -20,6 +22,7 @@ The following lists key names mapped to its type and meaning for each entry. :location: string, city and {state or country} of meeting, optional :meeting_name: string, full name of the conference or meeting. If it is a departmental seminar or colloquium, write Seminaror Colloquium and fill in department and institution fields, optional :notes: ['list', 'string'], any reminder or memory aid about anything, optional +:presentation_url: string, the url to the presentation on Google slides, GitHub or wherever, optional :project: ['string', 'list'], project or list of projects that this presentation is associated with. Should be discoverable in projects collection, optional :status: string, Is the application in prep or submitted, was the invitation accepted or declined, was the trip cancelled?, required @@ -29,6 +32,7 @@ The following lists key names mapped to its type and meaning for each entry. * accepted * declined * cancelled + * postponed :title: string, title of the presentation, required :type: string, type of presentation, required @@ -41,6 +45,9 @@ The following lists key names mapped to its type and meaning for each entry. * plenary * poster * seminar + * tutorial + * other +:webinar: boolean, true if a webinar. Default to false, optional YAML Example @@ -67,6 +74,7 @@ YAML Example title: Nanostructure challenges and successes from 16th Century warships to 21st Century energy type: colloquium + webinar: true 18sb_nslsii: abstract: We pulled apart graphite with tape authors: @@ -93,6 +101,7 @@ YAML Example abstract: We pulled apart graphite with tape authors: - scopatz + - afriend begin_day: 22 begin_month: 5 begin_year: 2018 @@ -103,10 +112,12 @@ YAML Example notes: - We hope the weather will be sunny - if the weather is nice we will go to the beach + presentation_url: http://github.com/blob/my_talk.pdf project: 18sob_clustermining status: accepted title: Graphitic Dephenestration type: award + webinar: false JSON/Mongo Example @@ -134,7 +145,8 @@ JSON/Mongo Example "project": "18kj_conservation", "status": "accepted", "title": "Nanostructure challenges and successes from 16th Century warships to 21st Century energy", - "type": "colloquium" + "type": "colloquium", + "webinar": true } { "_id": "18sb_nslsii", @@ -165,7 +177,8 @@ JSON/Mongo Example "_id": "18sb_this_and_that", "abstract": "We pulled apart graphite with tape", "authors": [ - "scopatz" + "scopatz", + "afriend" ], "begin_day": 22, "begin_month": 5, @@ -178,8 +191,10 @@ JSON/Mongo Example "We hope the weather will be sunny", "if the weather is nice we will go to the beach" ], + "presentation_url": "http://github.com/blob/my_talk.pdf", "project": "18sob_clustermining", "status": "accepted", "title": "Graphitic Dephenestration", - "type": "award" + "type": "award", + "webinar": false } diff --git a/doc/source/collections/projecta.rst b/doc/source/collections/projecta.rst new file mode 100644 index 000000000..498fda8ed --- /dev/null +++ b/doc/source/collections/projecta.rst @@ -0,0 +1,506 @@ +Projecta +======== +This collection describes a single deliverable of a larger project. + +Schema +------ +The following lists key names mapped to its type and meaning for each entry. + +:_id: string, Unique projectum identifier, required +:begin_date: ['string', 'date'], projectum start date, yyyy-mm-dd, optional +:collaborators: list, list of collaborators ids. These are non-group members. These will be dereferenced from the contacts collection., optional +:deliverable: dict, outline of the deliverable for this projectum, required + + :audience: list, the target audience for this deliverable, optional + :due_date: ['date', 'string'], due date of deliverable, yyyy-mm-dd, optional + :success_def: string, definition of a successful deliverable, optional + :scope: list, a list of items that define the scope of the deliverable.If this is a software release it might be a list of Use Cases that will be satisfied.If it is a paper it defines what will, and what won't, be described in the paper., optional + :platform: string, description of how and where the audience will access the deliverable.e.g. Journal if it is a paper. For software releases, this may be the computer operating systems that will be supported, or if it will be a web service, etc., optional + :roll_out: list, steps that the audience will take to access and interact with the deliverable, not needed for paper submissions, optional + :notes: list, any notes about the deliverable that we want to keep track of, optional + :status: string, status of the deliverable. Allowed values are {', '.join(PROJECTUM_STATI)}, optional + + Allowed values: + * proposed + * converged + * started + * backburner + * paused + * cancelled + * finished + * all + :type: string, type of deliverable, optional +:description: string, explanation of projectum, optional +:end_date: ['date', 'string'], projectum end date, yyyy-mm-dd., optional +:grants: ['string', 'list'], grant id funding the project, optional +:group_members: list, list of group member id's working on this project,These will be dereferenced from the people collection., optional +:kickoff: dict, details the projectum kickoff meeting, optional + + :date: ['date', 'string'], kickoff meeting date, yyyy-mm-dd., optional + :due_date: ['date', 'string'], kickoff meeting by date, yyyy-mm-dd., optional + :end_date: ['date', 'string'], date when the kickoff was done, optional + :name: string, name of meeting, optional + :objective: string, goal of the meeting, optional + :audience: list, list of people attending the meeting.Normally this list is group_members, collaborators, and pi, or some subset of these. if people are invited who are not alreadyin these groups their names or id's can be added explicitly to the list, optional + :notes: list, any notes about the kickoff, optional + :status: string, status of the kickoff. Allowed values are {', '.join(PROJECTUM_STATI)}, optional + + Allowed values: + * proposed + * converged + * started + * backburner + * paused + * cancelled + * finished + * all + :type: string, type of kickoff deliverable. In general will be 'meeting'Allowed values are {', '.join(MILESTONE_TYPES)}, optional + + Allowed values: + * mergedpr + * meeting + * other + * paper + * release + * email + * handin + * purchase + * approval + * presentation + * report + * submission + * decision + * demo + * skel +:lead: string, the id of the lead student or person for the projectum. Person details will be dereferenced from the people collection., required +:log_url: string, link to an online document (e.g., Google doc) that is a log of notes and meeting minutes for the projectum, optional +:milestones: list, smaller deliverables done by a certain date a series of milestones ends with the projectum deliverable, optional + + :type: dict, optional + + :uuid: string, a universally unique id for the task so it can be referenced elsewhere, optional + :due_date: ['date', 'string'], due date of milestone, yyyy-mm-dd, optional + :name: string, what is the deliverable of milestone, optional + :notes: list, any notes about the milestone and/or small, non-deliverable to-dos to reach the milestone, optional + :tasks: list, list of todo uuids to complete the milestone , optional + :progress: dict, update on the milestone, optional + + :text: string, text description of progress and observations, optional + :figure: list, token that dereferences a figure or image in group local storage db, optional + :slides_urls: list, urls to slides describing the development, e.g., Google slides url, optional + :objective: string, explains goal of the milestone, optional + :audience: list, list of people attending the meeting.Normally this list is group_members, collaborators, and pi, or some subset of these. if people are invited who are not alreadyin these groups their names or id's can be added explicitly to the list, optional + :status: string, status of the milestone. Allowed values are {', '.join(PROJECTUM_STATI)}, optional + + Allowed values: + * proposed + * converged + * started + * backburner + * paused + * cancelled + * finished + * all + :type: string, type of milestone deliverable. Allowed values are {', '.join(MILESTONE_TYPES)}, optional + + Allowed values: + * mergedpr + * meeting + * other + * paper + * release + * email + * handin + * purchase + * approval + * presentation + * report + * submission + * decision + * demo + * skel + :end_date: ['date', 'string'], end date of milestone, yyyy-mm-dd, optional + :identifier: string, label of milestone, optional +:name: string, name of the projectum, optional +:notes: list, notes about the projectum, optional +:other_urls: list, link to remote repository. e.g. analysis or data repositories, optional +:pi_id: string, id of the PI, optional +:product_url: string, url for manuscript or code repository, optional +:status: string, status of the projectum. Allowed values are {', '.join(PROJECTUM_STATI)}, required + + Allowed values: + * proposed + * converged + * started + * backburner + * paused + * cancelled + * finished + * all +:supplementary_info_urls: list, list of urls that are links to repos gdocs, etc. that contain supplementary info such as data or code snippets, optional + + +YAML Example +------------ + +.. code-block:: yaml + + ab_inactive: + begin_date: '2020-05-03' + deliverable: + due_date: '2021-05-03' + status: paused + description: a prum that has various inactive states in milestones and overall + grants: dmref15 + kickoff: + due_date: '2021-05-03' + name: Kickoff + status: backburner + type: meeting + lead: abeing + milestones: + - due_date: '2021-05-03' + name: Milestone + status: converged + uuid: milestone_uuid_inactive + status: backburner + pl_firstprojectum: + begin_date: '2020-07-25' + deliverable: + due_date: '2021-08-26' + status: finished + end_date: '2020-07-27' + kickoff: + due_date: '2021-08-03' + name: Kickoff + status: backburner + lead: pliu + milestones: + - due_date: '2021-08-03' + name: Milestone + status: converged + uuid: milestone_uuid_pl1 + status: finished + pl_secondprojectum: + begin_date: '2020-07-25' + deliverable: + due_date: '2021-08-26' + status: finished + kickoff: + due_date: '2021-08-03' + name: Kickoff + status: backburner + lead: pliu + milestones: + - due_date: '2021-08-03' + name: Milestone + status: converged + uuid: milestone_uuid_pl2 + status: proposed + pl_thirdprojectum: + begin_date: '2020-07-25' + deliverable: + due_date: '2021-08-26' + status: finished + kickoff: + due_date: '2021-08-03' + name: Kickoff + status: backburner + lead: pliu + milestones: + - due_date: '2021-08-03' + name: Milestone + status: converged + uuid: milestone_uuid_pl3 + status: backburner + sb_firstprojectum: + begin_date: '2020-04-28' + collaborators: + - aeinstein + - pdirac + deliverable: + audience: + - beginning grad in chemistry + due_date: '2021-05-05' + notes: + - deliverable note + platform: description of how and where the audience will access the deliverable. Journal + if it is a paper + roll_out: + - steps that the audience will take to access and interact with the deliverable + - not needed for paper submissions + scope: + - UCs that are supported or some other scope description if it is software + - sketch of science story if it is paper + status: proposed + success_def: audience is happy + description: My first projectum + grants: SymPy-1.1 + group_members: + - ascopatz + kickoff: + audience: + - lead + - pi + - group_members + date: '2020-05-05' + due_date: '2020-05-06' + end_date: '2020-05-07' + name: Kick off meeting + notes: + - kickoff note + objective: introduce project to the lead + status: finished + lead: ascopatz + log_url: https://docs.google.com/document/d/1YC_wtW5Q + milestones: + - audience: + - lead + - pi + - group_members + due_date: '2020-05-20' + name: Project lead presentation + notes: + - do background reading + - understand math + objective: lead presents background reading and initial project plan + progress: + figure: + - token that dereferences a figure or image in group local storage db + slides_urls: + - url to slides describing the development, e.g. Google slides url + text: The samples have been synthesized and places in the sample cupboard. + They turned out well and are blue as expected + status: proposed + tasks: + - 1saefadf-wdaagea2 + type: meeting + uuid: milestone_uuid_sb1 + - audience: + - lead + - pi + - group_members + due_date: '2020-05-27' + name: planning meeting + objective: develop a detailed plan with dates + status: proposed + type: mergedpr + uuid: milestone_uuid_sb1_2 + name: First Projectum + other_urls: + - https://docs.google.com/document/d/analysis + pi_id: scopatz + product_url: https://docs.google.com/document/d/manuscript + status: started + supplementary_info_urls: + - https://google.com + - https://nytimes.com + + +JSON/Mongo Example +------------------ + +.. code-block:: json + + { + "_id": "ab_inactive", + "begin_date": "2020-05-03", + "deliverable": { + "due_date": "2021-05-03", + "status": "paused" + }, + "description": "a prum that has various inactive states in milestones and overall", + "grants": "dmref15", + "kickoff": { + "due_date": "2021-05-03", + "name": "Kickoff", + "status": "backburner", + "type": "meeting" + }, + "lead": "abeing", + "milestones": [ + { + "due_date": "2021-05-03", + "name": "Milestone", + "status": "converged", + "uuid": "milestone_uuid_inactive" + } + ], + "status": "backburner" + } + { + "_id": "pl_firstprojectum", + "begin_date": "2020-07-25", + "deliverable": { + "due_date": "2021-08-26", + "status": "finished" + }, + "end_date": "2020-07-27", + "kickoff": { + "due_date": "2021-08-03", + "name": "Kickoff", + "status": "backburner" + }, + "lead": "pliu", + "milestones": [ + { + "due_date": "2021-08-03", + "name": "Milestone", + "status": "converged", + "uuid": "milestone_uuid_pl1" + } + ], + "status": "finished" + } + { + "_id": "pl_secondprojectum", + "begin_date": "2020-07-25", + "deliverable": { + "due_date": "2021-08-26", + "status": "finished" + }, + "kickoff": { + "due_date": "2021-08-03", + "name": "Kickoff", + "status": "backburner" + }, + "lead": "pliu", + "milestones": [ + { + "due_date": "2021-08-03", + "name": "Milestone", + "status": "converged", + "uuid": "milestone_uuid_pl2" + } + ], + "status": "proposed" + } + { + "_id": "pl_thirdprojectum", + "begin_date": "2020-07-25", + "deliverable": { + "due_date": "2021-08-26", + "status": "finished" + }, + "kickoff": { + "due_date": "2021-08-03", + "name": "Kickoff", + "status": "backburner" + }, + "lead": "pliu", + "milestones": [ + { + "due_date": "2021-08-03", + "name": "Milestone", + "status": "converged", + "uuid": "milestone_uuid_pl3" + } + ], + "status": "backburner" + } + { + "_id": "sb_firstprojectum", + "begin_date": "2020-04-28", + "collaborators": [ + "aeinstein", + "pdirac" + ], + "deliverable": { + "audience": [ + "beginning grad in chemistry" + ], + "due_date": "2021-05-05", + "notes": [ + "deliverable note" + ], + "platform": "description of how and where the audience will access the deliverable. Journal if it is a paper", + "roll_out": [ + "steps that the audience will take to access and interact with the deliverable", + "not needed for paper submissions" + ], + "scope": [ + "UCs that are supported or some other scope description if it is software", + "sketch of science story if it is paper" + ], + "status": "proposed", + "success_def": "audience is happy" + }, + "description": "My first projectum", + "grants": "SymPy-1.1", + "group_members": [ + "ascopatz" + ], + "kickoff": { + "audience": [ + "lead", + "pi", + "group_members" + ], + "date": "2020-05-05", + "due_date": "2020-05-06", + "end_date": "2020-05-07", + "name": "Kick off meeting", + "notes": [ + "kickoff note" + ], + "objective": "introduce project to the lead", + "status": "finished" + }, + "lead": "ascopatz", + "log_url": "https://docs.google.com/document/d/1YC_wtW5Q", + "milestones": [ + { + "audience": [ + "lead", + "pi", + "group_members" + ], + "due_date": "2020-05-20", + "name": "Project lead presentation", + "notes": [ + "do background reading", + "understand math" + ], + "objective": "lead presents background reading and initial project plan", + "progress": { + "figure": [ + "token that dereferences a figure or image in group local storage db" + ], + "slides_urls": [ + "url to slides describing the development, e.g. Google slides url" + ], + "text": "The samples have been synthesized and places in the sample cupboard. They turned out well and are blue as expected" + }, + "status": "proposed", + "tasks": [ + "1saefadf-wdaagea2" + ], + "type": "meeting", + "uuid": "milestone_uuid_sb1" + }, + { + "audience": [ + "lead", + "pi", + "group_members" + ], + "due_date": "2020-05-27", + "name": "planning meeting", + "objective": "develop a detailed plan with dates", + "status": "proposed", + "type": "mergedpr", + "uuid": "milestone_uuid_sb1_2" + } + ], + "name": "First Projectum", + "other_urls": [ + "https://docs.google.com/document/d/analysis" + ], + "pi_id": "scopatz", + "product_url": "https://docs.google.com/document/d/manuscript", + "status": "started", + "supplementary_info_urls": [ + "https://google.com", + "https://nytimes.com" + ] + } diff --git a/doc/source/collections/projects.rst b/doc/source/collections/projects.rst index 385044299..cdc29d447 100644 --- a/doc/source/collections/projects.rst +++ b/doc/source/collections/projects.rst @@ -7,12 +7,25 @@ Schema The following lists key names mapped to its type and meaning for each entry. :_id: string, Unique project identifier., required +:active: ['string', 'boolean'], true if the project is active, optional :description: string, brief project description., required -:grant: string, Grant id if there is a grant supporting this project, optional +:grants: list, Grant id if there is a grant supporting this project, optional + + :type: string, the list of ids/akas of grants related to this project, optional + :description: string, the list of ids/akas of grants related to this project, optional +:group: string, id for the group in the groups collection whose project this is, optional +:highlights: list, list of things to highlight in a report or website, such as releases for for software or high profile publications, optional + + :type: dict, optional + + :year: integer, the year of the highlight, optional + :month: ['string', 'integer'], the month of the highlight, optional + :description: string, the highlight, optional :logo: string, URL to the project logo, optional :name: string, name of the project., required :other: ['list', 'string'], other information about the project, optional :repo: string, URL of the source code repo, if available, optional +:summary: string, The summary of the project, optional :team: list, People who are/have been working on this project., required :type: dict, optional @@ -23,7 +36,13 @@ The following lists key names mapped to its type and meaning for each entry. :end_year: integer, optional :name: string, optional :position: string, optional -:website: string, URL of the website., required +:type: ['string'], The type of project, optional + + Allowed values: + * ossoftware + * funded + * outreach +:website: string, URL of the website., optional YAML Example @@ -33,13 +52,20 @@ YAML Example Cyclus: description: Agent-Based Nuclear Fuel Cycle Simulator - grant: dmref15 + grants: + - dmref15 + group: ergs + highlights: + - description: high profile pub in Nature + month: 5 + year: 2020 logo: http://fuelcycle.org/_static/big_c.png name: Cyclus other: - Discrete facilities with discrete material transactions - Low barrier to entry, rapid payback to adoption repo: https://github.com/cyclus/cyclus/ + summary: In summary, a cool project team: - begin_month: June begin_year: 2013 @@ -47,6 +73,7 @@ YAML Example end_year: 2015 name: Anthony Scopatz position: Project Lead + type: funded website: http://fuelcycle.org/ @@ -58,7 +85,17 @@ JSON/Mongo Example { "_id": "Cyclus", "description": "Agent-Based Nuclear Fuel Cycle Simulator", - "grant": "dmref15", + "grants": [ + "dmref15" + ], + "group": "ergs", + "highlights": [ + { + "description": "high profile pub in Nature", + "month": 5, + "year": 2020 + } + ], "logo": "http://fuelcycle.org/_static/big_c.png", "name": "Cyclus", "other": [ @@ -66,6 +103,7 @@ JSON/Mongo Example "Low barrier to entry, rapid payback to adoption" ], "repo": "https://github.com/cyclus/cyclus/", + "summary": "In summary, a cool project", "team": [ { "begin_month": "June", @@ -76,5 +114,6 @@ JSON/Mongo Example "position": "Project Lead" } ], + "type": "funded", "website": "http://fuelcycle.org/" } diff --git a/doc/source/collections/proposalReviews.rst b/doc/source/collections/proposalReviews.rst index 8c31cff00..b0967351e 100644 --- a/doc/source/collections/proposalReviews.rst +++ b/doc/source/collections/proposalReviews.rst @@ -6,29 +6,31 @@ Schema ------ The following lists key names mapped to its type and meaning for each entry. -:_id: ('string', 'integer', 'float'), ID, e.g. 1906_doe_example, required +:_id: ['string', 'integer', 'float'], ID, e.g. 1906_doe_example, required :adequacy_of_resources: list, Are the resources of the PI adequate, required -:agency: string, currently nsf or doe, optional +:agency: string, currently nsf, doe or other, optional Allowed values: * nsf * doe + * other :competency_of_team: list, Is the team competent, required :doe_appropriateness_of_approach: list, Appropriateness of Research. only used if agency is doe., optional :doe_reasonableness_of_budget: list, Reasonableness of budget. only used if agency is doe., optional :doe_relevance_to_program_mission: list, Relevance to program mission. only used if agency is doe., optional :does_how: list, How will the research be done, required :does_what: string, What will the team do, required -:freewrite: list, Anything and this will appear in the built documentright before the summary. This section often used for extra review criteria for the particular proposal, optional +:due_date: ['string', 'date'], date the review is due in ISO format, required +:freewrite: ['string', 'list'], Anything and this will appear in the built documentright before the summary. This section often used for extra review criteria for the particular proposal, optional :goals: list, What are the main goals of the proposed research, required :importance: list, The importance of the Research, required -:institution: string, The institution of the lead PI, required +:institutions: ['string', 'list'], The institutions of the authors in the same order, required :month: ['string', 'integer'], The month the review was submitted, required :names: ['list', 'string'], The names of the PIs, required :nsf_broader_impacts: list, The broader impacts of the research. Only used if agency is nsf, optional :nsf_create_original_transformative: list, Answer to the question how the work is creative, original or transformative. Only used if agency is nsf, optional :nsf_plan_good: list, Is the plan good? Only used if agency is nsf, optional -:nsf_pot_to_Advance_knowledge: list, Answer to the question how the work will advanceknowledge. Only used if agency is nsf, optional +:nsf_pot_to_advance_knowledge: list, Answer to the question how the work will advanceknowledge. Only used if agency is nsf, optional :nsf_pot_to_benefit_society: list, Answer to the question how the work has the potentialto benefit society. Only used if agency is nsf, optional :requester: string, Name of the program officer who requested the review, required :reviewer: string, short name of the reviewer. Will be used in the filename of the resulting text file, required @@ -41,6 +43,7 @@ The following lists key names mapped to its type and meaning for each entry. * downloaded * inprogress * submitted + * cancelled :summary: string, Summary statement, required :title: string, The title of the proposal, required :year: integer, The year the review was submitted, required @@ -67,16 +70,17 @@ YAML Example - they will find the cause of Malaria - when they find it they will determine a cure does_what: Find a cure for Malaria + due_date: '2020-04-10' freewrite: - I can put extra things here, such as special instructions from the - program officer goals: - - The goals of the proposal are to put together a team to find a curefor Malaria, + - The goals of the proposal are to put together a team to find a cure for Malaria, and then to find it importance: - save lives - lift people from poverty - institution: columbiau + institutions: columbiau month: May names: - B. Cause @@ -84,7 +88,7 @@ YAML Example nsf_broader_impacts: [] nsf_create_original_transformative: [] nsf_plan_good: [] - nsf_pot_to_Advance_knowledge: [] + nsf_pot_to_advance_knowledge: [] nsf_pot_to_benefit_society: [] requester: Lane Wilson reviewer: sbillinge @@ -105,16 +109,15 @@ YAML Example - they will find the cause of Poverty - when they find it they will determine a cure does_what: Find a cure for Poverty - freewrite: - - I can put extra things here, such as special instructions from the - - program officer + due_date: '2020-04-10' + freewrite: I can put extra things here, such as special instructions from the goals: - - The goals of the proposal are to put together a team to find a curefor Poverty, + - The goals of the proposal are to put together a team to find a cure for Poverty, and then to find it importance: - save lives - lift people from poverty - institution: upenn + institutions: [] month: May names: - A Genius @@ -125,13 +128,13 @@ YAML Example nsf_plan_good: - I don't see any issues with the plan - it should be very straightforward - nsf_pot_to_Advance_knowledge: + nsf_pot_to_advance_knowledge: - This won't advance knowledge at all nsf_pot_to_benefit_society: - Society will benefit by poor people being made unpoor if they want to be requester: Tessemer Guebre reviewer: sbillinge - status: invited,accepted,declined,downloaded,inprogress,submitted + status: submitted summary: dynamite proposal title: A stunning new way to cure Poverty year: 2019 @@ -165,18 +168,19 @@ JSON/Mongo Example "when they find it they will determine a cure" ], "does_what": "Find a cure for Malaria", + "due_date": "2020-04-10", "freewrite": [ "I can put extra things here, such as special instructions from the", "program officer" ], "goals": [ - "The goals of the proposal are to put together a team to find a curefor Malaria, and then to find it" + "The goals of the proposal are to put together a team to find a cure for Malaria, and then to find it" ], "importance": [ "save lives", "lift people from poverty" ], - "institution": "columbiau", + "institutions": "columbiau", "month": "May", "names": [ "B. Cause", @@ -185,7 +189,7 @@ JSON/Mongo Example "nsf_broader_impacts": [], "nsf_create_original_transformative": [], "nsf_plan_good": [], - "nsf_pot_to_Advance_knowledge": [], + "nsf_pot_to_advance_knowledge": [], "nsf_pot_to_benefit_society": [], "requester": "Lane Wilson", "reviewer": "sbillinge", @@ -211,18 +215,16 @@ JSON/Mongo Example "when they find it they will determine a cure" ], "does_what": "Find a cure for Poverty", - "freewrite": [ - "I can put extra things here, such as special instructions from the", - "program officer" - ], + "due_date": "2020-04-10", + "freewrite": "I can put extra things here, such as special instructions from the", "goals": [ - "The goals of the proposal are to put together a team to find a curefor Poverty, and then to find it" + "The goals of the proposal are to put together a team to find a cure for Poverty, and then to find it" ], "importance": [ "save lives", "lift people from poverty" ], - "institution": "upenn", + "institutions": [], "month": "May", "names": [ "A Genius" @@ -237,7 +239,7 @@ JSON/Mongo Example "I don't see any issues with the plan", "it should be very straightforward" ], - "nsf_pot_to_Advance_knowledge": [ + "nsf_pot_to_advance_knowledge": [ "This won't advance knowledge at all" ], "nsf_pot_to_benefit_society": [ @@ -245,7 +247,7 @@ JSON/Mongo Example ], "requester": "Tessemer Guebre", "reviewer": "sbillinge", - "status": "invited,accepted,declined,downloaded,inprogress,submitted", + "status": "submitted", "summary": "dynamite proposal", "title": "A stunning new way to cure Poverty", "year": 2019 diff --git a/doc/source/collections/proposals.rst b/doc/source/collections/proposals.rst index a3c1a95eb..8d3acba0b 100644 --- a/doc/source/collections/proposals.rst +++ b/doc/source/collections/proposals.rst @@ -6,9 +6,10 @@ Schema ------ The following lists key names mapped to its type and meaning for each entry. -:_id: ('string', 'integer', 'float'), short representation, such as this-is-my-name, required -:amount: ('integer', 'float'), value of award, required -:authors: ['list', 'string'], other investigator names, required +:_id: ['string', 'integer', 'float'], short representation, such as this-is-my-name, required +:amount: ['integer', 'float'], value of award, required +:authors: ['list', 'string'], other investigator names, optional +:begin_date: ['string', 'date'], start date of the proposed grant in format YYYY-MM-DD, optional :begin_day: integer, start day of the proposed grant, optional :begin_month: ['string', 'integer'], start month of the proposed grant, optional :begin_year: integer, start year of the proposed grant, optional @@ -21,27 +22,31 @@ The following lists key names mapped to its type and meaning for each entry. :person_months_academic: ['float', 'integer'], optional :person_months_summer: ['float', 'integer'], optional :project_scope: string, optional + :single_pi: boolean, set to true if there are no co-pi's, optional :currency: string, typically '$' or 'USD', required -:day: integer, day that the proposal was submitted, required -:due_date: string, day that the proposal is due, optional -:duration: ('integer', 'float'), number of years, required -:end_day: ('string', 'integer'), end day of the proposed grant, optional +:due_date: ['string', 'date'], day that the proposal is due, optional +:duration: ['integer', 'float'], number of years, optional +:end_date: ['string', 'date'], end date of the proposed grant in format YYYY-MM-DD, optional +:end_day: ['string', 'integer'], end day of the proposed grant, optional :end_month: ['string', 'integer'], end month of the proposed grant, optional :end_year: integer, end year of the proposed grant, optional :full: dict, full body of the proposal, optional :funder: string, who will fund the proposalas funder in grants, optional -:month: ['string', 'integer'], month that the proposal was submitted, required :notes: ['string', 'list'], anything you want to note, optional :pi: string, principal investigator name, required :pre: dict, Information about the pre-proposal, optional -:status: string, e.g. 'pending', 'accepted', 'rejected', required +:status: string, e.g. 'pending', 'accepted', 'declined', required Allowed values: * pending * declined * accepted - * in-prep + * inprep * submitted +:submitted_date: ['string', 'date'], date that the proposal was submitted, optional +:submitted_day: integer, day that the proposal was submitted, optional +:submitted_month: ['string', 'integer'], month that the proposal was submitted, optional +:submitted_year: integer, Year that the proposal was submitted, optional :team: list, information about the team members participating in the grant., optional :type: dict, optional @@ -51,10 +56,9 @@ The following lists key names mapped to its type and meaning for each entry. :institution: string, optional :name: string, optional :position: string, optional - :subaward_amount: ('integer', 'float'), optional + :subaward_amount: ['integer', 'float'], optional :title: string, actual title of proposal, required :title_short: string, short title of proposal, optional -:year: integer, Year that the proposal was submitted, required YAML Example @@ -62,6 +66,59 @@ YAML Example .. code-block:: yaml + SymPy-1.1: + amount: 3000.0 + begin_date: '2030-05-01' + cpp_info: + cppflag: true + institution: Columbia University + other_agencies_submitted: None + person_months_academic: 0 + person_months_summer: 1 + project_scope: '' + currency: USD + end_date: '2030-12-31' + pi: Anthony Scopatz + status: pending + team: + - institution: Columbia University + name: scopatz + position: pi + title: SymPy 1.1 Release Support + SymPy-2.1: + amount: 3000.0 + begin_date: '2019-06-01' + cpp_info: + cppflag: true + institution: Columbia University + other_agencies_submitted: None + person_months_academic: 0 + person_months_summer: 1 + project_scope: '' + currency: USD + end_date: '2030-12-31' + pi: sbillinge + status: accepted + team: + - institution: University of 2.1 + name: Anthony Scopatz 2.1 + position: pi + title: SymPy 2.1 Release Support + abc42: + amount: 42000.0 + begin_date: '2020-06-01' + cpp_info: + cppflag: true + institution: Columbia University + other_agencies_submitted: None + person_months_academic: 0 + person_months_summer: 1 + project_scope: '' + currency: USD + end_date: '2020-12-31' + pi: sbillinge + status: submitted + title: The answer to life, the universe, and everything dmref15: amount: 982785.0 authors: @@ -79,32 +136,31 @@ YAML Example person_months_academic: 0 person_months_summer: 1 project_scope: lots to do but it doesn't overlap with any other of my grants + single_pi: true currency: USD - day: 2 duration: 3 end_day: 1 end_month: May end_year: 2019 funder: NSF - month: february notes: Quite an idea pi: Simon Billinge status: accepted + submitted_date: '2015-02-02' team: - - institution: Columbia Unviersity + - institution: Columbia University name: qdu - position: Co-PI - - institution: Columbia Unviersity + position: copi + - institution: Columbia University name: dhsu - position: Co-PI - - institution: Columbia Unviersity + position: copi + - institution: Columbia University name: sbillinge - position: PI + position: pi subaward_amount: 330000.0 title: 'DMREF: Novel, data validated, nanostructure determination methods for accelerating materials discovery' title_short: DMREF nanostructure - year: 2015 mypropsal: amount: 1000000.0 authors: @@ -114,7 +170,6 @@ YAML Example begin_month: May begin_year: 2030 currency: USD - day: 18 duration: 3 end_day: 31 end_month: December @@ -125,7 +180,6 @@ YAML Example - http://pdf.com/scopatz-cv - http://pdf.com/flanagan-cv narrative: http://some.com/pdf - month: Aug notes: Quite an idea pi: Anthony Scopatz pre: @@ -138,8 +192,10 @@ YAML Example narrative: http://some.com/pdf year: 1998 status: submitted + submitted_day: 18 + submitted_month: Aug + submitted_year: 1999 title: A very fine proposal indeed - year: 1999 JSON/Mongo Example @@ -147,6 +203,74 @@ JSON/Mongo Example .. code-block:: json + { + "_id": "SymPy-1.1", + "amount": 3000.0, + "begin_date": "2030-05-01", + "cpp_info": { + "cppflag": true, + "institution": "Columbia University", + "other_agencies_submitted": "None", + "person_months_academic": 0, + "person_months_summer": 1, + "project_scope": "" + }, + "currency": "USD", + "end_date": "2030-12-31", + "pi": "Anthony Scopatz", + "status": "pending", + "team": [ + { + "institution": "Columbia University", + "name": "scopatz", + "position": "pi" + } + ], + "title": "SymPy 1.1 Release Support" + } + { + "_id": "SymPy-2.1", + "amount": 3000.0, + "begin_date": "2019-06-01", + "cpp_info": { + "cppflag": true, + "institution": "Columbia University", + "other_agencies_submitted": "None", + "person_months_academic": 0, + "person_months_summer": 1, + "project_scope": "" + }, + "currency": "USD", + "end_date": "2030-12-31", + "pi": "sbillinge", + "status": "accepted", + "team": [ + { + "institution": "University of 2.1", + "name": "Anthony Scopatz 2.1", + "position": "pi" + } + ], + "title": "SymPy 2.1 Release Support" + } + { + "_id": "abc42", + "amount": 42000.0, + "begin_date": "2020-06-01", + "cpp_info": { + "cppflag": true, + "institution": "Columbia University", + "other_agencies_submitted": "None", + "person_months_academic": 0, + "person_months_summer": 1, + "project_scope": "" + }, + "currency": "USD", + "end_date": "2020-12-31", + "pi": "sbillinge", + "status": "submitted", + "title": "The answer to life, the universe, and everything" + } { "_id": "dmref15", "amount": 982785.0, @@ -165,40 +289,39 @@ JSON/Mongo Example "other_agencies_submitted": "None", "person_months_academic": 0, "person_months_summer": 1, - "project_scope": "lots to do but it doesn't overlap with any other of my grants" + "project_scope": "lots to do but it doesn't overlap with any other of my grants", + "single_pi": true }, "currency": "USD", - "day": 2, "duration": 3, "end_day": 1, "end_month": "May", "end_year": 2019, "funder": "NSF", - "month": "february", "notes": "Quite an idea", "pi": "Simon Billinge", "status": "accepted", + "submitted_date": "2015-02-02", "team": [ { - "institution": "Columbia Unviersity", + "institution": "Columbia University", "name": "qdu", - "position": "Co-PI" + "position": "copi" }, { - "institution": "Columbia Unviersity", + "institution": "Columbia University", "name": "dhsu", - "position": "Co-PI" + "position": "copi" }, { - "institution": "Columbia Unviersity", + "institution": "Columbia University", "name": "sbillinge", - "position": "PI", + "position": "pi", "subaward_amount": 330000.0 } ], "title": "DMREF: Novel, data validated, nanostructure determination methods for accelerating materials discovery", - "title_short": "DMREF nanostructure", - "year": 2015 + "title_short": "DMREF nanostructure" } { "_id": "mypropsal", @@ -211,7 +334,6 @@ JSON/Mongo Example "begin_month": "May", "begin_year": 2030, "currency": "USD", - "day": 18, "duration": 3, "end_day": 31, "end_month": "December", @@ -224,7 +346,6 @@ JSON/Mongo Example ], "narrative": "http://some.com/pdf" }, - "month": "Aug", "notes": "Quite an idea", "pi": "Anthony Scopatz", "pre": { @@ -239,6 +360,8 @@ JSON/Mongo Example "year": 1998 }, "status": "submitted", - "title": "A very fine proposal indeed", - "year": 1999 + "submitted_day": 18, + "submitted_month": "Aug", + "submitted_year": 1999, + "title": "A very fine proposal indeed" } diff --git a/doc/source/collections/reading_lists.rst b/doc/source/collections/reading_lists.rst new file mode 100644 index 000000000..697711bf7 --- /dev/null +++ b/doc/source/collections/reading_lists.rst @@ -0,0 +1,90 @@ +Reading_Lists +============= +Reading lists consist of doi's or urls of items and a brief synopsis of why they are interesting + +Schema +------ +The following lists key names mapped to its type and meaning for each entry. + +:_id: string, Unique identifier for the reading list., required +:date: ['date', 'string'], date the list was edited, optional +:day: integer, The day the list was edited, optional +:month: ['integer', 'string'], The month the list was edited, optional +:papers: list, The list of items that are in the list, required + + :type: dict, optional + + :doi: string, the doi of the paper. If it doesn't have one put 'na', optional + :text: string, the description of why the item is important or interesting, optional + :url: string, the url of the item if it has one, optional +:purpose: string, The purpose or target audience for the list, optional +:title: string, The title of the list, required +:year: integer, The day the list was edited, optional + + +YAML Example +------------ + +.. code-block:: yaml + + african_swallows: + date: '2019-12-01' + papers: + - doi: 10.1107/97809553602060000935 + text: Very basic, but brief, intro to african swallows + title: A step-by-step pathway towards african swallow understanding. + getting_started_with_pdf: + day: 15 + month: 12 + papers: + - doi: 10.1107/97809553602060000935 + text: Very basic, but brief, intro to powder diffraction in general + - doi: 10.1039/9781847558237-00464 + text: Lightest weight overview of PDF analysis around. Good starting point + - text: Download and install PDFgui software and run through the step by step + tutorial under the help tab + url: http://www.diffpy.org + purpose: Beginning reading about PDF + title: A step-by-step pathway towards PDF understanding. It is recommended to read + the papers in the order they are listed here. + year: 2019 + + +JSON/Mongo Example +------------------ + +.. code-block:: json + + { + "_id": "african_swallows", + "date": "2019-12-01", + "papers": [ + { + "doi": "10.1107/97809553602060000935", + "text": "Very basic, but brief, intro to african swallows" + } + ], + "title": "A step-by-step pathway towards african swallow understanding." + } + { + "_id": "getting_started_with_pdf", + "day": 15, + "month": 12, + "papers": [ + { + "doi": "10.1107/97809553602060000935", + "text": "Very basic, but brief, intro to powder diffraction in general" + }, + { + "doi": "10.1039/9781847558237-00464", + "text": "Lightest weight overview of PDF analysis around. Good starting point" + }, + { + "text": "Download and install PDFgui software and run through the step by step tutorial under the help tab", + "url": "http://www.diffpy.org" + } + ], + "purpose": "Beginning reading about PDF", + "title": "A step-by-step pathway towards PDF understanding. It is recommended to read the papers in the order they are listed here.", + "year": 2019 + } diff --git a/doc/source/collections/refereeReports.rst b/doc/source/collections/refereeReports.rst index 940f38830..66f92f424 100644 --- a/doc/source/collections/refereeReports.rst +++ b/doc/source/collections/refereeReports.rst @@ -19,14 +19,16 @@ The following lists key names mapped to its type and meaning for each entry. :did_what: list, What the study was, required :type: string, required +:due_date: ['string', 'date'], date the review is due in ISO format, required :editor_eyes_only: string, Comments you don't want passed to the author, optional :final_assessment: list, Summary of impressions of the study, required :type: string, required :first_author_last_name: string, Last name of first author will be referred to with et al., required :freewrite: string, Things that you want to add that don't fit into any category above, optional +:institutions: ['string', 'list'], the institutions of the pi and co-pis, optional :journal: string, name of the journal, required -:month: ['string', 'integer'], month when the review is being written, required +:month: ['integer', 'string'], The month the review was requested, optional :recommendation: string, Your publication recommendation, required Allowed values: @@ -35,20 +37,24 @@ The following lists key names mapped to its type and meaning for each entry. * smalledits * diffjournal * majoredits +:requester: string, Name of the program officer who requested the review, required :reviewer: string, name of person reviewing the paper, required :status: string, Where you are with the review, required Allowed values: + * invited * accepted * declined * downloaded * inprogress * submitted + * cancelled +:submitted_date: ['string', 'date'], submitted date in ISO YYYY-MM-DD format., optional :title: string, title of the paper under review, required :validity_assessment: list, List of impressions of the validity of the claims, required :type: string, required -:year: string, year when the review is being done, required +:year: ['string', 'integer'], year when the review is being done, required YAML Example @@ -65,20 +71,49 @@ YAML Example - measured with a ruler did_what: - found a much cheaper way to measure gravity waves + due_date: '2020-04-11' editor_eyes_only: to be honest, I don't believe a word of it final_assessment: - The authors should really start over first_author_last_name: Wingit freewrite: this comment didn't fit anywhere above journal: Nature - month: 2 + month: jun recommendation: reject + requester: Max Planck reviewer: sbillinge status: submitted + submitted_date: '2019-01-01' title: a ruler approach to measuring gravity waves validity_assessment: - complete rubbish - year: '2019' + year: 2019 + 2002nature: + claimed_found_what: + - more gravity waves + claimed_why_important: + - even more money for ice cream + did_how: + - measured with a ruler + did_what: + - found an even cheaper way to measure gravity waves + due_date: '2021-04-11' + editor_eyes_only: to be honest, I don't believe a word of it + final_assessment: + - The authors should really start over + first_author_last_name: Wingit + freewrite: this comment didn't fit anywhere above + journal: Nature + month: jun + recommendation: reject + requester: Max Planck + reviewer: sbillinge + status: accepted + submitted_date: '2020-01-01' + title: an even smaller ruler approach to measuring gravity waves + validity_assessment: + - complete rubbish + year: 2020 JSON/Mongo Example @@ -100,6 +135,7 @@ JSON/Mongo Example "did_what": [ "found a much cheaper way to measure gravity waves" ], + "due_date": "2020-04-11", "editor_eyes_only": "to be honest, I don't believe a word of it", "final_assessment": [ "The authors should really start over" @@ -107,13 +143,49 @@ JSON/Mongo Example "first_author_last_name": "Wingit", "freewrite": "this comment didn't fit anywhere above", "journal": "Nature", - "month": 2, + "month": "jun", "recommendation": "reject", + "requester": "Max Planck", "reviewer": "sbillinge", "status": "submitted", + "submitted_date": "2019-01-01", "title": "a ruler approach to measuring gravity waves", "validity_assessment": [ "complete rubbish" ], - "year": "2019" + "year": 2019 + } + { + "_id": "2002nature", + "claimed_found_what": [ + "more gravity waves" + ], + "claimed_why_important": [ + "even more money for ice cream" + ], + "did_how": [ + "measured with a ruler" + ], + "did_what": [ + "found an even cheaper way to measure gravity waves" + ], + "due_date": "2021-04-11", + "editor_eyes_only": "to be honest, I don't believe a word of it", + "final_assessment": [ + "The authors should really start over" + ], + "first_author_last_name": "Wingit", + "freewrite": "this comment didn't fit anywhere above", + "journal": "Nature", + "month": "jun", + "recommendation": "reject", + "requester": "Max Planck", + "reviewer": "sbillinge", + "status": "accepted", + "submitted_date": "2020-01-01", + "title": "an even smaller ruler approach to measuring gravity waves", + "validity_assessment": [ + "complete rubbish" + ], + "year": 2020 } diff --git a/doc/source/collections/software.rst b/doc/source/collections/software.rst new file mode 100644 index 000000000..f70a9da4e --- /dev/null +++ b/doc/source/collections/software.rst @@ -0,0 +1,47 @@ +Software +======== +Information about software, such as active, grants, etc. + +Schema +------ +The following lists key names mapped to its type and meaning for each entry. + +:_id: string, package id, required +:active: boolean, the status whether the package is actively maintained or not., required +:grants: list, grant(s) that supported package development/maintenance, required +:groups: list, research group(s) that develop the package., required +:url: string, url to the package on GitHub or GitLab, etc., required + + +YAML Example +------------ + +.. code-block:: yaml + + unique-package-id: + active: true + grants: + - dmref15 + - SymPy-1.1 + groups: + - ergs + url: https://github.com/diffpy/diffpy.utils + + +JSON/Mongo Example +------------------ + +.. code-block:: json + + { + "_id": "unique-package-id", + "active": true, + "grants": [ + "dmref15", + "SymPy-1.1" + ], + "groups": [ + "ergs" + ], + "url": "https://github.com/diffpy/diffpy.utils" + } diff --git a/doc/source/collections/students.rst b/doc/source/collections/students.rst index 580f794ed..04d886669 100644 --- a/doc/source/collections/students.rst +++ b/doc/source/collections/students.rst @@ -7,7 +7,7 @@ Schema The following lists key names mapped to its type and meaning for each entry. :_id: string, short representation, such as this-is-my-name, required -:aka: ('list', 'string'), list of aliases, optional +:aka: ['list', 'string'], list of aliases, optional :type: string, optional :email: string, email address, optional diff --git a/doc/source/collections/todos.rst b/doc/source/collections/todos.rst new file mode 100644 index 000000000..5aba00708 --- /dev/null +++ b/doc/source/collections/todos.rst @@ -0,0 +1,120 @@ +Todos +===== +This is a collection of todo items + +Schema +------ +The following lists key names mapped to its type and meaning for each entry. + +:_id: string, the person to whom these todos are applied.this should be the id of a person from people, required +:todos: list, a list of the todo tasks, optional + + :type: dict, optional + + :uuid: string, a universally unique id for the task so it can be referenced elsewhere, optional + :assigned_by: string, ID of the member that assigns the task, optional + :begin_date: ['string', 'date'], the begin date, optional + :end_date: ['string', 'date'], the end date, optional + :deadline: boolean, true if the due date is a hard deadline, optional + :description: string, the description of the to-do task, optional + :due_date: ['string', 'date'], the due date, optional + :duration: float, the size of the task/ the estimated duration it will take to finish the task. Unit: miniutes., optional + :importance: integer, the importance, from 0 to 3, optional + :status: string, the status: started/finished/cancelled, optional + + Allowed values: + * started + * finished + * cancelled + * paused + :notes: list, additional notes for this task, optional + + :type: string, optional + :running_index: integer, Index of a certain task used to update that task in the enumerated todo list., optional + :tags: list, user-defined tags that can be used to filter tasks, optional + + +YAML Example +------------ + +.. code-block:: yaml + + ascopatz: {} + sbillinge: + todos: + - assigned_by: scopatz + begin_date: '2020-06-15' + deadline: true + description: read paper + due_date: '2020-07-19' + duration: 60.0 + importance: 2 + running_index: 1 + status: started + tags: + - reading + - downtime + uuid: 1saefadf-wdaagea2 + - assigned_by: sbillinge + begin_date: '2020-06-22' + description: prepare the presentation + due_date: '2020-07-29' + duration: 30.0 + importance: 0 + notes: + - about 10 minutes + - don't forget to upload to the website + running_index: 2 + status: started + tags: + - downtime + uuid: 2saefadf-wdaagea3 + + +JSON/Mongo Example +------------------ + +.. code-block:: json + + { + "_id": "ascopatz" + } + { + "_id": "sbillinge", + "todos": [ + { + "assigned_by": "scopatz", + "begin_date": "2020-06-15", + "deadline": true, + "description": "read paper", + "due_date": "2020-07-19", + "duration": 60.0, + "importance": 2, + "running_index": 1, + "status": "started", + "tags": [ + "reading", + "downtime" + ], + "uuid": "1saefadf-wdaagea2" + }, + { + "assigned_by": "sbillinge", + "begin_date": "2020-06-22", + "description": "prepare the presentation", + "due_date": "2020-07-29", + "duration": 30.0, + "importance": 0, + "notes": [ + "about 10 minutes", + "don't forget to upload to the website" + ], + "running_index": 2, + "status": "started", + "tags": [ + "downtime" + ], + "uuid": "2saefadf-wdaagea3" + } + ] + } diff --git a/doc/source/commands/build.rst b/doc/source/commands/build.rst index e987425e9..a518ff486 100644 --- a/doc/source/commands/build.rst +++ b/doc/source/commands/build.rst @@ -6,11 +6,12 @@ build usage: regolith build [-h] [--no-pdf] [--from FROM_DATE] [--to TO_DATE] [--grants GRANTS [GRANTS ...]] [--people PEOPLE [PEOPLE ...]] + [--kwargs KWARGS [KWARGS ...]] build_targets [build_targets ...] positional arguments: build_targets targets to build. Currently valid targets are: - ['cv', 'html', 'publist', 'grade', 'grades', 'resume', 'current-pending', 'postdocad', 'review-man', 'review-prop', 'preslist', 'reimb', 'figure'] + ['annual-activity', 'beamplan', 'current-pending', 'cv', 'figure', 'formalletter', 'grade', 'grades', 'grant-report', 'html', 'internalhtml', 'postdocad', 'preslist', 'publist', 'reading-lists', 'reimb', 'recent-collabs', 'resume', 'review-man', 'review-prop'] options: -h, --help show this help message and exit @@ -21,3 +22,5 @@ build specify a grant or a space-separated list of grants so items are built only if associated with this(these) grant(s) --people PEOPLE [PEOPLE ...] specify a person or a space-separated list of people such that the build will be for only those people + --kwargs KWARGS [KWARGS ...] + pass a specific command to build a specific task if it exists diff --git a/doc/source/commands/fs-to-mongo.rst b/doc/source/commands/fs-to-mongo.rst index d81563884..32a335896 100644 --- a/doc/source/commands/fs-to-mongo.rst +++ b/doc/source/commands/fs-to-mongo.rst @@ -1,25 +1,12 @@ fs-to-mongo -======== -This command is used to port collections from the filesystem to either a local -or remote mongo cluster on a specific database. The following codeblock can be -utilized as the body of a regolithrc.json file in the local directory adjacent -to a db directory containing json or yaml files. This specific setup is used to -export to a remote atlas cluster (as indicated by the +srv). In order to do so, -the text encapsulated by the <> brackets must be completed for your application. +=========== -This functionality relies on the subprocess calls to a locally running mongo -instance regardless of whether or not the user is importing to a local or remote -instance. This can be downloaded from the following link: -https://www.mongodb.com/try/download/community +.. code-block:: bash -.. code-block:: JSON -{"groupname": "Example Group Name", - "databases": [ - "name": "", - "dst_url": "mongodb+srv://:@.uc5ro.mongodb.net/?w=majority", - "url": "..", - "public": false, - "path": "db", - "local": true} - ] -} + usage: regolith fs-to-mongo [-h] [--host HOST] + + options: + -h, --help show this help message and exit + --host HOST Specifies a resolvable hostname for the mongod to which to + connect. By default, the mongoimport attempts to connect to a + MongoDB instance running on the localhost on port number 27017. diff --git a/doc/source/commands/helper.rst b/doc/source/commands/helper.rst new file mode 100644 index 000000000..bab066186 --- /dev/null +++ b/doc/source/commands/helper.rst @@ -0,0 +1,9 @@ +helper +====== + +.. code-block:: bash + + usage: regolith helper [-h] + + options: + -h, --help show this help message and exit diff --git a/doc/source/commands/index.html b/doc/source/commands/index.html new file mode 100644 index 000000000..cba2d130c --- /dev/null +++ b/doc/source/commands/index.html @@ -0,0 +1,421 @@ + + + + + + +Regolith Commands + + + +
+ +

Regolith Commands

+ +

Shell commands for regolith

+
+usage: regolith [-h]
+                {rc,add,ingest,store,app,grade,build,deploy,email,classlist,json-to-yaml,yaml-to-json,validate}
+                ...
+
+options:
+  -h, --help            show this help message and exit
+
+cmd:
+  {rc,add,ingest,store,app,grade,build,deploy,email,classlist,json-to-yaml,yaml-to-json,validate}
+    rc                  prints run control
+    add                 adds a record to a database and collection
+    ingest              ingest many records from a foreign resource into a
+                        database
+    store               stores a file into the appropriate storage location.
+    app                 starts up a flask app for inspecting and modifying
+                        regolith data.
+    grade               starts up a flask app for adding grades to the
+                        database.
+    build               builds various available targets
+    deploy              deploys what was built by regolith
+    email               automates emailing
+    classlist           updates classlist information from file
+    json-to-yaml        Converts files from JSON to YAML
+    yaml-to-json        Converts files from YAML to JSON
+    validate            Validates db
+
+
+

System Message: ERROR/3 (/Users/huarundong/dbs/regolith/doc/source/commands/index.rst, line 38)

+

Unknown directive type "toctree".

+
+.. toctree::
+    :maxdepth: 1
+
+    add
+    app
+    build
+    classlist
+    deploy
+    email
+    grade
+    ingest
+    fs-to-mongo
+    json-to-yaml
+    rc
+    store
+    validate
+    yaml-to-json
+
+
+
+ + diff --git a/doc/source/commands/index.rst b/doc/source/commands/index.rst index d9c0efbfe..94c314dde 100644 --- a/doc/source/commands/index.rst +++ b/doc/source/commands/index.rst @@ -7,15 +7,17 @@ Shell commands for regolith .. code-block:: bash - usage: regolith [-h] - {rc,add,ingest,store,app,grade,build,deploy,email,classlist,json-to-yaml,yaml-to-json,validate} + usage: regolith [-h] [--version] + {helper,rc,add,ingest,store,app,grade,build,deploy,email,classlist,json-to-yaml,yaml-to-json,mongo-to-fs,fs-to-mongo,validate} ... options: -h, --help show this help message and exit + --version cmd: - {rc,add,ingest,store,app,grade,build,deploy,email,classlist,json-to-yaml,yaml-to-json,validate} + {helper,rc,add,ingest,store,app,grade,build,deploy,email,classlist,json-to-yaml,yaml-to-json,mongo-to-fs,fs-to-mongo,validate} + helper runs an available helper target rc prints run control add adds a record to a database and collection ingest ingest many records from a foreign resource into a @@ -31,6 +33,17 @@ Shell commands for regolith classlist updates classlist information from file json-to-yaml Converts files from JSON to YAML yaml-to-json Converts files from YAML to JSON + mongo-to-fs Backup database from mongodb to filesystem as json. + The database will be imported to the destination + specified by the 'database':'dst_url' key. For this to + work, ensure that the database is included in the + dst_url, and that local is set to true. + fs-to-mongo Import database from filesystem to mongodb. By + default, the database will be import to the local + mongodb. The database can also be imported to the + destination specified by the 'database':'dst_url' key. + For this to work, ensure that the database is included + in the dst_url, and that local is set to true. validate Validates db @@ -44,9 +57,12 @@ Shell commands for regolith classlist deploy email + fs-to-mongo grade + helper ingest json-to-yaml + mongo-to-fs rc store validate diff --git a/doc/source/commands/mongo-to-fs.rst b/doc/source/commands/mongo-to-fs.rst new file mode 100644 index 000000000..a152c44f7 --- /dev/null +++ b/doc/source/commands/mongo-to-fs.rst @@ -0,0 +1,12 @@ +mongo-to-fs +=========== + +.. code-block:: bash + + usage: regolith mongo-to-fs [-h] [--host HOST] + + options: + -h, --help show this help message and exit + --host HOST Specifies a resolvable hostname for the mongod to which to + connect. By default, the mongoexport attempts to connect to a + MongoDB instance running on the localhost on port number 27017.