Drupal: Example of Bulk Registration and Updates Using Feeds

Overview In the following article, I investigated search methods for nested fields using Strapi. This time, as a preparation for doing the same thing in Drupal, this is a note on how to perform bulk registration and updates of content. To set up a structure similar to the above article, we will work with two content types: Book and Author. Creating Content Types Create the Book and Author content types. ...

April 23, 2023 · 2 min · Nakamura

Drupal: Linking Content of Different Content Types to Each Other

Overview I investigated how to link content of different content types to each other, and here are my notes. Specifically, as shown below, item 1 is connected to a content item called image 1 through a field called iiif_image2. The goal is to add a link to item 1 on the image 1 page. I referenced the following article for this implementation. https://drupal.stackexchange.com/questions/255447/view-for-entity-reference-reverse-backwards-forwards Method Adding a View Navigate to /admin/structure/views and click “+ Add view” ...

April 20, 2023 · 2 min · Nakamura

Checking ORCID RDF Data

Here is how to check the RDF data of ORCID. The following ORCID ID is used as the target. https://orcid.org/0000-0001-8245-7925 For browsing, I use the Linked Data Browser developed by Masahide Kanzaki. https://www.kanzaki.com/works/2014/pub/ld-browser For example, you can browse the RDF data from the following URL. https://www.kanzaki.com/works/2014/pub/ld-browser?u=https%3A%2F%2Forcid.org%2F0000-0001-8245-7925 The specific RDF data is as follows. <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:prov="http://www.w3.org/ns/prov#" xmlns:pav="http://purl.org/pav/" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:gn="http://www.geonames.org/ontology#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:xsd="http://www.w3.org/2001/XMLSchema#"> <foaf:PersonalProfileDocument rdf:about="http://pub.orcid.org/orcid-pub-web/experimental_rdf_v1/0000-0001-8245-7925"> <pav:createdOn rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime" >2017-07-14T00:27:17.421Z</pav:createdOn> <prov:generatedAtTime rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime" >2022-12-14T02:40:04.693Z</prov:generatedAtTime> <pav:lastUpdateOn rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime" >2022-12-14T02:40:04.693Z</pav:lastUpdateOn> <pav:createdWith rdf:resource="https://orcid.org"/> <prov:wasAttributedTo> <prov:Person rdf:about="https://orcid.org/0000-0001-8245-7925"> <foaf:account> <foaf:OnlineAccount rdf:about="https://orcid.org/0000-0001-8245-7925#orcid-id"> <rdfs:label>0000-0001-8245-7925</rdfs:label> <foaf:accountName>0000-0001-8245-7925</foaf:accountName> <foaf:accountServiceHomepage rdf:resource="https://orcid.org"/> </foaf:OnlineAccount> </foaf:account> <foaf:publications> <foaf:Document rdf:about="https://orcid.org/0000-0001-8245-7925#workspace-works"/> </foaf:publications> <foaf:page rdf:resource="https://researchmap.jp/nakamura.satoru/?lang=english"/> <foaf:based_near> <gn:Feature> <gn:parentCountry> <rdf:Description rdf:about="http://sws.geonames.org/1861060/"> <gn:name>Japan</gn:name> <gn:countryCode>JP</gn:countryCode> <rdfs:label>Japan</rdfs:label> </rdf:Description> </gn:parentCountry> <gn:countryCode>JP</gn:countryCode> </gn:Feature> </foaf:based_near> <foaf:familyName>Nakamura</foaf:familyName> <foaf:givenName>Satoru</foaf:givenName> <rdfs:label>Satoru Nakamura</rdfs:label> <rdf:type rdf:resource="http://xmlns.com/foaf/0.1/Person"/> </prov:Person> </prov:wasAttributedTo> <pav:createdBy rdf:resource="https://orcid.org/0000-0001-8245-7925"/> <foaf:maker rdf:resource="https://orcid.org/0000-0001-8245-7925"/> <foaf:primaryTopic rdf:resource="https://orcid.org/0000-0001-8245-7925"/> </foaf:PersonalProfileDocument> </rdf:RDF> I hope this is helpful as a reference. ...

April 20, 2023 · 1 min · Nakamura

Creating a Custom API Using Drupal's RESTful Views

Overview This is a memo about creating a custom API using Drupal’s RESTful Views, based on the following article. https://acret.jp/drupal/node/434 In addition to the content of the above article, I also describe how to configure pagination. Creating Views I followed the instructions on the site mentioned above. Enabling Pagination I referenced the following article. https://www.drupal.org/forum/support/post-installation/2015-12-04/rest-export-pagination Select the Views Pager. I set it to Full as shown below. Mini also seemed to work fine. ...

April 20, 2023 · 1 min · Nakamura

Displaying the Total Number of Results in Drupal Views

