#XQuery Summer Institute
#Detailed Schedule and Curriculum
##Sunday, June 8
###Check-in (4 p.m. to 9 p.m.) Lewis House, Highland Quadrangle on the Vanderbilt University campus
N.B. The Lewis House reception desk will be open until 12 a.m. If you arrive after midnight, please call (615) 343-8699 for assistance.
##Monday, June 9
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Clifford B. Anderson
- Introduction to the Institute and participants
- Discussion of the Institute’s goals and anticipated outcomes
- Assignment of initial pair programming partnerships
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: David A. Michelson
-
Review of XML essentials, including namespaces, character entities, and CDATA sections
Readings:
-
Joe Fawcett, Liam Quin, and Danny Ayers, Beginning XML, Chapter 1: What is XML?, Chapter 2: Well-Formed XML, and Chapter 3: XML Namespaces
-
David J. Birnbaum, "What is XML and why should humanists care? An even gentler introduction to XML."
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Instructor: Clifford B. Anderson
- Review of Document Type Definitions (DTDs) and XML Schemas
- A brief look at Relax NG and Schematron
Readings: Joe Fawcett, Liam Quin, and Danny Ayers, Beginning XML, Chapter 4: Document Type Definitions; Chapter 5: XML Schemas; Chapter 6: Relax NG and Schematron
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Workshop Format
- Installing eXist, oXygen, GitHub and loading of [Folger Shakespeare Texts](folger shakespeare texts).
###Reception (4:00 p.m. to 5:00 p.m.)
The University Library will host a reception for our Institute in the 2nd Floor Gallery.
Dinner (5:45 p.m. at The Commons)
##Tuesday, June 10
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: David A. Michelson
- The challenges of scholarly editing in XML
- Session notes
Readings:
- Browse: Lou Burnard, Katherine O'Brien O'Keeffe, and John Unsworth, eds. Electronic Textual Editing
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: David A. Michelson
- Introduction to the TEI P5 specification
- Session notes
Readings:
-
P5: Guidelines for Electronic Text Encoding and Interchange, Chapter 3: Elements Available in All TEI Documents
-
Browse: Lou Burnard, What is the Text Encoding Initiative?
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Skype Conversation with Michael Poston & Rebecca Niles
Folger Shakespeare Library, Washington, D.C.
- Exploration of the Folger Library’s digital edition (TEI P5) of Julius Caesar
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Instructor: Dr. Jay Clayton, William R. Kenan, Jr. Professor, Department of English, Vanderbilt University
- Transmediation and the Production of Digital Editions
###Open session (4:00 p.m. to 5:00 p.m.)
- Hopes, aspirations, and collective goals for XQuery
Dinner (5:45 p.m. at The Commons)
##Wednesday, June 11
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Jonathan Robie
- Introduction to XQuery
Readings: Priscilla Walmsley, XQuery, Chapter 1: Introduction to XQuery and Chapter 2: XQuery Foundations
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: Jonathan Robie
- Path expressions
Reading: Joe Fawcett, Liam Quin, and Danny Ayers, Beginning XML, Chapter 7: Extracting Data from XML; Priscilla Walmsley, XQuery, Chapter 4: Navigating Input Documents Using Paths
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Instructor: Jonathan Robie
- FLWOR expressions
Reading: Priscilla Walmsley, XQuery, Chapter 6: Selecting and Joining Using FLWORs
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Instructor: Jonathan Robie
- Constructors
Reading: Priscilla Walmsley, XQuery, Chapter 5: Adding Elements and Attributes to Results
###Open session (4:00 p.m. to 5:00 p.m.)
- Exploring participants' datasets
Dinner (5:45 p.m. at The Commons)
##Thursday, June 12
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Jonathan Robie
- Functions and modules
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: Jonathan Robie
- Functions and operators
- partial function application
- Inline functions
- A brief look at second order functions
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Instructor: Jonathan Robie
- Grouping
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Institute Faculty
- Exploring participants' datasets
###Open session (4:00 p.m. to 5:00 p.m.)
- Commentary, discussion, questions
Dinner (5:45 p.m. at The Commons)
##Friday, June 13
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Jonathan Robie
- Windowing
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: Jonathan Robie
- XQuery spare change
- if..then..else
- effective boolean values
- try..catch
- switch expressions
- typeswitch
- quantifiers
- mapping operator
- string concatenation operators
Reading: Priscilla Walmsley, XQuery, Chapter 3: XQuery Building Blocks
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Instructor: Jonathan Robie
- Recursion and avoiding recursion
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Institute Faculty
- Using typeswitch transformations to render Shakespeare as XHTML
###Open session (4:00 p.m. to 5:00 p.m.)
- Commentary, discussion, questions
##Monday, June 16
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Winona Salesky
- Exploring eXist - An Open Source XML Database
Reading: Joe Fawcett, Liam Quin, and Danny Ayers, Beginning XML, Chapter 10: XML and Databases
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: Winona Salesky
- Combining eXist’s extension functions with FLWOR expressions
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Instructor: Winona Salesky
- Exploring eXist's indexing options
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Institute Faculty
- Conducting full-text searches across Shakespeare’s corpus using eXist’s extension functions
###Open session (4:00 p.m. to 5:00 p.m.)
- Participant presentation
Dinner (5:45 p.m. in Rand Hall)
##Tuesday, June 17
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Winona Salesky
- Writing user defined functions
- Function signatures
- Checking types
Reading: Priscilla Walmsley, XQuery, Chapter 8: Functions
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: Clifford B. Anderson
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Instructor: Winona Salesky
- Developing modules of user defined functions in eXist
Reading: Priscilla Walmsley, XQuery, Chapter 12: Queries, Prologs, and Modules
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Institute Faculty
- Creating facets for searches
###Open session (4:00 p.m. to 5:00 p.m.)
- Participant presentation
Dinner (5:45 p.m. in Rand Hall)
##Wednesday, June 18
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Kevin Clarke
- Reviewing HTTP
- A brief introduction to REST
Reading: Cornelia Davis, “What if the web were not RESTful?” In Proceedings of the Third International Workshop on RESTful Design (WS-REST '12), Rosa Alarcon, Cesare Pautasso, and Erik Wilde (Eds.). New York: ACM, 3-10
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: Winona Salesky
- Introduction to eXist’s httpclient extension functions
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Institute Faculty
- Connecting with online data sources using HTTP
Reading: Charles Severance, “Discovering JavaScript Object Notation,” Computer, 45:4 (2012): 6-8
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Instructor: Dale Poulter
- Introduction to Amazon Web Services
###Open session (4:00 p.m. to 4:30 p.m.)
- Participant presentation
###Warren Center Reception (4:30 p.m. to 5:30 p.m.)
- The Robert Penn Warren Center for the Humanities will host a reception for the Institute at the Vaughn Home on the Vanderbilt Campus.
Dinner (5:45 p.m. at The Commons)
##Thursday, June 19
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Kevin Clarke
- Architectural patterns for building larger applications
- Introduction to the Model-View-Controller pattern
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: Winona Salesky
- Introduction to eXist's XQuery Update Extension
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Institute Faculty
- Building a simple web search engine for the Shakespeare corpus – Part One
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Institute Faculty
- Building a simple web search engine for the Shakespeare corpus – Part Two
###Open session (4:00 p.m. to 5:00 p.m.)
- Participant presentation
Dinner (5:45 p.m. at The Commons)
##Friday, June 20
Breakfast (8:00 a.m. in Rand Hall)
###Morning Session I (9:00 a.m. to 10:15 a.m.) Instructor: Dale Poulter
- Deploying our Shakespeare search engine to the “cloud” using Amazon Web Services – Part One
###Morning Session II (10:30 a.m. to 11:45 a.m.) Instructor: Dale Poulter
- Deploying our Shakespeare search engine to the “cloud” using Amazon Web Services – Part Two
Lunch (11:45 a.m. in Rand Hall)
###Afternoon Session I (1:00 p.m. to 2:15 p.m.) Instructor: Kevin Clarke
- Review of XQuery fundamentals and questions
###Afternoon Session II (2:30 p.m. to 3:45 p.m.) Instructor: Kevin Clarke
- Review of eXist fundamentals and questions
###Open session (4:00 p.m. to 5:00 p.m.) Instructor: Clifford B. Anderson
- Institute wrap up
- Survey
- Recommendations for developing a stronger community of XQuery experts in the digital humanities
Dinner (5:45 p.m. in Rand Hall)