Get the Most Out of oXygen
Introduction
This page contains useful information for advanced encoders using oXygen. These
instructions are not comprehensive, but outline a few key features. For an introduction
to
oXygen, see this document prepared by MoEML programmer Martin Holmes.
Using the MoEML project file
If you check out the MoEML codebase from Subversion
as described in Access Files from the Subversion Repository,
you will find that there is a file in the root of the checked-out folder (alongside
PERS1.xml
)
called moeml.xpr
. This file is an oXygen project file. Load this file into oXygen
Project / Open Project..., and you should see the list of all the files and
folders in the project available to you automatically.
Using the
moeml.xpr
project file brings some other advantages. For instance,
you will find that the keystroke shortcut for entering a curly apostrophe described
below is automatically configured, and you can
also run the diagnostics.xsl
file in utilities
to perform consistency
checks on the entire collection (although this is now done automatically by our Jenkins
build server whenever anyone commits to svn).
Add Code Templates for Special Characters (Apostrophes, etc.)
oXygen can remember code templates, or shortcut keys for special characters. This
can be
useful for typing characters that re-occur frequently but are difficult to type. For
example, the website uses curly apostrophes (’), Unicode character U+2019, which must
be
hard-coded (manually typed in the string of text, rather than rendered dynamically).
Documents with
straightapostrophes will not validate against our schema. Other useful characters to have in a code template may be the en dash (–) or the em dash (—). Typing such characters is made easier by setting up a code template in oXygen as follows.
First, find the character in your character map (or in a pre-existing document) and
copy
it to the clipboard so you can paste it when you need it. The curly apostrophe, en
dash,
and em dash can be copy-pasted from the text above, for example.
In oXygen, click on Options/Preferences, then type
Code Templatesinto the filter box at the top. You will see a list of the existing code templates (if any). Click on New, then fill in the following details:
-
Name: Apostrophe
-
Description: Curly apostrophe (U+2019)
-
Associate with: XML Editor
-
Content: [Paste the apostrophe in here]
Then press OK.
Now, you can insert a curly apostrophe into documents as follows:
Press Control + Shift +
Space. You should see the code template selector appear. Use the
arrow keys to select the desired code, and press OK to use it.
Set Up Schematron Validation
All of our TEI files must of course validate against our TEI schema, which is a RELAX NG schema. This controls the structure and
content of our files, by setting out the rules for which elements and attributes can
appear in which places, and making sure that (for example) dates are encoded in the
proper
format. However, the RELAX NG schema has some limitations on the kinds of constraints
it
can impose. In order to apply some extra, more project-specific rules and strictures to
our files, we also use a second schema which is written in a different language called
Schematron. So at the top of every XML
file, you’ll see two processing instructions pointing at schemas, one pointing at
the
RELAX NG schema (
london_all.rng
) and one pointing at the Schematron schema
(london_all.sch
). The RELAX NG schema is handled automatically by Oxygen,
but in order to make the Schematron schema work properly, you will need to make a
couple
of changes to the oXygen preferences. If this is not done, validation of XML files
will
fail.
-
Click on Options/Preferences.
-
In the filter box at the top left, type
XML Parser
and press return. XML Parser [P] should be selected. -
Under Schematron/Schematron XPath Version, select 2.0.
-
Under ISO Schematron, check Allow foreign elements.
Adjust Validation Settings for Files with XInclude
Almost all of our XML files contain XInclude elements. XInclude is used to
pull incontent from another document; it enables us to keep a single copy of some important pieces of XML in one location and pull it into many other documents automatically. You can see some examples and a brief explanation of XInclude in Website structure: Simple Documents. By default, when Oxygen validates a file containing an XInclude element, it tries to follow the XInclude tag and pull in the extra content before doing the validation. This would be desirable, except that Oxygen is not able to follow some of the XInclude paths we use, because they include XPointers. Therefore we have to turn off this behaviour for the validation to succeed:
-
Click on Options/Preferences.
-
In the filter box at the top left, type
XML Parser
and press return. XML Parser [P] should be selected. -
Under XInclude Options, uncheck Enable XInclude processing.
Find and Replace Encoded Text
oXygen has a powerful search and replace function, but it should be used with caution
to
avoid errors.
To search in a certain file, right-click on that file in the project view and select
Find/Replace in Files. To search and replace in all files, select
the highest file in the tree, london. This action opens a search
and replace window. To search for a string of text, simply type that string into the
search bar and click Search. Oxygen will open a list of the
occurrences it finds at the bottom of the screen. It also lists the number of occurences
and the files in which they appear. Double-click on an occurrence to open that file.
Wrap XML Code
Use the
Line wrapfunction in oXygen to wrap your XML code neatly, so that it does not disappear off the right of your screen with a horizontal scrollbar. To activate the
Line wrapfunction, click on
Preferences...in the
Optionstoolbar. A new window will open with a table of contents on the left-hand side. Find the
Textsubsection, nested inside Editor > Edit modes > Text, and check the
Line wrapcheckbox.
It is absolutely essential that encoders do not use
pretty-print,also known as the
Format and Indentfunction in oXygen. Although this function promises to wrap your TEI code neatly and indent it for you, in practice, it will add extra spaces in the middle of mixed-content elements, resulting in the introduction of spaces where they should not appear. (See related documentation on encoding spaces truthfully.)
Keyboard Shortcuts
There are a number of keyboard shortcuts in the MoEML oXygen project file that quickly
perform a number of common encoding tasks.1
Action | How to do it |
Add element around selected text | Ctrl+e |
Save | Ctrl+s |
Validate | Ctrl+shift+v |
Comment/uncomment selected text | Ctrl+shift+, |
Pulls up a menu of special characters and common entity tags that MoEML uses (including curly apostrophe, long s, personography entry, and more) | Ctrl+shift+space |
Undo | Ctrl+z |
Redo | Ctrl+shift+z |
Cut | Ctrl+x |
Copy | Ctrl+c |
Ctrl+v | Paste |
Find/Replace (use with caution!) | Ctrl+f |
Toggle line-wrap | Ctrl+shift+y |
See suggested elements | Left bracket (<) and wait for one second |
See suggested attributes | When in the element, press space after typing the element name and wait for one second |
See suggested attribute values | Place cursor between the quotation marks and wait for one second |
Notes
- These shortcuts are for a Linux OS; depending on your operating system and keyboard, the commands might be slightly different. For a full list of oXygen keyboard shortcuts, see oXygen > Options > Menu Shortcut Keys↑
Cite this page
MLA citation
Get the Most out of oXygen.The Map of Early Modern London, edited by , U of Victoria, 20 Jun. 2018, mapoflondon.uvic.ca/oxygen.htm.
Chicago citation
Get the Most out of oXygen.The Map of Early Modern London. Ed. . Victoria: University of Victoria. Accessed June 20, 2018. http://mapoflondon.uvic.ca/oxygen.htm.
APA citation
The Map of Early Modern London. Victoria: University of Victoria. Retrieved from http://mapoflondon.uvic.ca/oxygen.htm.
, , & 2018. Get the Most out of oXygen. In (Ed), RIS file (for RefMan, EndNote etc.)
Provider: University of Victoria Database: The Map of Early Modern London Content: text/plain; charset="utf-8" TY - ELEC A1 - Holmes, Martin A1 - Butt, Cameron A1 - Landels-Gruenewald, Tye ED - Jenstad, Janelle T1 - Get the Most out of oXygen T2 - The Map of Early Modern London PY - 2018 DA - 2018/06/20 CY - Victoria PB - University of Victoria LA - English UR - http://mapoflondon.uvic.ca/oxygen.htm UR - http://mapoflondon.uvic.ca/xml/standalone/oxygen.xml ER -
RefWorks
RT Web Page SR Electronic(1) A1 Holmes, Martin A1 Butt, Cameron A1 Landels-Gruenewald, Tye A6 Jenstad, Janelle T1 Get the Most out of oXygen T2 The Map of Early Modern London WP 2018 FD 2018/06/20 RD 2018/06/20 PP Victoria PB University of Victoria LA English OL English LK http://mapoflondon.uvic.ca/oxygen.htm
TEI citation
<bibl type="mla"><author><name ref="#HOLM3"><surname>Holmes</surname>, <forename>Martin</forename> <forename>D.</forename></name></author>, <author><name ref="#BUTT1"><forename>Cameron</forename> <surname>Butt</surname></name></author>, and <author><name ref="#LAND2"><forename>Tye</forename> <surname>Landels-Gruenewald</surname></name></author>. <title level="a">Get the Most out of oXygen</title>. <title level="m">The Map of Early Modern London</title>, edited by <editor><name ref="#JENS1"><forename>Janelle</forename> <surname>Jenstad</surname></name></editor>, <publisher>U of Victoria</publisher>, <date when="2018-06-20">20 Jun. 2018</date>, <ref target="http://mapoflondon.uvic.ca/oxygen.htm">mapoflondon.uvic.ca/oxygen.htm</ref>.</bibl>Personography
-
Cameron Butt
CB
Encoder, research assistant, and copy editor, 2012–13. Cameron completed his undergraduate honours degree in English at the University of Victoria in 2013. He minored in French and has a keen interest in Shakespeare, film, media studies, popular culture, and the geohumanities.Roles played in the project
-
Author
-
CSS Editor
-
Conceptor
-
Contributing Author
-
Copy Editor
-
Creator
-
Data Manager
-
Encoder
-
Markup Editor
-
Metadata Architect
-
Proofreader
-
Researcher
-
Transcriber
Contributions by this author
Cameron Butt is a member of the following organizations and/or groups:
Cameron Butt is mentioned in the following documents:
-
-
Janelle Jenstad
JJ
Janelle Jenstad, associate professor in the department of English at the University of Victoria, is the general editor and coordinator of The Map of Early Modern London. She is also the assistant coordinating editor of Internet Shakespeare Editions. She has taught at Queen’s University, the Summer Academy at the Stratford Festival, the University of Windsor, and the University of Victoria. Her articles have appeared in the Journal of Medieval and Early Modern Studies, Early Modern Literary Studies, Elizabethan Theatre, Shakespeare Bulletin: A Journal of Performance Criticism, and The Silver Society Journal. Her book chapters have appeared (or will appear) in Performing Maternity in Early Modern England (Ashgate, 2007), Approaches to Teaching Othello (Modern Language Association, 2005), Shakespeare, Language and the Stage, The Fifth Wall: Approaches to Shakespeare from Criticism, Performance and Theatre Studies (Arden/Thomson Learning, 2005), Institutional Culture in Early Modern Society (Brill, 2004), New Directions in the Geohumanities: Art, Text, and History at the Edge of Place (Routledge, 2011), and Teaching Early Modern English Literature from the Archives (MLA, forthcoming). She is currently working on an edition of The Merchant of Venice for ISE and Broadview P. She lectures regularly on London studies, digital humanities, and on Shakespeare in performance.Roles played in the project
-
Author
-
Author of Abstract
-
Author of Stub
-
Author of Term Descriptions
-
Author of Textual Introduction
-
Compiler
-
Conceptor
-
Copy Editor
-
Course Instructor
-
Course Supervisor
-
Course supervisor
-
Data Manager
-
Editor
-
Encoder
-
Encoder (Structure and Toponyms)
-
Final Markup Editor
-
GIS Specialist
-
Geographic Information Specialist
-
Geographic Information Specialist (Modern)
-
Geographical Information Specialist
-
JCURA Co-Supervisor
-
Main Transcriber
-
Markup Editor
-
Metadata Co-Architect
-
MoEML Transcriber
-
Name Encoder
-
Peer Reviewer
-
Primary Author
-
Project Director
-
Proofreader
-
Researcher
-
Reviser
-
Second Author
-
Second Encoder
-
Toponymist
-
Transcriber
-
Transcription Proofreader
-
Vetter
Contributions by this author
Janelle Jenstad is a member of the following organizations and/or groups:
Janelle Jenstad is mentioned in the following documents:
-
-
Tye Landels-Gruenewald
TLG
Research assistant, 2013-15, and data manager, 2015 to present. Tye completed his undergraduate honours degree in English at the University of Victoria in 2015.Roles played in the project
-
Author
-
Author of Term Descriptions
-
CSS Editor
-
Compiler
-
Conceptor
-
Copy Editor
-
Data Manager
-
Editor
-
Encoder
-
Geographic Information Specialist
-
Markup Editor
-
Metadata Architect
-
MoEML Researcher
-
Name Encoder
-
Proofreader
-
Researcher
-
Toponymist
-
Transcriber
Contributions by this author
Tye Landels-Gruenewald is a member of the following organizations and/or groups:
Tye Landels-Gruenewald is mentioned in the following documents:
-
-
Kim McLean-Fiander
KMF
Director of Pedagogy and Outreach, 2015–present; Associate Project Director, 2015–present; Assistant Project Director, 2013-2014; MoEML Research Fellow, 2013. Kim McLean-Fiander comes to The Map of Early Modern London from the Cultures of Knowledge digital humanities project at the University of Oxford, where she was the editor of Early Modern Letters Online, an open-access union catalogue and editorial interface for correspondence from the sixteenth to eighteenth centuries. She is currently Co-Director of a sister project to EMLO called Women’s Early Modern Letters Online (WEMLO). In the past, she held an internship with the curator of manuscripts at the Folger Shakespeare Library, completed a doctorate at Oxford on paratext and early modern women writers, and worked a number of years for the Bodleian Libraries and as a freelance editor. She has a passion for rare books and manuscripts as social and material artifacts, and is interested in the development of digital resources that will improve access to these materials while ensuring their ongoing preservation and conservation. An avid traveler, Kim has always loved both London and maps, and so is particularly delighted to be able to bring her early modern scholarly expertise to bear on the MoEML project.Roles played in the project
-
Associate Project Director
-
Author
-
Author of MoEML Introduction
-
CSS Editor
-
Compiler
-
Contributor
-
Copy Editor
-
Data Contributor
-
Data Manager
-
Director of Pedagogy and Outreach
-
Editor
-
Encoder
-
Encoder (People)
-
Geographic Information Specialist
-
JCURA Co-Supervisor
-
Managing Editor
-
Markup Editor
-
Metadata Architect
-
Metadata Co-Architect
-
MoEML Research Fellow
-
MoEML Transcriber
-
Proofreader
-
Researcher
-
Second Author
-
Secondary Author
-
Secondary Editor
-
Toponymist
-
Vetter
Contributions by this author
Kim McLean-Fiander is a member of the following organizations and/or groups:
Kim McLean-Fiander is mentioned in the following documents:
-
-
Joey Takeda
JT
Programmer, 2018-present; Junior Programmer, 2015 to 2017; Research Assistant, 2014 to 2017. Joey Takeda is an MA student at the University of British Columbia in the Department of English (Science and Technology research stream). He completed his BA honours in English (with a minor in Women’s Studies) at the University of Victoria in 2016. His primary research interests include diasporic and indigenous Canadian and American literature, critical theory, cultural studies, and the digital humanities.Roles played in the project
-
Author
-
Author of Abstract
-
Author of Stub
-
CSS Editor
-
Compiler
-
Conceptor
-
Copy Editor
-
Data Manager
-
Date Encoder
-
Editor
-
Encoder
-
Encoder (Bibliography)
-
Geographic Information Specialist
-
Geographic Information Specialist (Agas)
-
Junior Programmer
-
Markup Editor
-
Metadata Co-Architect
-
MoEML Encoder
-
MoEML Transcriber
-
Programmer
-
Proofreader
-
Researcher
-
Second Author
-
Toponymist
-
Transcriber
-
Transcription Editor
Contributions by this author
Joey Takeda is a member of the following organizations and/or groups:
Joey Takeda is mentioned in the following documents:
-
-
Martin D. Holmes
MDH
Programmer at the University of Victoria Humanities Computing and Media Centre (HCMC). Martin ported the MOL project from its original PHP incarnation to a pure eXist database implementation in the fall of 2011. Since then, he has been lead programmer on the project and has also been responsible for maintaining the project schemas. He was a co-applicant on MoEML’s 2012 SSHRC Insight Grant.Roles played in the project
-
Author
-
Author of abstract
-
Conceptor
-
Encoder
-
Name Encoder
-
Post-conversion and Markup Editor
-
Programmer
-
Proofreader
-
Researcher
Contributions by this author
Martin D. Holmes is a member of the following organizations and/or groups:
Martin D. Holmes is mentioned in the following documents:
-
-
Sarah Milligan
SM
MoEML Research Affiliate. Research assistant, 2012-14. Sarah Milligan completed her MA at the University of Victoria in 2012 on the invalid persona in Elizabeth Barrett Browning’s Sonnets from the Portuguese. She has also worked with the Internet Shakespeare Editions and with Dr. Alison Chapman on the Victorian Poetry Network, compiling an index of Victorian periodical poetry.Roles played in the project
-
Author
-
Compiler
-
Copy Editor
-
Date Encoder
-
Editor
-
Encoder
-
Final Markup Editor
-
Formeworke Encoder
-
Gap Encoder
-
Markup Editor
-
MoEML Transcriber
-
Researcher
-
Second Author
-
Toponymist
Contributions by this author
Sarah Milligan is a member of the following organizations and/or groups:
Sarah Milligan is mentioned in the following documents:
-