Overview I looked into how to display the total number of results in Drupal Views, so here is a quick note. The total number of search results is displayed as shown below: Method I referenced the following article: https://ostraining.com/blog/drupal/count-views/ Access the following page: /admin/structure/views/view/content Click the Add button next to Header. Select “Result summary”. Click Apply, then click Save. Summary I hope this serves as a useful reference. ...

April 20, 2023 · 1 min · Nakamura

Adding Google Analytics 4 gtag.js to Omeka S

Overview The following module is available for setting up Google Analytics in Omeka S. https://omeka.org/s/modules/GoogleAnalytics/ As of April 2023, the above module also supports GA4, but as of April 2022, it was not supported as mentioned in the following post. https://forum.omeka.org/t/google-analytics-4-gtag-js/15034 Therefore, the following module was introduced, and I decided to try it. https://omeka.org/s/modules/AnalyticsSnippet/ Note that, as mentioned above, as of April 2023, the first module also supports GA4, so either module can be used for setting up Google Analytics. ...

April 19, 2023 · 1 min · Nakamura

Converting TEI XML to LaTeX Using TEI Critical Apparatus Toolbox

Overview TEI Critical Apparatus Toolbox is “a tool for people preparing a natively digital TEI critical edition.” http://teicat.huma-num.fr/index.php In addition to providing functionality for visualizing critical apparatus information, it offers several other useful features. Among these, I learned that it has a “TEI to LaTeX and PDF conversion” feature, so I decided to try it out. Print an edition Access the following URL. http://teicat.huma-num.fr/print.php Click the link with the text this dummy edition file to download the following sample data. ...

April 19, 2023 · 1 min · Nakamura

Prototype of an XML File Validation Tool Using JPCOAR Schema (v1)

I previously wrote the following article, where I tried validating XML files using the JPCOAR schema. This time, based on the verification from the above article, I created a validation tool using Google Colab. You can try it at the following URL. https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/JPCOARスキーマ_v1を用いたxmlファイルのバリデーション.ipynb You can validate target files by specifying the URL of a published XML file or by uploading a local file. I hope this serves as a helpful reference when creating XML files using the JPCOAR Schema (v1). ...

April 19, 2023 · 1 min · Nakamura

Bug Fixes and Feature Additions to the NDL Classical Book OCR Tutorial Using Google Colab

Overview I have been creating a tutorial for the NDL “Classical Book” OCR application using Google Colab, as introduced in the following article. This time, the following updates were made. Added terms of use Fixed bugs Added support for IIIF Presentation API v3 manifest file input The updated notebook can be accessed at the same URL as before. https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/NDL古典籍OCRの実行例.ipynb Terms of Use Please use the notebook itself under CC0. However, the “NDL Classical Book OCR Application” is released by the National Diet Library under the CC BY 4.0 license, so please include the appropriate credit. Also, please check the terms of use for the materials to which OCR is applied. ...

April 12, 2023 · 1 min · Nakamura

Creating IIIF Presentation API v3 Manifest Files Using Omeka S

Overview I needed to create IIIF Presentation API v3 manifest files, so I will introduce how to create them using Omeka S. Installing Omeka S and the IIIF Server Module Please install by referring to the following resource. https://zenn.dev/nakamura196/books/f4f87f9730e12e Creating Items in Omeka S This time, we will use the following image published by the National Diet Library. https://dl.ndl.go.jp/api/iiif/2585098/R0000003/full/full/0/default.jpg Create a new item and give it an appropriate title. ...

April 12, 2023 · 2 min · Nakamura

[Omeka S Theme Development] Updated the Bootstrap 5 Omeka S Theme

We have published an Omeka S theme using Bootstrap 5 at the following location. https://github.com/ldasjp8/Omeka-S-theme-Bootstrap5 Based on suggestions we received, we added creation date/update date as shown below. Additionally, as Omeka S version 4 has been released as shown below, we made it compatible. https://forum.omeka.org/t/omeka-s-version-4-0-0/16502 However, since there were methods that could not be used in common between version 3 and version 4 during the update, we created separate releases for version 3 and version 4. ...

April 10, 2023 · 1 min · Nakamura

I Created Digital Archive Tools Centered on IIIF

Overview I created digital archive tools centered on IIIF. You can try them at the following URL. https://nakamura196.github.io/viewer/ Currently, two features are provided: Image comparison using Mirador 3 Canvas number specification tool Image Comparison Using Mirador 3 https://nakamura196.github.io/viewer/input Specify the URLs of the manifest files or Canvas URIs you want to compare. Please try the examples provided. You can compare images as shown below. Canvas Number Specification Tool https://nakamura196.github.io/viewer/canvas ...

April 6, 2023 · 1 min · Nakamura

Creating RDF from Excel

