New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for peripheral content (non-scripture project text) #21

klassenjm opened this Issue Jul 13, 2016 · 0 comments


None yet
1 participant

klassenjm commented Jul 13, 2016

Updated Proposal

Jan 30, 2018

This proposal is being updated to recommend that content for unique peripheral divisions be stored in separate USX files - one content division per file.

  • USX files containing peripheral content should include a <book> element with a standard 3 letter @code element representing the broader area of the peripheral content.
  • The USX peripheral file should include only one peripheral content section.
  • The peripheral content section should be contained within a <periph> element.
    • Required attribute id is used for identifying the specific peripheral division content found in the current file. There is set of common peripheral identifiers (See USX 3.0 #22)
    • Optional attribute alt provides an alternate title or identifier (possibly vernacular) for the peripheral content

The above structure will allow a consumer to identify and publish individual peripheral content sections easily, as well as making it possible to accurately (re)construct corresponding USFM files for the same content, if required.


Prior to this 3.0 proposal, USX did not include a specification for handling peripheral content divisions. The content of peripheral divisions is encoded with existing USX elements. The container for peripheral content divisions is what is described in this proposal.

This is also a companion to USFM 3.0 proposal "Syntax for peripheral (\periph) identifiers". See: ubsicap/usfm#28 for detail.

User Defined Peripheral Division Identifiers

A project text which includes peripheral content beyond the common peripheral identifiers (USX 3.0 #22) should add the prefix x- to a user defined periph@id value.


<?xml version="1.0" encoding="utf-8"?>
<usx version="3.0">
  <book code="FRT" style="id">Good News Translation Front Matter</book>
  <periph alt="Title Page" id="title">
    <para style="mt1">Holy Bible</para>
    <para style="mt3">with</para>
    <para style="mt2">Deuterocanonicals/Apocrypha</para>
<?xml version="1.0" encoding="utf-8"?>
<usx version="3.0">
  <book code="FRT" style="id">Good News Translation Front Matter</book>
  <periph alt="Foreword" id="foreword">
    <para style="h">Foreword</para>
    <para style="mt1">Foreword</para>
    <para style="p">The <char style="bk">Good News
      Translation</char> of the Bible is a translation which 
      seeks to state clearly and accurately the meaning of the 
      original texts in words and forms that are widely accepted 
      by people who use English as a means of 
<?xml version="1.0" encoding="utf-8"?>
<usx version="3.0">
  <book code="FRT" style="id">Good News Translation Front Matter</book>
  <periph alt="Table of Contents" id="contents">
    <para style="h">Contents</para>
    <para style="mt1">Contents</para>
    <para style="s">Old Testament</para>
      <row style="tr">
        <cell style="th1" align="start">Name</cell>
        <cell style="th2" align="start">Page</cell>
        <cell style="th3" align="start">Name</cell>
        <cell style="th3" align="start">Page</cell>
      <row style="tr">
        <cell style="th1" align="start">Genesis</cell>
        <cell style="th2" align="start">#</cell>
        <cell style="th3" align="start">Ecclesiastes</cell>
        <cell style="th3" align="start">#</cell>


  • Add element <periph> for marking the start and end of a content division within any peripheral book.
    • Attribute alt provides a title text for the peripheral content (the content itself may contain various other identification and title content).
    • Attribute id may be added for identifying recognized peripheral divisions. Standardized identifiers will allow software to easily select content for recognized peripheral divisions.

See: Common peripheral identifiers (USX 3.0 #22)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment