srophe / syriaca-data

Repository for Syriaca.org TEI data, used by srophe-eXist-app.
4 stars 16 forks source link

Universal Syriaca RDF transformation #702

Closed davidamichelson closed 7 years ago

davidamichelson commented 7 years ago

The purpose of this issue is to create generic lowest common denominator transformation for persons, places, works, and bibl records so we can generate linked data.

This is a draft.

@wsalesky Please write a transform for the following:

For a each record we need to generate four sets of triples. This is the model for a person record:


<http:syriaca.org/person/13> rdf:type skos:Concept;
a lawd:person;
skos:prefLabel "Ephrem"@en, "ܐܦܪܝܡ"@syr;
skos:closeMatch <http://viaf.org/viaf/sourceID/SRP|person_13>, <http://viaf.org/viaf/100177778>, <http://worldcat.org/identities/lccn-n50-82928>, <http://worldcat.org/identities/np-ephrem$syrus saint$303 373>, <http://worldcat.org/identities/np-ephraem$syrus$ca 306 ca 373>, <http://www.csc.org.il/db/browse.aspx?db=SB&amp;sL=E&amp;sK=Ephraim&amp;sT=keywords>, <http://www.csc.org.il/db/browse.aspx?db=SB&amp;sL=E&amp;sK=Ephrem&amp;sT=keywords>;
dcterms:relation <http://viaf.org/viaf/sourceID/SRP|person_13>, <http://viaf.org/viaf/100177778>, <http://worldcat.org/identities/lccn-n50-82928>, <http://worldcat.org/identities/np-ephrem$syrus saint$303 373>, <http://worldcat.org/identities/np-ephraem$syrus$ca 306 ca 373>, <http://www.csc.org.il/db/browse.aspx?db=SB&amp;sL=E&amp;sK=Ephraim&amp;sT=keywords>, <http://www.csc.org.il/db/browse.aspx?db=SB&amp;sL=E&amp;sK=Ephrem&amp;sT=keywords>;
dcterms:relation <http://syriaca.org/bibl/206>, <http://syriaca.org/bibl/4>, <http://syriaca.org/bibl/2>; [note there are more here, I didn't put them all.]
dcterms:relation <http://syriaca.org/person/13/html>, <http://syriaca.org/person/13/tei>, <http://syriaca.org/person/13/ttl>;
foaf:primaryTopicOf <http://syriaca.org/person/13/html>;
foaf:primaryTopicOf <http://syriaca.org/person/13/tei>;
foaf:primaryTopicOf <http://syriaca.org/person/13/ttl>;
skos:related <http://syriaca.org/place/142>, <http://syriaca.org/place/78>, <http://syriaca.org/work/315>; <http://syriaca.org/place/502>, <http://syriaca.org/place/216>, <http://syriaca.org/place/1450>, <http://syriaca.org/place/1451>, <http://syriaca.org/place/319>, <http://syriaca.org/place/8>, [note there are more work/URI here, I didn't put them all, also we will need the script to deduplicate multiple mentions of a URI]
syriaca:hasLiteraryConnectionToPlace <http://syriaca.org/place/502>, <http://syriaca.org/place/216>, <http://syriaca.org/place/1450>, <http://syriaca.org/place/1451>,
lawd:where <http://syriaca.org/place/142>, <http://syriaca.org/place/78>, <http://syriaca.org/place/319>, <http://syriaca.org/place/8>.

<http:syriaca.org/person/13/html> a rdfs:Resource;
dcterms:title "Ephrem - ܐܦܪܝܡ";
dcterms:subject <http:syriaca.org/person/13>;
dcterms:format "text/html";
dcterms:bibliographicCitation "Jeanne-Nicole Saint-Laurent et al., “Ephrem — ܐܦܪܝܡ ” in Qadishe: A Guide to the Syriac Saints, eds. Jeanne-Nicole Saint-Laurent et al., entry published August 17, 2016, Syriaca.org: The Syriac Reference Portal, ed. David A. Michelson. http://syriaca.org/person/13/html.".

<http:syriaca.org/person/13/tei> a rdfs:Resource;
dcterms:title "Ephrem - ܐܦܪܝܡ";
dcterms:subject <http:syriaca.org/person/13>;
dcterms:format "text/xml";
dcterms:bibliographicCitation "Jeanne-Nicole Saint-Laurent et al., “Ephrem — ܐܦܪܝܡ ” in Qadishe: A Guide to the Syriac Saints, eds. Jeanne-Nicole Saint-Laurent et al., entry published August 17, 2016, Syriaca.org: The Syriac Reference Portal, ed. David A. Michelson. http://syriaca.org/person/13/tei.".

<http:syriaca.org/person/13/ttl> a rdfs:Resource;
dcterms:title "Ephrem - ܐܦܪܝܡ";
dcterms:subject <http:syriaca.org/person/13>; 
dcterms:format "text/turtle";
dcterms:bibliographicCitation "Jeanne-Nicole Saint-Laurent et al., “Ephrem — ܐܦܪܝܡ ” in Qadishe: A Guide to the Syriac Saints, eds. Jeanne-Nicole Saint-Laurent et al., entry published August 17, 2016, Syriaca.org: The Syriac Reference Portal, ed. David A. Michelson. http://syriaca.org/person/13/ttl.".
davidamichelson commented 7 years ago

For a place, work, and bibl records the above should work with the following changes:

lawd:place and lawd:conceptualWork and dcterms:bibliographicResource instead of lawd:person

and the bibl records should be a rdfs:Resource not skos:Concept

davidamichelson commented 7 years ago

Here are some notes on the paths for the content:

skos:prefLabel "Ephrem"@en, "ܐܦܪܝܡ"@syr;

We need to leave these separate as they name the concept, we can mash them up in the visualization.

skos:closeMatch <http://viaf.org/viaf/sourceID/SRP|person_13>, <http://viaf.org/viaf/100177778>

These are all from TEI/text/body/listPerson/person/IDNO@type=URI, please exclude the URI of the record being generated

dcterms:relation <http://viaf.org/viaf/sourceID/SRP|person_13>, <http://viaf.org
p://www.csc.org.il/db/browse.aspx?db=SB&amp;sL=E&amp;sK=Ephrem&amp;sT=keywords>

These are exactly the same as the list above from TEI/text/body/listPerson/person/IDNO@type=URI, please exclude the URI of the record being generated

dcterms:relation <http://syriaca.org/bibl/206>, <http://syriaca.org/bibl/4>

These are from the TEI/text/body/listPerson/person/bibl

dcterms:relation <http://syriaca.org/person/13/html>, <http://syriaca.org/person/13/tei>, <http://syriaca.org/person/13/ttl>

These are auto-generated based on the URI of the record. These would be excluded, maybe? from the bibl URIs? Confused about them since they are more like resources than concepts.

foaf:primaryTopicOf <http://syriaca.org/person/13/html>;
foaf:primaryTopicOf <http://syriaca.org/person/13/tei>;
foaf:primaryTopicOf <http://syriaca.org/person/13/ttl>;

These are auto-generated based on the URI of the record.

skos:related <http://syriaca.org/place/142>, <http://syriaca.org/place/78>, <http://syriaca.org/work/315>; <http://syriaca.org/place/502>, <http://syriaca.org/place/216>

These would be scraped from all Syriaca.org URIS in the tei:body but not in relation elements (refs, targets). This should exclude bibl URIS. Also we will need the script to deduplicate multiple mentions of a URI.

syriaca:hasLiteraryConnectionToPlace <http://syriaca.org/place/502>

Render from tei:relation using existing vocabularies passive, mutual, active

davidamichelson commented 7 years ago

There are definitely some issues to work out on how to model bibl URIS

nathangibson commented 7 years ago

@davidamichelson and @wsalesky This is exciting!

