Difference between revisions of "Help:Import Spreadsheet"
Line 7: | Line 7: | ||
* The header record (field names, etc) which is the first line of the CSV file has a particular format requirement. The page field (required, because it will be the name of each wiki page created) ''must'' be named Title and the rest of the fields ''must'' be named Table_Name[field_name] (Table_name to be substituted by whatever table the spreadsheet is to be imported into. Currently we have Arch, Buildings, Firms or Grounds.) | * The header record (field names, etc) which is the first line of the CSV file has a particular format requirement. The page field (required, because it will be the name of each wiki page created) ''must'' be named Title and the rest of the fields ''must'' be named Table_Name[field_name] (Table_name to be substituted by whatever table the spreadsheet is to be imported into. Currently we have Arch, Buildings, Firms or Grounds.) | ||
+ | |||
+ | * The page field ''must be unique in the wiki.'' This field will be used for the page name in the wiki, and the wiki will not accept two pages with the same name. So, for instance, a name such as "Store" or "House" should not be used, or any other generic name, unless you intend for this page to be the only page in the wiki with that name. | ||
* Any commas in any of the fields must be within quotes. For instance, the entry brick, masonry, stone ''must'' be changed to "brick, masonry, stone" or the import will fail. | * Any commas in any of the fields must be within quotes. For instance, the entry brick, masonry, stone ''must'' be changed to "brick, masonry, stone" or the import will fail. |
Latest revision as of 21:50, August 11, 2021
We know that many researchers have used spreadsheets to organize their research, and it would be a waste of time if, in bringing that data into the wiki, it had to be entered all in by hand again. Fortunately the wiki has an import function where properly-formatted spreadsheet data can be automatically imported into the wiki.
CSV Files
In general, the process requires that the spreadsheet be exported to something called a comma-separated-values file (or CSV, for short) as an interim step, which file can then be imported into the wiki. Each row in that file will correspond to a future page on the wiki, and will be populated with whatever fields of data you have that correspond to the wiki fields. Nearly all spreadsheet programs have an "export to CSV" option, so the export to that format should be easy.
However, the file must be prepared in a particular format prior to export. Here are general considerations:
- The header record (field names, etc) which is the first line of the CSV file has a particular format requirement. The page field (required, because it will be the name of each wiki page created) must be named Title and the rest of the fields must be named Table_Name[field_name] (Table_name to be substituted by whatever table the spreadsheet is to be imported into. Currently we have Arch, Buildings, Firms or Grounds.)
- The page field must be unique in the wiki. This field will be used for the page name in the wiki, and the wiki will not accept two pages with the same name. So, for instance, a name such as "Store" or "House" should not be used, or any other generic name, unless you intend for this page to be the only page in the wiki with that name.
- Any commas in any of the fields must be within quotes. For instance, the entry brick, masonry, stone must be changed to "brick, masonry, stone" or the import will fail.
- Make sure there isn't already a page for the record in the wiki. If there is, delete that record from the CSV file and enter its data into the wiki page by hand.
The Table Formats
Note that you do not have to have an input for every field. You might not have any entries in any of the records for a particular field. However, the fields that you do have must be named (in the top row of the CSV file) exactly the field names below, including underscores, if any. And the names are case sensitive.
Peculiarities of Certain Field Types
Fields of type File hold a pointer to an image on the wiki. As the import process likely takes place prior to the upload of any associated images, we recommend leaving this type field blank during the import, and then returning later to upload the image and update the wiki page.
Fields of type Coordinates are geographic coordinates (lat/long). They must be decimal-degree values, and in a string " " separated by a comma, i.e "39.2356,-74.2356" otherwise they'll import, but won't be the right location. Note that decimal degrees notation is not the same as "degrees, minutes and seconds" notation. For example, 30.5 degrees (which is decimal degrees notation) is the equivalent of 30°30’00” (degrees, minutes, seconds notation). Do not take something looking like 30°23’46” and enter it in as 30.2346. They are not equivalent and you'll find the location will not be where you intend. If you have degrees, minutes and seconds, use this conversion helper.
Fields of type Page are pointers to a wiki page name. So the entry here should be exactly (including punctuation, spacing, etc.) the same as the title of the page being referenced. A page named "Egbert G. Pardiggle" on the wiki, for example, must not have an entry here of E. G. Pardiggle or Egbert Pardiggle. The system will not consider them as identical.
Fields having List of in their type description can have multiple entries, separated by semi-colons. For example, an entry for a firm might have several founders, and they can all be entered into the founders field: Nicholas Nickleby; Jacob Marley; Martin Chuzzlewit. This directs the wiki page to generate pointers for each person's individual wiki page, in contrast to a pointer to one page, i.e., the firm of Nickleby, Marley and Chuzzlewit. However, some "List of" fields have such combination-name entries; the proper form would be Nickleby, Marley and Chuzzlewit; Scrooge, Copperfield and Barkis; Sweedlepipe, Cratchit and Snodgrass. Note the semi-colons between each "entry."
Fields of type String will accept most anything, up to a limit of about 300 characters.
Fields of type URL must include at the beginning "http://" or "https://" as appropriate. Those prefixes are what tell the wiki that an external site is being referenced.
The perimeter field in the Grounds table is explained on the Add Grounds help page.
The Arch Table
Field Name | Type | Comments |
---|---|---|
Page | Page | This will be the page name for the person. |
portrait | File | We recommend leaving this field blank here. See above. |
birth_date | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
birth_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
birth_place | String | |
death_date | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
death_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
death_place | String | |
nationality | String | |
alma_mater | String | |
associated_firms | List of Page | See explanation of "lists" above. |
burial_place | String | |
spouse | String | |
signature | File | We recommend leaving this field blank here. See above. |
awards | String | |
significant_design | String |
The Buildings Table
Field Name | Type | Comments |
---|---|---|
Page | Page | This will be the page name for the building. |
image | File | We recommend leaving this field blank here. See above. |
address | String | |
city | String | Leave blank if Baltimore |
state | String | Leave blank if Maryland |
Geo | Coordinates | See instructions above for formatting. |
altitude | String | |
owner | String | |
building_type | String | This will govern whether the entry appears on maps or not. See instructions. |
architectural_style | String | |
height | Float | Enter number (feet) only. |
material | String | |
floor_count | Float | Enter number only. |
floor_area | Float | Enter number (square feet) only. |
elevator_count | Integer | Enter number only. |
structural_system | String | |
architect | Page | |
architecture_firm | Page | |
structural_engineer | String | |
civil_engineer | String | |
m_e_engineer | String | |
other_designers | String | |
surveyor | String | |
landscape_architect | String | |
contractors | List of Page | See explanation of "lists" above. |
awards | String | |
groundbreaking_date | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
groundbreaking_date_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
start_date | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
start_date_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
topped_out_date | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
topped_out_date_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
completion_date | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
completion_date_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
opened_date | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
opened_date_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
cost | Float | Enter number (dollars) only. |
cost_approx | Boolean | Is the cost above approximate? Enter 1 for Yes, leave blank for No. |
renovation_date | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
renovation_date_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
ren_architect | String | |
ren_firm | String | |
ren_l_a | String | |
ren_str_engineer | String | |
ren_civ_engineer | String | |
ren_oth_designers | String | |
ren_m_e_engineer | String | |
ren_contractors | List of Page | See explanation of "lists" above. |
ren_cost | Float | Enter number (dollars) only. |
ren_cost_approx | Boolean | Is the cost above approximate? Enter 1 for Yes, leave blank for No. |
ren_awards | String | |
demolished | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
demolished_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
national_register_id | Integer | |
national_register_url | URL |
The Firms Table
Field Name | Type | Comments |
---|---|---|
Page | Page | This will be the page name for the firm. |
logo | File | We recommend leaving this field blank here. See above. |
image | File | We recommend leaving this field blank here. See above. |
firm_type | List of String | See explanation of "lists" above. |
founders | List of Page | See explanation of "lists" above. |
antecedents | List of Page | See explanation of "lists" above. |
successors | List of Page | See explanation of "lists" above. |
personnel | List of Page | See explanation of "lists" above. |
location | String | |
founded | Start date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
founded_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
dissolved | End date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
dissolved_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
awards | List of String | See explanation of "lists" above. |
significant_projects | List of Page | See explanation of "lists" above. |
website | URL |
The Grounds Table
Field Name | Type | Comments |
---|---|---|
Page | Page | This will be the page name for the site. |
alt_name | String | |
image | File | We recommend leaving this field blank here. See above. |
address | String | |
perimeter | Text | See instructions above for formatting. |
Geo | Coordinates | See instructions above for formatting. |
founder | List of String | See explanation of "lists" above. |
owner | String | |
builder | List of String | See explanation of "lists" above. |
landscape_architect | Page | |
other_designers | List of Page | See explanation of "lists" above. |
acreage | Float | Bare acreage amount here, with no text. |
elevation | Float | |
founded | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
founded_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
opened | Date | mm/dd/yyyy OR mm/yyyy OR yyyy. |
opened_approx | Boolean | Is the date above approximate? Enter 1 for Yes, leave blank for No. |
type | List of String | See explanation of "lists" above. |
NRHP_ID | String | |
NRHP_url | URL |
The Import
After the CSV file is in a format that allows for one-to-one import to the wiki fields, click on the Import CSV page, select the CSV file using the "Browse" button at the top of the page, leave the encoding type as-is, select "Skip" for pages that already exist, and click on the Import button at the bottom to initiate the process.
Note that wikis do not import files of this type all at one time. To lessen the load on the site, they import one record each time there is another page request anywhere else on the wiki. This serves to spread the backend processing load out and allows the wiki to remain responsive to other users. Over the next few minutes or hours the wiki will import one record at a time from the CSV until all the records are online.