Overview For creating RDF data, I prototyped a Python library that converts data created in Excel to RDF data. It is still a work in progress, but here are my notes. Notebook You can try it from the following notebook. https://colab.research.google.com/github/nakamura196/ndl_ocr/blob/main/ExcelからRDFデータを作成する.ipynb Source Excel Data Create an Excel file like the following. https://docs.google.com/spreadsheets/d/16SufG69_aZP0u0Kez8bisImGvVb4-z990AEPesdVxLo/edit#gid=0 In the above example, the prefix information used is organized in a sheet named “prefix.” The actual data is entered in a sheet named “target.” Referencing the specifications of Omeka S’s Bulk Import, language labels like “@ja” and types like “^^uri” are specified. ...

April 3, 2023 · 1 min · Nakamura

Obtaining Persistent Identifiers with w3id.org and Redirecting to Snorql

Overview I created the following page for publishing RDF data. https://sukilam-educational-metadata.github.io/ In particular, from the following page, you can search RDF data using SPARQL and Snorql. For Snorql, I am using “Snorql for Japan Search”. Please try the query examples at the bottom of the page. https://sukilam-educational-metadata.github.io/snorql/ When publishing this page, I obtained persistent identifiers using w3id.org and set up redirects to Snorql, so this is a personal note for future reference. ...

April 2, 2023 · 2 min · Nakamura

Bidirectional Interaction Between Vue 3 and Babylon.js (Part 2)

Overview In the following article, I created a program for interaction between Vue 3 and Babylon.js. This time, as an advanced version of the above, the mesh to be passed to the scene is specified from Vue. You can check the content at the following link. (There are some parts where meshes are not properly deleted. This is planned to be fixed in the future.) https://youtu.be/-dyQp-QX42I Demo Site https://nakamura196.github.io/nuxt3-babylonjs/10 ...

March 29, 2023 · 1 min · Nakamura

Changing Annotation Colors in IIIF Curation Viewer

Overview I received a request to change the colors of annotations added in IIIF Curation Viewer, so I will introduce one method for doing so. The types of annotation markers are documented at the following link: http://codh.rois.ac.jp/software/iiif-curation-viewer/annotation.html#マーカーの種類 While it is possible to manually or programmatically modify the JSON data, this time I will introduce a method using a GUI. Video I recorded a video of the workflow. Please use it as a reference. The example uses “Night Parade of One Hundred Demons” (held by the University of Tokyo General Library). ...

March 28, 2023 · 2 min · Nakamura

Omeka Classic and Omeka S: Feature Comparison (Explained by GPT-4)

Omeka Classic and Omeka S: Feature Comparison (Explained by GPT-4) Target Users: Omeka Classic: Primarily for individuals and small organizations to publish digital collections. Omeka S: Designed to handle multiple projects simultaneously for medium to large organizations. Site Management: Omeka Classic: Creates one website per instance. Omeka S: Can create and manage multiple websites from a single instance. Data Sharing: Omeka Classic: Basically creates independent sites. Omeka S: Supports Linked Data and Semantic Web technologies to facilitate data reuse and sharing. Extensions: ...

March 17, 2023 · 2 min · Nakamura

Omeka S User Permissions and Access to Private Resources

Overview I needed to create a user with viewing permissions for private resources in Omeka S, so this is a memo about that. Omeka S User Permissions Omeka S provides multiple user permission levels. Specifically, they are described on the following page. https://omeka.org/s/docs/user-manual/admin/users/#users Below is a summary with Japanese translations for reference. English Japanese Global Administrator full installation privileges. Global Administrator Full installation privileges Supervisor robust site and content privileges. Supervisor Robust site and content privileges Editor (Content Expert) full privileges for content creation. Editor Full privileges for content creation Reviewer robust content privileges but can only delete own content. Reviewer Robust content privileges but can only delete own content Author create own content. Author Can create own content Researcher search and read privileges only. Researcher Search and read privileges only Access to Private Resources: View Private Resources Module In the table above, Researcher has only search and read privileges, making it one of the possible permission levels to use when requesting review of private resources, for example. (Additionally, permissions can be extended using modules such as the Guest module.) ...

March 17, 2023 · 2 min · Nakamura

[Omeka S Module Introduction] Bulk Import: Batch Registration of Metadata and Images Using CSV Files (2023-03 Edition)

Overview I previously wrote the following article about how to use the “Bulk Import” module for batch registration of metadata (items) and images (media) into Omeka S. https://nakamura196.hatenablog.com/entry/2021/07/28/080952 However, due to updates to Omeka S and its modules, some behaviors differ as of March 2023. In this article, I will re-introduce the entire workflow from item set registration to media registration, while leaving the detailed explanations to the article above. ...

March 12, 2023 · 3 min · Nakamura

Running ArchivesSpace as a Unix Daemon

Instructions were found at the following link. https://archivesspace.github.io/tech-docs/administration/unix_daemon.html Specifically, it appears you can run it as follows: cd /home/ubuntu/archivesspace/ ./archivesspace.sh start

February 10, 2023 · 1 min · Nakamura