A small comment: we should note capitalization issues. E.g., lawd:Person, lawd:Place, lawd:ConceptualWork (http://lawd.info/ontology), and dcterms:BibliographicResource (http://dublincore.org/documents/dcmi-terms/).

As far as I know, a typical RDF practice is to use upper camel case (first letter capitalized) for RDF classes and lower camel case (first letter not capitalized) for RDF properties. I'm not sure this practice can be applied across the board, but classes and properties are case-sensitive, right?

wsalesky commented 7 years ago

@nathangibson Yes, that is my understanding for properties vrs. classes as well.

wsalesky commented 7 years ago

Edited: For any relationships using the ref attribute, I will translate that attribute directly to a RDF class name, what should I do with the other name attribute values? Will they be migrated to @ref? Or should I build in some logic to handle them on the fly? example person/19 has the following relationships:

<relation name="has-literary-connection-to-place" active="http://syriaca.org/person/13" passive="http://syriaca.org/place/502 http://syriaca.org/place/216 http://syriaca.org/place/1450 http://syriaca.org/place/1451" source="#bib13-2">
      <desc xml:lang="en">This author has a literary connection to places.</desc>
</relation>
<relation name="has-relation-to-place" active="http://syriaca.org/person/13" passive="http://syriaca.org/place/142 http://syriaca.org/place/78 http://syriaca.org/place/319 http://syriaca.org/place/8" source="#bib13-2">
      <desc xml:lang="en">This author has an unspecified connection to places.</desc>
</relation>
nathangibson commented 7 years ago

OK, this is kind of complicated....

  1. The relation/@ref should be turned into an RDF property (rather than class name).
  2. It is primarily persons and places that have relation/@name. I would like to switch these to @ref (or at least add @ref) but need to get input from the other editors first. This is related to https://github.com/srophe/srophe-app-data/issues/676 , except that what I was discussing there would not have required any changes to places. Maybe you can wait to build in any extra logic for @name until the editors can discuss?
  3. While we are at it, I think we should adjust the RDF properties to be lower camel case. My suggested properties are here: https://docs.google.com/spreadsheets/d/1agm9t_UGiPQo-SuEaBjnDldQuDhFJbdwO4qnWGvY5LI/edit?usp=sharing
  4. For bibls, there are literally only 5 records that have relations (/TEI/text/body/biblStruct/*/listRelation/relation/@name), and I'm not sure we're going to be using relations in the future with bibl unless there's some good way to export them from Zotero. So I'm inclined to just turn these relations into notes. E.g., the relation/desc on bibl/948 (which could be a note):
    This is condensed and translated in <ref target="http://syriaca.org/bibl/1204">Notes on the Indo-Scythians, The Indian Antiquary (1903) 32:381-389 and (1904) 33:10-16</ref>.
  5. Please note that there are many relations in child bibls of works (/TEI/text/body/bibl/bibl/listRelation/relation) but I think that serializing them is beyond the scope of what we are trying to do now. If I am wrong and these should be serialized now, I can provide details on what needs to be done.
wsalesky commented 7 years ago

@nathangibson Thanks! I have a rough draft written, will do some testing over the weekend.

davidamichelson commented 7 years ago

@nathangibson Let's discuss this on Wed with Winona. Would it be better to change all the @ref to @name?

davidamichelson commented 7 years ago

On bibls, we will be using relations, so let's not lose that data or functionality.

wsalesky commented 7 years ago

Basic transform written. You can review results here (swap in any record you want to check by changing the 'work/13' with 'person', 'place', etc):

http://wwwb.library.vanderbilt.edu/exist/restxq/srophe/work/13/ttl

I am working on extracting a full list from eXist to up load to a triplestore, will try locally first.

nathangibson commented 7 years ago

Getting the following error:

HTTP Status 500 - An error occurred while processing request to /exist/restxq/srophe/work/13/ttl: err:XPTY0004 xs:string(1 Chronicles (Peshitta Version)Syriaca.org: The Syriac Reference PortalThe International Balzan Prize FoundationThe National Endowment for the HumanitiesDavid A. MichelsonNathan P. GibsonDavid A. MichelsonNathan P. GibsonDavid A. MichelsonTucker D. HannahEditing, data entry, and reconciling byNathan P. GibsonEditing, proofreading, data architecture, and encoding byDavid A. MichelsonData entry byTucker D. HannahSyriaca.org: The Syriac Reference Portalhttp://syriaca.org/work/13/teiDistributed under a Creative Commons Attribution 3.0 Unported

type Exception report

message An error occurred while processing request to /exist/restxq/srophe/work/13/ttl: err:XPTY0004 xs:string(1 Chronicles (Peshitta Version)Syriaca.org: The Syriac Reference PortalThe International Balzan Prize FoundationThe National Endowment for the HumanitiesDavid A. MichelsonNathan P. GibsonDavid A. MichelsonNathan P. GibsonDavid A. MichelsonTucker D. HannahEditing, data entry, and reconciling byNathan P. GibsonEditing, proofreading, data architecture, and encoding byDavid A. MichelsonData entry byTucker D. HannahSyriaca.org: The Syriac Reference Portalhttp://syriaca.org/work/13/teiDistributed under a Creative Commons Attribution 3.0 Unported

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: An error occurred while processing request to /exist/restxq/srophe/work/13/ttl: err:XPTY0004 xs:string(1 Chronicles (Peshitta Version)Syriaca.org: The Syriac Reference PortalThe International Balzan Prize FoundationThe National Endowment for the HumanitiesDavid A. MichelsonNathan P. GibsonDavid A. MichelsonNathan P. GibsonDavid A. MichelsonTucker D. HannahEditing, data entry, and reconciling byNathan P. GibsonEditing, proofreading, data architecture, and encoding byDavid A. MichelsonData entry byTucker D. HannahSyriaca.org: The Syriac Reference Portalhttp://syriaca.org/work/13/teiDistributed under a Creative Commons Attribution 3.0 Unported License.2016-12-16+01:00New Handbook of Syriac LiteratureNathan P. GibsonDavid A. MichelsonEdited byNathan P. GibsonEdited byDavid A. Michelsonhttp://syriaca.org/nhslClavis of Syriac Biblical Workshttp://syriaca.org/bibleBorn digital.This record created following the Syriaca.org guidelines. Documentation available at: http://syriaca.org/documentation.Approximate dates described in terms of centuries or partial centuries have been interpreted as documented in Syriaca.org Dates.The name used by Syriaca.org for document titles, citation, and disambiguation. These names have been created according to the Syriac.org guidelines for headwords: http://syriaca.org/documentation/headwords.html.An anglicized version of a name, included to facilitate searching.Unvocalized Syriac of any variety or periodVocalized West SyriacVocalized East SyriacEnglishNames or terms Romanized into English according to the standards adopted by the Gorgias Encyclopedic Dictionary of the Syriac HeritageArabicFrenchGermanLatinAdded manuscript citationCREATED: work1 Chronicles (Peshitta Version)1st ChroniclesThe first book of Chronicles, according to the Peshitta version.ܣܦܪ ܕܘܒܪ ܝܘܡ̈ܬܐ ܕܡ̈ܠܟܐ ܕܝܗܘܕܐ ܕܡܬܩܪܐ ܣܦܪ ܕܒܪܝܡܝܢ.http://syriaca.org/work/13Egerton MS 704153a-160xviith centuryAdd MS 17104Foll. 1-49vith centdefectiveDavid A. michelsonBL Egerton MS 704A Digital Catalogue of Syriac Manuscripts in the British LibrarySyriaca.orgforthcoming1st ChroniclesDigital catalogue based on William Wright. See the citation from the print catalogue.William WrightCatalogue of Syriac Manuscripts in the British Museum Acquired since the Year 1838London1870II:1-3BL Egerton MS 704David A. MichelsonBL Add MS 17104A Digital Catalogue of Syriac Manuscripts in the British LibrarySyriaca.orgforthcomingThe first book of Chronicles, according to the Peshitta versionDigital catalogue based on William Wright. See the citation from the print catalogue.William WrightCatalogue of Syriac Manuscripts in the British Museum Acquired since the Year 1838London1870XXVI:16-17BL Add MS 17104book 1part 1) is not a sub-type of node() [at line 301, column 33, source: /db/apps/srophe/modules/rest.xqm] In function: api:get-tei-rec(xs:string, xs:string) [190:24:/db/apps/srophe/modules/rest.xqm] tei2ttl:ttl-output(item()*) [190:5:/db/apps/srophe/modules/lib/tei2ttl.xqm] api:get-ttl(xs:string, xs:string) [-1:-1:/db/apps/srophe/modules/rest.xqm] org.exist.http.urlrewrite.XQueryURLRewrite.service(XQueryURLRewrite.java:383) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause

javax.servlet.ServletException: err:XPTY0004 xs:string(1 Chronicles (Peshitta Version)Syriaca.org: The Syriac Reference PortalThe International Balzan Prize FoundationThe National Endowment for the HumanitiesDavid A. MichelsonNathan P. GibsonDavid A. MichelsonNathan P. GibsonDavid A. MichelsonTucker D. HannahEditing, data entry, and reconciling byNathan P. GibsonEditing, proofreading, data architecture, and encoding byDavid A. MichelsonData entry byTucker D. HannahSyriaca.org: The Syriac Reference Portalhttp://syriaca.org/work/13/teiDistributed under a Creative Commons Attribution 3.0 Unported License.2016-12-16+01:00New Handbook of Syriac LiteratureNathan P. GibsonDavid A. MichelsonEdited byNathan P. GibsonEdited byDavid A. Michelsonhttp://syriaca.org/nhslClavis of Syriac Biblical Workshttp://syriaca.org/bibleBorn digital.This record created following the Syriaca.org guidelines. Documentation available at: http://syriaca.org/documentation.Approximate dates described in terms of centuries or partial centuries have been interpreted as documented in Syriaca.org Dates.The name used by Syriaca.org for document titles, citation, and disambiguation. These names have been created according to the Syriac.org guidelines for headwords: http://syriaca.org/documentation/headwords.html.An anglicized version of a name, included to facilitate searching.Unvocalized Syriac of any variety or periodVocalized West SyriacVocalized East SyriacEnglishNames or terms Romanized into English according to the standards adopted by the Gorgias Encyclopedic Dictionary of the Syriac HeritageArabicFrenchGermanLatinAdded manuscript citationCREATED: work1 Chronicles (Peshitta Version)1st ChroniclesThe first book of Chronicles, according to the Peshitta version.ܣܦܪ ܕܘܒܪ ܝܘܡ̈ܬܐ ܕܡ̈ܠܟܐ ܕܝܗܘܕܐ ܕܡܬܩܪܐ ܣܦܪ ܕܒܪܝܡܝܢ.http://syriaca.org/work/13Egerton MS 704153a-160xviith centuryAdd MS 17104Foll. 1-49vith centdefectiveDavid A. michelsonBL Egerton MS 704A Digital Catalogue of Syriac Manuscripts in the British LibrarySyriaca.orgforthcoming1st ChroniclesDigital catalogue based on William Wright. See the citation from the print catalogue.William WrightCatalogue of Syriac Manuscripts in the British Museum Acquired since the Year 1838London1870II:1-3BL Egerton MS 704David A. MichelsonBL Add MS 17104A Digital Catalogue of Syriac Manuscripts in the British LibrarySyriaca.orgforthcomingThe first book of Chronicles, according to the Peshitta versionDigital catalogue based on William Wright. See the citation from the print catalogue.William WrightCatalogue of Syriac Manuscripts in the British Museum Acquired since the Year 1838London1870XXVI:16-17BL Add MS 17104book 1part 1) is not a sub-type of node() [at line 301, column 33, source: /db/apps/srophe/modules/rest.xqm] In function: api:get-tei-rec(xs:string, xs:string) [190:24:/db/apps/srophe/modules/rest.xqm] tei2ttl:ttl-output(item()*) [190:5:/db/apps/srophe/modules/lib/tei2ttl.xqm] api:get-ttl(xs:string, xs:string) [-1:-1:/db/apps/srophe/modules/rest.xqm] org.exist.extensions.exquery.restxq.impl.RestXqServlet.service(RestXqServlet.java:124) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.exist.http.urlrewrite.Forward.doRewrite(Forward.java:50) org.exist.http.urlrewrite.XQueryURLRewrite.service(XQueryURLRewrite.java:221) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause

org.exquery.restxq.RestXqServiceException: err:XPTY0004 xs:string(1 Chronicles (Peshitta Version)Syriaca.org: The Syriac Reference PortalThe International Balzan Prize FoundationThe National Endowment for the HumanitiesDavid A. MichelsonNathan P. GibsonDavid A. MichelsonNathan P. GibsonDavid A. MichelsonTucker D. HannahEditing, data entry, and reconciling byNathan P. GibsonEditing, proofreading, data architecture, and encoding byDavid A. MichelsonData entry byTucker D. HannahSyriaca.org: The Syriac Reference Portalhttp://syriaca.org/work/13/teiDistributed under a Creative Commons Attribution 3.0 Unported License.2016-12-16+01:00New Handbook of Syriac LiteratureNathan P. GibsonDavid A. MichelsonEdited byNathan P. GibsonEdited byDavid A. Michelsonhttp://syriaca.org/nhslClavis of Syriac Biblical Workshttp://syriaca.org/bibleBorn digital.This record created following the Syriaca.org guidelines. Documentation available at: http://syriaca.org/documentation.Approximate dates described in terms of centuries or partial centuries have been interpreted as documented in Syriaca.org Dates.The name used by Syriaca.org for document titles, citation, and disambiguation. These names have been created according to the Syriac.org guidelines for headwords: http://syriaca.org/documentation/headwords.html.An anglicized version of a name, included to facilitate searching.Unvocalized Syriac of any variety or periodVocalized West SyriacVocalized East SyriacEnglishNames or terms Romanized into English according to the standards adopted by the Gorgias Encyclopedic Dictionary of the Syriac HeritageArabicFrenchGermanLatinAdded manuscript citationCREATED: work1 Chronicles (Peshitta Version)1st ChroniclesThe first book of Chronicles, according to the Peshitta version.ܣܦܪ ܕܘܒܪ ܝܘܡ̈ܬܐ ܕܡ̈ܠܟܐ ܕܝܗܘܕܐ ܕܡܬܩܪܐ ܣܦܪ ܕܒܪܝܡܝܢ.http://syriaca.org/work/13Egerton MS 704153a-160xviith centuryAdd MS 17104Foll. 1-49vith centdefectiveDavid A. michelsonBL Egerton MS 704A Digital Catalogue of Syriac Manuscripts in the British LibrarySyriaca.orgforthcoming1st ChroniclesDigital catalogue based on William Wright. See the citation from the print catalogue.William WrightCatalogue of Syriac Manuscripts in the British Museum Acquired since the Year 1838London1870II:1-3BL Egerton MS 704David A. MichelsonBL Add MS 17104A Digital Catalogue of Syriac Manuscripts in the British LibrarySyriaca.orgforthcomingThe first book of Chronicles, according to the Peshitta versionDigital catalogue based on William Wright. See the citation from the print catalogue.William WrightCatalogue of Syriac Manuscripts in the British Museum Acquired since the Year 1838London1870XXVI:16-17BL Add MS 17104book 1part 1) is not a sub-type of node() [at line 301, column 33, source: /db/apps/srophe/modules/rest.xqm] In function: api:get-tei-rec(xs:string, xs:string) [190:24:/db/apps/srophe/modules/rest.xqm] tei2ttl:ttl-output(item()*) [190:5:/db/apps/srophe/modules/lib/tei2ttl.xqm] api:get-ttl(xs:string, xs:string) [-1:-1:/db/apps/srophe/modules/rest.xqm] org.exist.extensions.exquery.restxq.impl.ResourceFunctionExecutorImpl.execute(ResourceFunctionExecutorImpl.java:177) org.exquery.restxq.impl.AbstractRestXqService.service(AbstractRestXqService.java:190) org.exist.extensions.exquery.restxq.impl.RestXqServiceImpl.service(RestXqServiceImpl.java:119) org.exist.extensions.exquery.restxq.impl.RestXqServlet.service(RestXqServlet.java:102) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.exist.http.urlrewrite.Forward.doRewrite(Forward.java:50) org.exist.http.urlrewrite.XQueryURLRewrite.service(XQueryURLRewrite.java:221) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

root cause

org.exist.xquery.XPathException: err:XPTY0004 xs:string(1 Chronicles (Peshitta Version)Syriaca.org: The Syriac Reference PortalThe International Balzan Prize FoundationThe National Endowment for the HumanitiesDavid A. MichelsonNathan P. GibsonDavid A. MichelsonNathan P. GibsonDavid A. MichelsonTucker D. HannahEditing, data entry, and reconciling byNathan P. GibsonEditing, proofreading, data architecture, and encoding byDavid A. MichelsonData entry byTucker D. HannahSyriaca.org: The Syriac Reference Portalhttp://syriaca.org/work/13/teiDistributed under a Creative Commons Attribution 3.0 Unported License.2016-12-16+01:00New Handbook of Syriac LiteratureNathan P. GibsonDavid A. MichelsonEdited byNathan P. GibsonEdited byDavid A. Michelsonhttp://syriaca.org/nhslClavis of Syriac Biblical Workshttp://syriaca.org/bibleBorn digital.This record created following the Syriaca.org guidelines. Documentation available at: http://syriaca.org/documentation.Approximate dates described in terms of centuries or partial centuries have been interpreted as documented in Syriaca.org Dates.The name used by Syriaca.org for document titles, citation, and disambiguation. These names have been created according to the Syriac.org guidelines for headwords: http://syriaca.org/documentation/headwords.html.An anglicized version of a name, included to facilitate searching.Unvocalized Syriac of any variety or periodVocalized West SyriacVocalized East SyriacEnglishNames or terms Romanized into English according to the standards adopted by the Gorgias Encyclopedic Dictionary of the Syriac HeritageArabicFrenchGermanLatinAdded manuscript citationCREATED: work1 Chronicles (Peshitta Version)1st ChroniclesThe first book of Chronicles, according to the Peshitta version.ܣܦܪ ܕܘܒܪ ܝܘܡ̈ܬܐ ܕܡ̈ܠܟܐ ܕܝܗܘܕܐ ܕܡܬܩܪܐ ܣܦܪ ܕܒܪܝܡܝܢ.http://syriaca.org/work/13Egerton MS 704153a-160xviith centuryAdd MS 17104Foll. 1-49vith centdefectiveDavid A. michelsonBL Egerton MS 704A Digital Catalogue of Syriac Manuscripts in the British LibrarySyriaca.orgforthcoming1st ChroniclesDigital catalogue based on William Wright. See the citation from the print catalogue.William WrightCatalogue of Syriac Manuscripts in the British Museum Acquired since the Year 1838London1870II:1-3BL Egerton MS 704David A. MichelsonBL Add MS 17104A Digital Catalogue of Syriac Manuscripts in the British LibrarySyriaca.orgforthcomingThe first book of Chronicles, according to the Peshitta versionDigital catalogue based on William Wright. See the citation from the print catalogue.William WrightCatalogue of Syriac Manuscripts in the British Museum Acquired since the Year 1838London1870XXVI:16-17BL Add MS 17104book 1part 1) is not a sub-type of node() [at line 301, column 33, source: /db/apps/srophe/modules/rest.xqm] In function: api:get-tei-rec(xs:string, xs:string) [190:24:/db/apps/srophe/modules/rest.xqm] tei2ttl:ttl-output(item()*) [190:5:/db/apps/srophe/modules/lib/tei2ttl.xqm] api:get-ttl(xs:string, xs:string) [-1:-1:/db/apps/srophe/modules/rest.xqm] org.exist.xquery.DynamicTypeCheck.check(DynamicTypeCheck.java:145) org.exist.xquery.DynamicTypeCheck.eval(DynamicTypeCheck.java:67) org.exist.xquery.FunctionCall.evalFunction(FunctionCall.java:328) org.exist.xquery.FunctionCall.eval(FunctionCall.java:232) org.exist.xquery.DynamicCardinalityCheck.eval(DynamicCardinalityCheck.java:74) org.exist.xquery.FunctionCall.eval(FunctionCall.java:214) org.exist.xquery.AbstractExpression.eval(AbstractExpression.java:71) org.exist.xquery.PathExpr.eval(PathExpr.java:264) org.exist.xquery.SequenceConstructor.eval(SequenceConstructor.java:84) org.exist.xquery.UserDefinedFunction.eval(UserDefinedFunction.java:155) org.exist.xquery.FunctionCall.evalFunction(FunctionCall.java:328) org.exist.xquery.FunctionCall.evalFunction(FunctionCall.java:270) org.exist.xquery.value.FunctionReference.evalFunction(FunctionReference.java:88) org.exist.extensions.exquery.restxq.impl.ResourceFunctionExecutorImpl.execute(ResourceFunctionExecutorImpl.java:169) org.exquery.restxq.impl.AbstractRestXqService.service(AbstractRestXqService.java:190) org.exist.extensions.exquery.restxq.impl.RestXqServiceImpl.service(RestXqServiceImpl.java:119) org.exist.extensions.exquery.restxq.impl.RestXqServlet.service(RestXqServlet.java:102) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.exist.http.urlrewrite.Forward.doRewrite(Forward.java:50) org.exist.http.urlrewrite.XQueryURLRewrite.service(XQueryURLRewrite.java:221) javax.servlet.http.HttpServlet.service(HttpServlet.java:727) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.54 logs. Apache Tomcat/7.0.54

wsalesky commented 7 years ago

I think this has been resolved.