{"id":104,"date":"2023-03-24T15:12:19","date_gmt":"2023-03-24T19:12:19","guid":{"rendered":"https:\/\/carleton.ca\/xlab\/?p=104"},"modified":"2023-03-24T15:12:19","modified_gmt":"2023-03-24T19:12:19","slug":"computer-digital-archaeology-now","status":"publish","type":"post","link":"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/","title":{"rendered":"Computer, Digital Archaeology Now!"},"content":{"rendered":"<p><em>A v<a href=\"https:\/\/electricarchaeology.ca\/2023\/03\/20\/computer-digital-archaeology-now\/\">ersion of this post was originally put on Shawn Graham&#8217;s Electric Archaeology<\/a><\/em><\/p>\n<div class=\"wp-caption alignleft\" style=\"width: 300px\"><img decoding=\"async\" loading=\"lazy\" class=\"\" src=\"https:\/\/i.ytimg.com\/vi\/tg4UAyFvWAM\/maxresdefault.jpg\" width=\"300\" height=\"169\" \/><p class=\"wp-caption-text\">Cap&#8217;n Picard knows how to work the computer.<\/p><\/div>\n<p data-adtags-visited=\"true\">What if you could do digital archaeology by simply describing what you wanted to happen? Or any kind of cultural heritage informatics work? Like the computer in Star Trek, what if you could just describe what you want to have happen, and the computer figures it out? The potential of what is currently being marketed as &#8216;AI&#8217; is really a kind of autocorrect-on-steroids-to-the-nth degree. Not as snappy as &#8216;AI&#8217;, but basically: if it knows what a &#8216;completion&#8217; looks like, what the desired end goal should be, then maybe these &#8216;Large Language Models&#8217; (LLM) could be of use to us in the CHI space.<\/p>\n<p data-adtags-visited=\"true\">I have avidly been following all the latest developments in the llm scene; one of the best folks to follow is Simon Willison. Simon recently <a href=\"https:\/\/til.simonwillison.net\/llms\/python-react-pattern\">wrote<\/a>,<\/p>\n<blockquote><p>A popular nightmare scenario for AI is giving it access to tools, so it can make API calls and execute its own code and generally break free of the constraints of its initial environment.<\/p>\n<p>Let\u2019s do that now!<\/p><\/blockquote>\n<p data-adtags-visited=\"true\">This is called a \u2018ReAct\u2019 model, for \u2018reason and act\u2019. In a \u2018traditional\u2019 gpt3 prompt, you\u2019d give some text and the model would continue to complete the text, collapsing the probability of one letter\/token over another based on the prompt text you began with. With more complex elaborations of this, you give it examples of the kind of output you want. LLMs have no access to the real world. That is, until you show them how to use an API. It was described in this <a href=\"https:\/\/react-lm.github.io\/\">paper<\/a><\/p>\n<p data-adtags-visited=\"true\">\n<p data-adtags-visited=\"true\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-large\" src=\"https:\/\/react-lm.github.io\/files\/diagram.png\" width=\"3070\" height=\"828\" \/><\/p>\n<p data-adtags-visited=\"true\">Simon made a simple implementation of it; there are other implementations out there, but what I like about Simon\u2019s is that I can follow along and understand what it\u2019s doing. What\u2019s more, I can <em>extend<\/em> it myself. The prompt is straightforward enough:<\/p>\n<p data-adtags-visited=\"true\">prompt = \u201c\u201d\u201d<br \/>\nYou run in a loop of Thought, Action, PAUSE, Observation.<br \/>\nAt the end of the loop you output an Answer<br \/>\nUse Thought to describe your thoughts about the question you have been asked.<br \/>\nUse Action to run one of the actions available to you \u2013 then return PAUSE.<br \/>\nObservation will be the result of running those actions.<\/p>\n<p data-adtags-visited=\"true\">Your available actions are:<\/p>\n<p data-adtags-visited=\"true\">calculate:<br \/>\ne.g. calculate: 4 * 7 \/ 3<br \/>\nRuns a calculation and returns the number \u2013 uses Python so be sure to use floating point syntax if necessary<\/p>\n<p data-adtags-visited=\"true\">wikipedia:<br \/>\ne.g. wikipedia: Django<br \/>\nReturns a summary from searching Wikipedia<\/p>\n<p data-adtags-visited=\"true\">tailsx_search:<br \/>\ne.g. tailsx_search: Django<br \/>\nSearch TailsX for that term<\/p>\n<p data-adtags-visited=\"true\">open_context_search:<br \/>\ne.g. open_context_search: Poggio<br \/>\nSearch Open Context for that term<\/p>\n<p data-adtags-visited=\"true\">Always look things up on Wikipedia if you have the opportunity to do so.<\/p>\n<p data-adtags-visited=\"true\">Always look things up on TailsX if you have the opportunity to do so.<\/p>\n<p data-adtags-visited=\"true\">If a subject seems to be archaeological look things up on Open Context.<\/p>\n<p data-adtags-visited=\"true\">Example session:<\/p>\n<p data-adtags-visited=\"true\">Question: What is the capital of France?<br \/>\nThought: I should look up France on Wikipedia<br \/>\nAction: wikipedia: France<br \/>\nPAUSE<\/p>\n<p data-adtags-visited=\"true\">You will be called again with this:<\/p>\n<p data-adtags-visited=\"true\">Observation: France is a country. The capital is Paris.<\/p>\n<p data-adtags-visited=\"true\">You then output:<\/p>\n<p data-adtags-visited=\"true\">Answer: The capital of France is Paris<br \/>\n\u201c\u201d\u201d<br \/>\nIf this was all it was, it\u2019d just hallucinate and pretend to access the web. The fun happens with the way the control is handled \u2013 \u2018pause; you will be called again\u2019 \u2013 and where you start defining your actions. Here\u2019s one that goes and uses the API for a meta search engine that I added:<\/p>\n<pre>def tailsx_search(q):\r\n    return httpx.get(\"https:\/\/tailsx.extravi.dev\/api\", params={\r\n     \"q\": q,\r\n     \"t\": \"text\"\r\n     }).json()\r\n<\/pre>\n<p data-adtags-visited=\"true\">(please excuse the wonky formatting, stupid wordpress)<\/p>\n<p data-adtags-visited=\"true\">and for Open Context,<\/p>\n<pre>def open_context_search(q):\r\n    return httpx.get(\"https:\/\/opencontext.org\/query\/.json?type=projects&amp;response=uri-meta\", params={\r\n     \"q\": q\r\n    }).json()\r\n<\/pre>\n<p data-adtags-visited=\"true\">Which allows the chatbot to search Open Context for high-level descriptions of various archaeological projects who have published their data there.<\/p>\n<p data-adtags-visited=\"true\">The result:<\/p>\n<p data-adtags-visited=\"true\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-large wp-image-3915\" src=\"https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=680&amp;h=133\" sizes=\"(max-width: 680px) 100vw, 680px\" srcset=\"https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=680&amp;h=133 680w, https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=1360&amp;h=266 1360w, https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=150&amp;h=29 150w, https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=300&amp;h=59 300w, https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=768&amp;h=150 768w, https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=1024&amp;h=200 1024w\" alt=\"\" width=\"680\" height=\"133\" data-attachment-id=\"3915\" data-permalink=\"https:\/\/electricarchaeology.ca\/2023\/03\/20\/computer-digital-archaeology-now\/screen-shot-2023-03-20-at-7-40-20-pm\/\" data-orig-file=\"https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png\" data-orig-size=\"2282,446\" data-comments-opened=\"0\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screen Shot 2023-03-20 at 7.40.20 PM\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=300\" data-large-file=\"https:\/\/electricarchaeologist.files.wordpress.com\/2023\/03\/screen-shot-2023-03-20-at-7.40.20-pm.png?w=680\" \/><\/p>\n<p data-adtags-visited=\"true\">Ok, that\u2019s a pretty blurry screenshot, sorry. It says \u2013<\/p>\n<hr \/>\n<div>\n<div>query(\u201cWhat kinds of sites have been excavated in Nubia?\u201d)<\/div>\n<\/div>\n<div><\/div>\n<div>\n<pre>Thought: I should look this up on Open Context since Nubia is an archaeological site.\r\nAction: open_context_search: Nubia Excavation\r\nPAUSE\r\n -- running open_context_search Nubia Excavation\r\nObservation: []\r\nThought: It seems like there are no search results for \"Nubia Excavation\" on Open Context. I'll try searching using different keywords.\r\nAction: open_context_search: Nubia archaeological sites\r\nPAUSE\r\n -- running open_context_search Nubia archaeological sites\r\nObservation: [{'uri': '<a href=\"http:\/\/opencontext.org\/projects\/2c7ff3c8-b299-4138-ab04-f4e17e49ad64\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">http:\/\/opencontext.org\/projects\/2c7ff3c8-b299-4138-ab04-f4e17e49ad64<\/a>', \r\n'href': '<a href=\"https:\/\/opencontext.org\/projects\/2c7ff3c8-b299-4138-ab04-f4e17e49ad64\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/opencontext.org\/projects\/2c7ff3c8-b299-4138-ab04-f4e17e49ad64<\/a>', \r\n'citation uri': '<a href=\"https:\/\/doi.org\/10.6078\/M74747Z0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/doi.org\/10.6078\/M74747Z0<\/a>', 'label': 'The Amulets of the Kerma Culture', \r\n'project label': 'The Amulets of the Kerma Culture', 'project href': '<a href=\"https:\/\/opencontext.org\/projects\/2c7ff3c8-b299-4138-ab04-f4e17e49ad64\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/opencontext.org\/projects\/2c7ff3c8-b299-4138-ab04-f4e17e49ad64<\/a>', \r\n'context label': 'Africa\/Sudan', 'context href': '<a href=\"https:\/\/opencontext.org\/subjects\/2572daff-7242-474a-9b5c-f34943a684b4\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/opencontext.org\/subjects\/2572daff-7242-474a-9b5c-f34943a684b4<\/a>', \r\n'latitude': 21.22096935789715, 'longitude': 30.88143850649228, 'early bce\/ce': -2500.0, 'late bce\/ce': -1500.0, \r\n'item category': 'Projects', 'icon': '<a href=\"https:\/\/opencontext.org\/static\/oc\/icons-v2\/noun-research-project-2341022.svg\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/opencontext.org\/static\/oc\/icons-v2\/noun-research-project-2341022.svg<\/a>', \r\n'snippet': 'The research focused on a systematic comparative analysis, to confirm the apparent differences between the typologies found in the capital city \r\nand those from Kerma &lt;mark&gt;sites&lt;\/mark&gt; located in the peripheral areas of the Kingdom, such as the &lt;mark&gt;sites&lt;\/mark&gt; in Upper and Lower &lt;mark&gt;Nubia&lt;\/mark&gt;, \r\nand in the Fourth Cataract area. \\n\\nNotes:\\n[1] Reisner, G.A. 1923a-b.', 'published': '2007-01-01T00:00:00Z', 'updated': '2023-02-26T20:10:02Z'}]\r\n\r\nObservation: The search on Open Context for \"Nubia archaeological sites\" returned one result. \r\nThe project is called \"The Amulets of the Kerma Culture\" and it focuses on a systematic comparative analysis of amulets found in the capital city of Kerma and \r\nthose from peripheral sites of the kingdom, including Upper and Lower Nubia. The project was published in 2007 and updated as recently as February 2023.<\/pre>\n<\/div>\n<hr \/>\n<p data-adtags-visited=\"true\">So \u2013 a chatbot that knows to go to Wikipedia, websearch, or open context, <em>depending<\/em> on context. Oh, it can also do math. You can try it out here in this <a href=\"https:\/\/colab.research.google.com\/drive\/1zPcaFPKG9LlJRIgA08x8ebI8pi2-MZ4L\">Colab Notebook<\/a> . You\u2019ll need your own OpenAI key. If you look at my colab notebook, I have an experiment where I asked it to identify scholars and scholarship on Pompeii (trying to limit it to what it finds on Wikipedia so that it doesn\u2019t fabricate any scholars) and then write the result as a Cypher query for a Neo4j knowledge graph.<\/p>\n<p data-adtags-visited=\"true\">I have another bot in the works, trained on archaeological data from Pompeii (from the Pompeian Artistic Landscapes Project). That bot converts its training into a vector embedding, and currently can only respond based on that archaeological data. I can ask it to compare (for instance) the treatment of Ariadne versus Theseus in Pompeian wall paintings. I want to enhance its abilities with similar agency. It\u2019s built with <a href=\"https:\/\/langchain.readthedocs.io\/en\/latest\/index.html\">LangChain<\/a>; I\u2019ll probably blog about it in due course.<\/p>\n<p data-adtags-visited=\"true\">Thank you to Eric Kansa for walking me through some of the Open Context API. None of this is his fault.<\/p>\n<p data-adtags-visited=\"true\">Update March 24th<\/p>\n<p data-adtags-visited=\"true\">Developments continue apace; OpenAI now has &#8216;<a href=\"https:\/\/openai.com\/blog\/chatgpt-plugins\">plugins for ChatGPT<\/a>&#8216;. These are extensions that operate (as I understand things) rather similar to what we did above. By making it relatively straightforward to do this within the API itself, things are going to escalate <em>even faster<\/em>. The scientific computing engine\/platform Wolfram has just released a plugin to tie ChatGPT to <em>their <\/em>computing resources; <a href=\"https:\/\/writings.stephenwolfram.com\/2023\/03\/chatgpt-gets-its-wolfram-superpowers\/\">it looks pretty&#8230; wow<\/a>. <strong>However <\/strong>&#8211; it <em>still<\/em> hallucinates! See S<a href=\"https:\/\/simonwillison.net\/2023\/Mar\/24\/datasette-chatgpt-plugin\/\">imon Willison&#8217;s walk through of how to build one of these plugins on your own data<\/a> (which we in the XLab will be trying out for sure). I&#8217;m excited to try out Simon&#8217;s walkthrough, because Simon makes the excellent data publishing tool datasette; I used that tool some time ago to turn the Canada Science and Technology Museum&#8217;s online catalogue into an API. It should be trivial to connect that to chatgpt now through the plugin. What would you ask a museum catalogue if you knew it could answer back?<\/p>\n<p data-adtags-visited=\"true\">We know these models are fraught with dangers, but this kind of enhanced querying could be extremely useful. We progress with our eyes open&#8230;<\/p>\n<p data-adtags-visited=\"true\">\n<div class=\"mceTemp\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>A version of this post was originally put on Shawn Graham&#8217;s Electric Archaeology What if you could do digital archaeology by simply describing what you wanted to happen? Or any kind of cultural heritage informatics work? Like the computer in Star Trek, what if you could just describe what you want to have happen, and [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"","_relevanssi_noindex_reason":"","_mi_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[1],"tags":[63,69,70,68],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Computer, Digital Archaeology Now! - X-Lab<\/title>\n<meta name=\"description\" content=\"A version of this post was originally put on Shawn Graham&#039;s Electric Archaeology What if you could do digital archaeology by simply describing what you\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"shawngraham\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/\",\"url\":\"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/\",\"name\":\"Computer, Digital Archaeology Now! - X-Lab\",\"isPartOf\":{\"@id\":\"https:\/\/carleton.ca\/xlab\/#website\"},\"datePublished\":\"2023-03-24T19:12:19+00:00\",\"dateModified\":\"2023-03-24T19:12:19+00:00\",\"author\":{\"@id\":\"https:\/\/carleton.ca\/xlab\/#\/schema\/person\/e8707158a71e77734ea13346b6e46feb\"},\"description\":\"A version of this post was originally put on Shawn Graham's Electric Archaeology What if you could do digital archaeology by simply describing what you\",\"breadcrumb\":{\"@id\":\"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/carleton.ca\/xlab\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"News\",\"item\":\"https:\/\/carleton.ca\/xlab\/category\/news\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Computer, Digital Archaeology Now!\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/carleton.ca\/xlab\/#website\",\"url\":\"https:\/\/carleton.ca\/xlab\/\",\"name\":\"X-Lab\",\"description\":\"Carleton University\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/carleton.ca\/xlab\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/carleton.ca\/xlab\/#\/schema\/person\/e8707158a71e77734ea13346b6e46feb\",\"name\":\"shawngraham\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/carleton.ca\/xlab\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b4be5c0f305aa12c7a3dd75ae5c731e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1b4be5c0f305aa12c7a3dd75ae5c731e?s=96&d=mm&r=g\",\"caption\":\"shawngraham\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Computer, Digital Archaeology Now! - X-Lab","description":"A version of this post was originally put on Shawn Graham's Electric Archaeology What if you could do digital archaeology by simply describing what you","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/","twitter_misc":{"Written by":"shawngraham","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/","url":"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/","name":"Computer, Digital Archaeology Now! - X-Lab","isPartOf":{"@id":"https:\/\/carleton.ca\/xlab\/#website"},"datePublished":"2023-03-24T19:12:19+00:00","dateModified":"2023-03-24T19:12:19+00:00","author":{"@id":"https:\/\/carleton.ca\/xlab\/#\/schema\/person\/e8707158a71e77734ea13346b6e46feb"},"description":"A version of this post was originally put on Shawn Graham's Electric Archaeology What if you could do digital archaeology by simply describing what you","breadcrumb":{"@id":"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/carleton.ca\/xlab\/2023\/computer-digital-archaeology-now\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/carleton.ca\/xlab\/"},{"@type":"ListItem","position":2,"name":"News","item":"https:\/\/carleton.ca\/xlab\/category\/news\/"},{"@type":"ListItem","position":3,"name":"Computer, Digital Archaeology Now!"}]},{"@type":"WebSite","@id":"https:\/\/carleton.ca\/xlab\/#website","url":"https:\/\/carleton.ca\/xlab\/","name":"X-Lab","description":"Carleton University","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/carleton.ca\/xlab\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/carleton.ca\/xlab\/#\/schema\/person\/e8707158a71e77734ea13346b6e46feb","name":"shawngraham","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/carleton.ca\/xlab\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1b4be5c0f305aa12c7a3dd75ae5c731e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b4be5c0f305aa12c7a3dd75ae5c731e?s=96&d=mm&r=g","caption":"shawngraham"}}]}},"acf":{"Post Thumbnail Icon":"","Post Thumbnail":false},"_links":{"self":[{"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/posts\/104"}],"collection":[{"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/comments?post=104"}],"version-history":[{"count":1,"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/posts\/104\/revisions"}],"predecessor-version":[{"id":105,"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/posts\/104\/revisions\/105"}],"wp:attachment":[{"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/media?parent=104"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/categories?post=104"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/carleton.ca\/xlab\/wp-json\/wp\/v2\/tags?post=104"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}