{"id":2218,"date":"2020-09-17T18:18:42","date_gmt":"2020-09-17T18:18:42","guid":{"rendered":"https:\/\/archives-library.wcsu.edu\/cao\/?page_id=2218"},"modified":"2025-10-03T15:04:41","modified_gmt":"2025-10-03T15:04:41","slug":"new-coding-conventions","status":"publish","type":"page","link":"https:\/\/archives-library.wcsu.edu\/cao\/new-coding-conventions\/","title":{"rendered":"Coding Conventions"},"content":{"rendered":"<div class=\"entry\">\n\n<p>CAO has a few simple required coding conventions for the EAD finding aids that it searches.\u00a0 The requirements below ensure that CAO functions as intended. None of these coding conventions run contrary to best practices for DA:CS or EAD. EADs that are indexed in CAO <strong>must<\/strong> be &#8220;<a href=\"https:\/\/en.wikipedia.org\/wiki\/Well-formed_document#targetText=A%20well%2Dformed%20document%20in,both%20physical%20and%20logical%20structures%22.\">well-formed<\/a>&#8221; and valid (either against the 2002 schema or the v.1 DTD* &#8211; soon, we anticipate that CAO will be able to accommodate EAD3).\u00a0<\/p>\n<p>In general, your EADs should be clean of unnecessary spaces and line breaks, especially within tags. This is not an issue if you are using a tool like ArchivesSpace to generate your EAD. If you are encoding by hand with a text editor, validate it.\u00a0<\/p>\n<p>If you are using a tool like ArchivesSpace, AtoM, Archivists&#8217; Toolkit, Archon, etc. to generate EAD, many of the coding conventions are enforced by the software.***<\/p>\n<p><span style=\"color: #993300;\"><b>1. Your finding aid must have a creator, title, abstract, biographical\/historical note<\/b>\u00a0and a <b>scope\/content note<\/b>:<\/span><\/p>\n<p>A finding aid\/collection must have a <strong>creator. <\/strong>If you use ArchivesSpace, this would be fulfilled with an agent with role as creator.<\/p>\n<p>In EAD, something like this:<\/p>\n<p>&lt;<span class=\"start-tag\">origination<\/span> <span class=\"attribute-name\">label<\/span>=&#8221;<a class=\"attribute-value\">Creator<\/a>&#8220;&gt; <span id=\"line40\"><\/span> &lt;<span class=\"start-tag\">persname<\/span> <span class=\"attribute-name\">rules<\/span>=&#8221;<a class=\"attribute-value\">dacs<\/a>&#8221; <span class=\"attribute-name\">source<\/span>=&#8221;<a class=\"attribute-value\">ulan<\/a>&#8220;&gt;Hudiakoff, Andrei, 1894-1985&lt;\/<span class=\"end-tag\">persname<\/span>&gt; <span id=\"line41\"><\/span> &lt;\/<span class=\"end-tag\">origination<\/span>&gt;<\/p>\n<p>A finding aid\/collection must have a <strong>title. <\/strong><\/p>\n<pre id=\"line1\">&lt;<span class=\"start-tag\">archdesc<\/span> <span class=\"attribute-name\">level<\/span>=\"<a class=\"attribute-value\">collection<\/a>\"&gt;\n<span id=\"line34\"><\/span>    &lt;<span class=\"start-tag\">did<\/span>&gt;\n<span id=\"line35\"><\/span>      &lt;<span class=\"start-tag\">repository<\/span>&gt;\n<span id=\"line36\"><\/span>        &lt;<span class=\"start-tag\">corpname<\/span>&gt;Western Connecticut State University Archives and Special Collections&lt;\/<span class=\"end-tag\">corpname<\/span>&gt;\n<span id=\"line37\"><\/span>      &lt;\/<span class=\"end-tag\">repository<\/span>&gt;\n<span id=\"line38\"><\/span>      &lt;<span class=\"start-tag\">unittitle<\/span>&gt;Andrei Hudiakoff Published Illustrations&lt;\/<span class=\"end-tag\">unittitle<\/span>&gt;\n<span id=\"line39\"><\/span>      &lt;<span class=\"start-tag\">origination<\/span> <span class=\"attribute-name\">label<\/span>=\"<a class=\"attribute-value\">Creator<\/a>\"&gt;\n<span id=\"line40\"><\/span>        &lt;<span class=\"start-tag\">persname<\/span> <span class=\"attribute-name\">rules<\/span>=\"<a class=\"attribute-value\">dacs<\/a>\" <span class=\"attribute-name\">source<\/span>=\"<a class=\"attribute-value\">ulan<\/a>\"&gt;Hudiakoff, Andrei, 1894-1985&lt;\/<span class=\"end-tag\">persname<\/span>&gt;\n<span id=\"line41\"><\/span>      &lt;\/<span class=\"end-tag\">origination<\/span>&gt;\n<span id=\"line42\"><\/span>      &lt;<span class=\"start-tag\">unitid<\/span>&gt;MS 066&lt;\/<span class=\"end-tag\">unitid<\/span>&gt;<br \/><br \/>Then make sure you have an <strong>&lt;abstract&gt;, &lt;scopecontent&gt; <\/strong>and<strong> &lt;bioghist&gt;<\/strong>.<\/pre>\n<p><span style=\"color: #993300;\"><strong>2. Have a unique eadid:<\/strong><\/span><\/p>\n<pre id=\"line1\">&lt;<span class=\"start-tag\">eadid<\/span> <span class=\"attribute-name\">countrycode<\/span>=\"<a class=\"attribute-value\">US<\/a>\" <span class=\"attribute-name\">mainagencycode<\/span>=\"<a class=\"attribute-value\">US-ctdabn<\/a>\"&gt;ctdbn_ms066_hudiakoff&lt;\/<span class=\"end-tag\">eadid<\/span>&gt;.<\/pre>\n<p><b>Your filename should be the same as your eadid (though, the eadid should not have a file extension)<\/b>.\u00a0 In the example for the eadid at the top of this section, the filename of that EAD should be: ctdbn_ms066_hudiakoff.xml.\u00a0 Also, keep in mind that as you are sharing your data in this database with other repositories using ids and filenames, <strong>your filename\/id should attempt to be unique<\/strong>.\u00a0 If it is not, another repository&#8217;s finding aid with the same name may replace yours in the database. If this does happen, no worries.\u00a0 We&#8217;ll work with you to rename the EAD.\u00a0<strong> If your file has no eadid, it will be rejected<\/strong> from the indexer.**\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/p>\n<p><strong>Filenames<\/strong> and &lt;eadid&gt;s <strong>should<\/strong> be primarily alphanumeric &#8211; underscores are OK.\u00a0 You should <strong>not<\/strong> use spaces, hyphens, quotation marks, question marks, plus signs, periods\u00a0 &#8211; <em>except before the file extension- <\/em>, ampersands, etc.\u00a0 Clean filenames\/ids (for example &#8220;rg045_rogers&#8221;, &#8220;mss0003_42&#8221;, &#8220;WillingtonUpton&#8221;, etc.) help in reducing errors that can occur in the software when file names look like a coding syntax.\u00a0\u00a0<\/p>\n<p><span style=\"color: #993300;\"><strong>3. It MUST NOT have a normal attribute in a &lt;unitdate&gt; with a start date greater than the end date in a date range<\/strong>\u00a0<\/span>(or a date range greater than 2000 years)<span style=\"color: #993300;\"><strong>:<\/strong><\/span> This will cause your file to be rejected by the indexer.\u00a0 A finding aid that contains something like this: &lt;unitdate normal=&#8221;1890\/1871&#8243;&gt;1890-1871&lt;\/unitdate&gt; or &lt;unitdate normal=&#8221;10\/2023&#8243;&gt;10-2023&lt;\/unitdate&gt; will not be indexed.<\/p>\n<p><span style=\"color: #993300;\"><span style=\"color: #993300;\"><b>4.\u00a0 At least one level declared for in the inventory and a title and\/or date for each component:<\/b><\/span><\/span><\/p>\n<ul>\n<li>The inventory <strong>must<\/strong> have at least a level designation on your first &lt;c&gt;, like &lt;c01 level=&#8221;series&#8221;&gt;, for example (ASpace forces you to set a level);\u00a0<\/li>\n<li>you should either have a title or a date for a component.\u00a0 If you do not, the system will add &#8220;untitled&#8221; to your component.<\/li>\n<li>we have noted a number of repositories using &lt;unitid&gt;s as titles of series or subseries.\u00a0 On testing and rollout, we altered a number of finding aids with this issue and changed their &lt;unitid&gt;s to &lt;unittitle&gt;s, but will only do this for the CAO rollout.<\/li>\n<\/ul>\n<div class=\"viewer\">\n<p>That&#8217;s it.\u00a0 If you&#8217;re worried that this is a lot of work, you shouldn&#8217;t &#8211; again, these conventions above are all in line with EAD and DA:CS best practice.\u00a0<\/p>\n<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<\/p>\n<\/div>\n<p><em><span style=\"color: #993300;\"><strong>For CAO ArchivesSpa<span style=\"color: #993300;\">ce <\/span><\/strong><strong>users<\/strong><\/span>: if you are using CAO to harvest your ASpace\u00a0 data, every resource must <strong>be public<\/strong>, have an agent with the role set to <strong>creator<\/strong>, and include these notes: an <strong>abstract,<\/strong> a <strong>biographical historical, <\/strong>and a <strong>scope and contents<\/strong> or the resource will not be exported. And <strong>ASpace users need to include an eadid<\/strong> just like everyone else &#8211; see the note above!\u00a0 We name your file the same as the eadid.<br \/><\/em><\/p>\n<p><em><strong>FOR ASPACE harvests:<\/strong> If your files are being harvested from an ArchivesSpace instance and there is no eadid for a resource, we will generate one based on your repository code and the ASpace resource number and then save and name the EAD file with that eadid value; for example: ctrepoid_noEADID_3_45 would be the eadid for the EAD file, ctrepoid_noEADID_3_45.xml.\u00a0 Where ctrepoid=your repository&#8217;s id, 3=your repository number in the ASpace instance, and 45=the resource number in the ASpace instance.\u00a0 In viewing your files, you see a filename with noEADID, you can figure out which of your ASpace resources don&#8217;t have the eadid by the filename CAO&#8217;s EAD has been assigned.<\/em><\/p>\n\n\n<p>*<em> we&#8217;ve found a few anomalies with EAD v.1 &#8211; if you are still using it, you should probably update your encoding to EAD2002.<\/em><\/p>\n\n\n\n<p>** <em>If for some reason your file with no eadid gets indexed, it will cause all your repository&#8217;s files to fail.  We will have to delete that null eadid file from the database.<\/em> <\/p>\n\n\n\n<p>*** it has come to our attention that in-line invalid XML tagging within ArchivesSpace fields is permitted and will not prevent the EAD export.  The implication is that ASpace may export invalid XML.  Invalid XML can&#8217;t be indexed by CAO.  If you use in-line tagging, try to export a pdf version of the finding aid.  If ASpace throws an error, you have invalid tagging somewhere. <\/p>\n\n\n<\/div>","protected":false},"excerpt":{"rendered":"<p>CAO has a few simple required coding conventions for the EAD finding aids that it searches.\u00a0 The requirements below ensure that CAO functions as intended. None of these coding conventions run contrary to best practices for DA:CS or EAD. EADs that are indexed in CAO must be &#8220;well-formed&#8221; and valid (either against the 2002 schema &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[5],"tags":[],"class_list":{"0":"post-2218","1":"page","2":"type-page","3":"status-publish","5":"category-technical-information"},"_links":{"self":[{"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/pages\/2218","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/comments?post=2218"}],"version-history":[{"count":0,"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/pages\/2218\/revisions"}],"wp:attachment":[{"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/media?parent=2218"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/categories?post=2218"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/archives-library.wcsu.edu\/cao\/wp-json\/wp\/v2\/tags?post=2218"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}