diff --git a/src/main/java/org/crosswire/jsword/passage/Passage.java b/src/main/java/org/crosswire/jsword/passage/Passage.java index 296e6f145..2bf6b2c6d 100644 --- a/src/main/java/org/crosswire/jsword/passage/Passage.java +++ b/src/main/java/org/crosswire/jsword/passage/Passage.java @@ -19,6 +19,8 @@ */ package org.crosswire.jsword.passage; +import org.crosswire.jsword.versification.Versification; + import java.io.IOException; import java.io.Reader; import java.io.Writer; @@ -186,6 +188,18 @@ public interface Passage extends VerseKey { */ Iterator rangeIterator(RestrictionType restrict); + @Override + default boolean isValidIn(Versification targetVersification) { + Iterator rangeIterator = rangeIterator(RestrictionType.NONE); + while(rangeIterator.hasNext()) { + if(!rangeIterator.next().isValidIn(targetVersification)) { + // If any of the included ranges is invalid, this passage is invalid. + return false; + } + } + return true; + } + /** * Returns true if this collection contains all the specified Verse * diff --git a/src/main/java/org/crosswire/jsword/passage/Verse.java b/src/main/java/org/crosswire/jsword/passage/Verse.java index 3d91b74b4..9b16bfb4d 100644 --- a/src/main/java/org/crosswire/jsword/passage/Verse.java +++ b/src/main/java/org/crosswire/jsword/passage/Verse.java @@ -319,6 +319,15 @@ public Versification getVersification() { return v11n; } + @Override + public boolean isValidIn(Versification targetVersification) { + try { + return targetVersification.validate(book, chapter, verse, false); + } catch (NoSuchVerseException e) { + return false; + } + } + /* (non-Javadoc) * @see org.crosswire.jsword.passage.Passage#reversify(org.crosswire.jsword.versification.Versification) */ diff --git a/src/main/java/org/crosswire/jsword/passage/VerseKey.java b/src/main/java/org/crosswire/jsword/passage/VerseKey.java index c16a49216..187f4ac61 100644 --- a/src/main/java/org/crosswire/jsword/passage/VerseKey.java +++ b/src/main/java/org/crosswire/jsword/passage/VerseKey.java @@ -37,14 +37,22 @@ public interface VerseKey extends Key { */ Versification getVersification(); + /** + * Check if this key is valid in a different versification. + * @param targetVersification The versification to check for. + * @return True if all verses in this verse key map to existing verses in the given + * versification, false otherwise. + */ + boolean isValidIn(Versification targetVersification); + /** * Cast this VerseKey into another Versification. OSIS Sub Identifiers are ignored. * *

* Note: This is dangerous as it does not consider chapter boundaries * or whether the verses in this VerseKey are actually part of the - * new versification. It should only be used when the start and end - * verses are in both Versifications. You have been warned. + * new versification. + * If in doubt, always check with {@link #isValidIn(Versification)} before usage. *

* * @param newVersification diff --git a/src/main/java/org/crosswire/jsword/passage/VerseRange.java b/src/main/java/org/crosswire/jsword/passage/VerseRange.java index f4419fe6f..4795773bd 100644 --- a/src/main/java/org/crosswire/jsword/passage/VerseRange.java +++ b/src/main/java/org/crosswire/jsword/passage/VerseRange.java @@ -100,6 +100,17 @@ public Versification getVersification() { return v11n; } + @Override + public boolean isValidIn(Versification targetVersification) { + Iterator verseIterator = iterator(); + while(verseIterator.hasNext()) { + if(!((Verse) verseIterator.next()).isValidIn(targetVersification)) { + return false; + } + } + return true; + } + /* (non-Javadoc) * @see org.crosswire.jsword.passage.VerseKey#reversify(org.crosswire.jsword.versification.Versification) */ diff --git a/src/main/java/org/crosswire/jsword/versification/Versification.java b/src/main/java/org/crosswire/jsword/versification/Versification.java index 5c56eb99f..0b01c0386 100644 --- a/src/main/java/org/crosswire/jsword/versification/Versification.java +++ b/src/main/java/org/crosswire/jsword/versification/Versification.java @@ -29,6 +29,7 @@ import org.crosswire.jsword.book.ReferenceSystem; import org.crosswire.jsword.passage.NoSuchVerseException; import org.crosswire.jsword.passage.Verse; +import org.crosswire.jsword.passage.VerseKey; import org.crosswire.jsword.passage.VerseRange; /** @@ -1064,6 +1065,14 @@ public boolean validate(BibleBook book, int chapter, int verse, boolean silent) throw new NoSuchVerseException(JSOtherMsg.lookupText("Book must not be null")); } + if(!bookList.contains(book)) { + if (silent) { + return false; + } + // TRANSLATOR: The user supplied a book which does not exist in this versification. + throw new NoSuchVerseException(JSOtherMsg.lookupText("Book must be present in the versification")); + } + // Check the chapter int maxChapter = getLastChapter(book); if (chapter < 0 || chapter > maxChapter) { diff --git a/src/main/java/org/crosswire/jsword/versification/VersificationToKJVMapper.java b/src/main/java/org/crosswire/jsword/versification/VersificationToKJVMapper.java index 8ffdfaac5..ad0bc6b69 100644 --- a/src/main/java/org/crosswire/jsword/versification/VersificationToKJVMapper.java +++ b/src/main/java/org/crosswire/jsword/versification/VersificationToKJVMapper.java @@ -43,6 +43,7 @@ import org.crosswire.jsword.passage.Verse; import org.crosswire.jsword.passage.VerseKey; import org.crosswire.jsword.passage.VerseRange; +import org.crosswire.jsword.versification.system.SystemKJVA; import org.crosswire.jsword.versification.system.Versifications; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -50,6 +51,9 @@ /** * A Versification mapper allows you to a map a given verse to the KJV versification, * or unmap it from the KJV versification into your own versification. + * Note : in order to allow for all known bible contents (including deuterocanonical texts) to be mapped, within this + * class "KJV" actually stands for the "KJVA" versification system. + * *

* A properties-like file will contain the non-KJV versification as they key, and the KJV versification value * as the target value... Duplicate keys are allowed. @@ -529,14 +533,19 @@ public List map(QualifiedKey qualifiedKey) { VerseKey key = qualifiedKey.getKey(); if (key instanceof Verse) { List kjvKeys = this.getQualifiedKeys(key); - if (kjvKeys == null || kjvKeys.size() == 0) { - //then we found no mapping, so we're essentially going to return the same key back... - //unless it's a verse 0 and then we'll check the global flag. + if(kjvKeys != null && !kjvKeys.isEmpty()) { + // Found an explicit mapping to KJV, return it. + return kjvKeys; + } + else if(key.isValidIn(KJV)) { + // No explicit mapping, but key is valid in KJV : implicit straight mapping. + // Safe to reversify. kjvKeys = new ArrayList(); kjvKeys.add(qualifiedKey.reversify(KJV)); return kjvKeys; } - return kjvKeys; + // Else, verses just don't map to KJV : return the empty list. + return new ArrayList(); } return new ArrayList(); @@ -557,14 +566,22 @@ public VerseKey unmap(final QualifiedKey kjvVerse) { left = this.fromKJVMappings.get(new QualifiedKey(kjvVerse.getVerse().getWhole())); } - //if we have no mapping, then we are in 1 of two scenarios - //the verse is either totally absent, or the verse is not part of the mappings, meaning it is a straight map if (left == null) { + // We didn't find a mapped passage in the left (non-KJV) versification. VerseKey vk = kjvVerse.getKey(); if (vk != null && this.absentVerses.contains(vk)) { + // If the verse was explicitly listed as absent, return an empty passage. + return createEmptyPassage(KJV); + } + else if(vk != null && vk.isValidIn(this.nonKjv)) { + // If the verse is not explicitly absent, and exists in the left versification, + // then it's a straight mapping, safe to cast to reversify. + return kjvVerse.reversify(this.nonKjv).getKey(); + } + else { + // No explicit mapping, and invalid direct cast : these KJV verses do not map to anything. return createEmptyPassage(KJV); } - return kjvVerse.reversify(this.nonKjv).getKey(); } return left; } @@ -655,6 +672,6 @@ private Passage createEmptyPassage(Versification versification) { private OsisParser osisParser = new OsisParser(); - private static final Versification KJV = Versifications.instance().getVersification(Versifications.DEFAULT_V11N); + private static final Versification KJV = Versifications.instance().getVersification(SystemKJVA.V11N_NAME); private static final Logger LOGGER = LoggerFactory.getLogger(VersificationToKJVMapper.class); } diff --git a/src/main/java/org/crosswire/jsword/versification/VersificationsMapper.java b/src/main/java/org/crosswire/jsword/versification/VersificationsMapper.java index 29e295511..065b83072 100644 --- a/src/main/java/org/crosswire/jsword/versification/VersificationsMapper.java +++ b/src/main/java/org/crosswire/jsword/versification/VersificationsMapper.java @@ -33,6 +33,7 @@ import org.crosswire.jsword.passage.RangedPassage; import org.crosswire.jsword.passage.Verse; import org.crosswire.jsword.passage.VerseKey; +import org.crosswire.jsword.versification.system.SystemKJVA; import org.crosswire.jsword.versification.system.Versifications; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -251,7 +252,7 @@ private void ensure(final Versification versification) { } private static volatile VersificationsMapper instance; - private static final Versification KJV = Versifications.instance().getVersification(Versifications.DEFAULT_V11N); + private static final Versification KJV = Versifications.instance().getVersification(SystemKJVA.V11N_NAME); private static final Map MAPPERS = new HashMap(); private static final Logger LOGGER = LoggerFactory.getLogger(VersificationsMapper.class); } diff --git a/src/main/java/org/crosswire/jsword/versification/system/SystemKJVA.java b/src/main/java/org/crosswire/jsword/versification/system/SystemKJVA.java index 27615deec..30dfbf741 100644 --- a/src/main/java/org/crosswire/jsword/versification/system/SystemKJVA.java +++ b/src/main/java/org/crosswire/jsword/versification/system/SystemKJVA.java @@ -22,6 +22,8 @@ import org.crosswire.jsword.versification.BibleBook; import org.crosswire.jsword.versification.Versification; +import java.util.Arrays; + /** * * @@ -38,49 +40,14 @@ public class SystemKJVA extends Versification { public static final String V11N_NAME = "KJVA"; - // SystemDefault.booksOT followed by - // deuterocanonical books - /* protected */ static final BibleBook[] BOOKS_OT = - { - BibleBook.GEN, - BibleBook.EXOD, - BibleBook.LEV, - BibleBook.NUM, - BibleBook.DEUT, - BibleBook.JOSH, - BibleBook.JUDG, - BibleBook.RUTH, - BibleBook.SAM1, - BibleBook.SAM2, - BibleBook.KGS1, - BibleBook.KGS2, - BibleBook.CHR1, - BibleBook.CHR2, - BibleBook.EZRA, - BibleBook.NEH, - BibleBook.ESTH, - BibleBook.JOB, - BibleBook.PS, - BibleBook.PROV, - BibleBook.ECCL, - BibleBook.SONG, - BibleBook.ISA, - BibleBook.JER, - BibleBook.LAM, - BibleBook.EZEK, - BibleBook.DAN, - BibleBook.HOS, - BibleBook.JOEL, - BibleBook.AMOS, - BibleBook.OBAD, - BibleBook.JONAH, - BibleBook.MIC, - BibleBook.NAH, - BibleBook.HAB, - BibleBook.ZEPH, - BibleBook.HAG, - BibleBook.ZECH, - BibleBook.MAL, + private static T[] concat(T[] array1, T[] array2) { + T[] result = Arrays.copyOf(array1, array1.length + array2.length); + System.arraycopy(array2, 0, result, array1.length, array2.length); + return result; + } + + // All KJV old testament books followed by all deuterocanonical books. + /* protected */ static final BibleBook[] BOOKS_OT = concat(SystemKJV.BOOKS_OT, new BibleBook[] { BibleBook.ESD1, BibleBook.ESD2, BibleBook.TOB, @@ -95,295 +62,65 @@ public class SystemKJVA extends Versification { BibleBook.PR_MAN, BibleBook.MACC1, BibleBook.MACC2, - }; + }); /* protected */ static final BibleBook[] BOOKS_NT = SystemDefault.BOOKS_NT; - /* protected */ static final int[][] LAST_VERSE_OT = - { - // Genesis - { - 31, 25, 24, 26, 32, 22, 24, 22, 29, 32, - 32, 20, 18, 24, 21, 16, 27, 33, 38, 18, - 34, 24, 20, 67, 34, 35, 46, 22, 35, 43, - 55, 32, 20, 31, 29, 43, 36, 30, 23, 23, - 57, 38, 34, 34, 28, 34, 31, 22, 33, 26, - }, - // Exodus - { - 22, 25, 22, 31, 23, 30, 25, 32, 35, 29, - 10, 51, 22, 31, 27, 36, 16, 27, 25, 26, - 36, 31, 33, 18, 40, 37, 21, 43, 46, 38, - 18, 35, 23, 35, 35, 38, 29, 31, 43, 38, - }, - // Leviticus - { - 17, 16, 17, 35, 19, 30, 38, 36, 24, 20, - 47, 8, 59, 57, 33, 34, 16, 30, 37, 27, - 24, 33, 44, 23, 55, 46, 34, - }, - // Numbers - { - 54, 34, 51, 49, 31, 27, 89, 26, 23, 36, - 35, 16, 33, 45, 41, 50, 13, 32, 22, 29, - 35, 41, 30, 25, 18, 65, 23, 31, 40, 16, - 54, 42, 56, 29, 34, 13, - }, - // Deuteronomy - { - 46, 37, 29, 49, 33, 25, 26, 20, 29, 22, - 32, 32, 18, 29, 23, 22, 20, 22, 21, 20, - 23, 30, 25, 22, 19, 19, 26, 68, 29, 20, - 30, 52, 29, 12, - }, - // Joshua - { - 18, 24, 17, 24, 15, 27, 26, 35, 27, 43, - 23, 24, 33, 15, 63, 10, 18, 28, 51, 9, - 45, 34, 16, 33, - }, - // Judges - { - 36, 23, 31, 24, 31, 40, 25, 35, 57, 18, - 40, 15, 25, 20, 20, 31, 13, 31, 30, 48, - 25, - }, - // Ruth - { - 22, 23, 18, 22, - }, - // I Samuel - { - 28, 36, 21, 22, 12, 21, 17, 22, 27, 27, - 15, 25, 23, 52, 35, 23, 58, 30, 24, 42, - 15, 23, 29, 22, 44, 25, 12, 25, 11, 31, - 13, - }, - // II Samuel - { - 27, 32, 39, 12, 25, 23, 29, 18, 13, 19, - 27, 31, 39, 33, 37, 23, 29, 33, 43, 26, - 22, 51, 39, 25, - }, - // I Kings - { - 53, 46, 28, 34, 18, 38, 51, 66, 28, 29, - 43, 33, 34, 31, 34, 34, 24, 46, 21, 43, - 29, 53, - }, - // II Kings - { - 18, 25, 27, 44, 27, 33, 20, 29, 37, 36, - 21, 21, 25, 29, 38, 20, 41, 37, 37, 21, - 26, 20, 37, 20, 30, - }, - // I Chronicles - { - 54, 55, 24, 43, 26, 81, 40, 40, 44, 14, - 47, 40, 14, 17, 29, 43, 27, 17, 19, 8, - 30, 19, 32, 31, 31, 32, 34, 21, 30, - }, - // II Chronicles - { - 17, 18, 17, 22, 14, 42, 22, 18, 31, 19, - 23, 16, 22, 15, 19, 14, 19, 34, 11, 37, - 20, 12, 21, 27, 28, 23, 9, 27, 36, 27, - 21, 33, 25, 33, 27, 23, - }, - // Ezra - { - 11, 70, 13, 24, 17, 22, 28, 36, 15, 44, - }, - // Nehemiah - { - 11, 20, 32, 23, 19, 19, 73, 18, 38, 39, - 36, 47, 31, - }, - // Esther - { - 22, 23, 15, 17, 14, 14, 10, 17, 32, 3, - }, - // Job - { - 22, 13, 26, 21, 27, 30, 21, 22, 35, 22, - 20, 25, 28, 22, 35, 22, 16, 21, 29, 29, - 34, 30, 17, 25, 6, 14, 23, 28, 25, 31, - 40, 22, 33, 37, 16, 33, 24, 41, 30, 24, - 34, 17, - }, - // Psalms - { - 6, 12, 8, 8, 12, 10, 17, 9, 20, 18, - 7, 8, 6, 7, 5, 11, 15, 50, 14, 9, - 13, 31, 6, 10, 22, 12, 14, 9, 11, 12, - 24, 11, 22, 22, 28, 12, 40, 22, 13, 17, - 13, 11, 5, 26, 17, 11, 9, 14, 20, 23, - 19, 9, 6, 7, 23, 13, 11, 11, 17, 12, - 8, 12, 11, 10, 13, 20, 7, 35, 36, 5, - 24, 20, 28, 23, 10, 12, 20, 72, 13, 19, - 16, 8, 18, 12, 13, 17, 7, 18, 52, 17, - 16, 15, 5, 23, 11, 13, 12, 9, 9, 5, - 8, 28, 22, 35, 45, 48, 43, 13, 31, 7, - 10, 10, 9, 8, 18, 19, 2, 29, 176, 7, - 8, 9, 4, 8, 5, 6, 5, 6, 8, 8, - 3, 18, 3, 3, 21, 26, 9, 8, 24, 13, - 10, 7, 12, 15, 21, 10, 20, 14, 9, 6, - }, - // Proverbs - { - 33, 22, 35, 27, 23, 35, 27, 36, 18, 32, - 31, 28, 25, 35, 33, 33, 28, 24, 29, 30, - 31, 29, 35, 34, 28, 28, 27, 28, 27, 33, - 31, - }, - // Ecclesiastes - { - 18, 26, 22, 16, 20, 12, 29, 17, 18, 20, - 10, 14, - }, - // Song of Solomon - { - 17, 17, 11, 16, 16, 13, 13, 14, - }, - // Isaiah - { - 31, 22, 26, 6, 30, 13, 25, 22, 21, 34, - 16, 6, 22, 32, 9, 14, 14, 7, 25, 6, - 17, 25, 18, 23, 12, 21, 13, 29, 24, 33, - 9, 20, 24, 17, 10, 22, 38, 22, 8, 31, - 29, 25, 28, 28, 25, 13, 15, 22, 26, 11, - 23, 15, 12, 17, 13, 12, 21, 14, 21, 22, - 11, 12, 19, 12, 25, 24, - }, - // Jeremiah - { - 19, 37, 25, 31, 31, 30, 34, 22, 26, 25, - 23, 17, 27, 22, 21, 21, 27, 23, 15, 18, - 14, 30, 40, 10, 38, 24, 22, 17, 32, 24, - 40, 44, 26, 22, 19, 32, 21, 28, 18, 16, - 18, 22, 13, 30, 5, 28, 7, 47, 39, 46, - 64, 34, - }, - // Lamentations - { - 22, 22, 66, 22, 22, - }, - // Ezekiel - { - 28, 10, 27, 17, 17, 14, 27, 18, 11, 22, - 25, 28, 23, 23, 8, 63, 24, 32, 14, 49, - 32, 31, 49, 27, 17, 21, 36, 26, 21, 26, - 18, 32, 33, 31, 15, 38, 28, 23, 29, 49, - 26, 20, 27, 31, 25, 24, 23, 35, - }, - // Daniel - { - 21, 49, 30, 37, 31, 28, 28, 27, 27, 21, - 45, 13, - }, - // Hosea - { - 11, 23, 5, 19, 15, 11, 16, 14, 17, 15, - 12, 14, 16, 9, - }, - // Joel - { - 20, 32, 21, - }, - // Amos - { - 15, 16, 15, 13, 27, 14, 17, 14, 15, - }, - // Obadiah - { - 21, - }, - // Jonah - { - 17, 10, 10, 11, - }, - // Micah - { - 16, 13, 12, 13, 15, 16, 20, - }, - // Nahum - { - 15, 13, 19, - }, - // Habakkuk - { - 17, 20, 19, - }, - // Zephaniah - { - 18, 15, 20, - }, - // Haggai - { - 15, 23, - }, - // Zechariah - { - 21, 13, 10, 14, 11, 15, 14, 23, 17, 12, - 17, 14, 9, 21, - }, - // Malachi - { - 14, 17, 18, 6, - }, + // Same verse numbering as KJV for regular OT, followed by additional verse numberings for deuterocanonical books. + /* protected */ static final int[][] LAST_VERSE_OT = concat(SystemKJV.LAST_VERSE_OT, new int[][]{ // I Esdras { - 58, 30, 24, 63, 73, 34, 15, 96, 55, + 58, 30, 24, 63, 73, 34, 15, 96, 55, }, // II Esdras { - 40, 48, 36, 52, 56, 59, 70, 63, 47, 59, - 46, 51, 58, 48, 63, 78, + 40, 48, 36, 52, 56, 59, 70, 63, 47, 59, + 46, 51, 58, 48, 63, 78, }, // Tobit { - 22, 14, 17, 21, 22, 17, 18, 21, 6, 12, - 19, 22, 18, 15, + 22, 14, 17, 21, 22, 17, 18, 21, 6, 12, + 19, 22, 18, 15, }, // Judith { - 16, 28, 10, 15, 24, 21, 32, 36, 14, 23, - 23, 20, 20, 19, 13, 25, + 16, 28, 10, 15, 24, 21, 32, 36, 14, 23, + 23, 20, 20, 19, 13, 25, }, // Additions to Esther { 1, 1, 1, 1, 1, 1, 1, 1, 1, 13, - 12, 6, 18, 19, 16, 24, + 12, 6, 18, 19, 16, 24, }, // Wisdom { - 16, 24, 19, 20, 23, 25, 30, 21, 18, 21, - 26, 27, 19, 31, 19, 29, 21, 25, 22, + 16, 24, 19, 20, 23, 25, 30, 21, 18, 21, + 26, 27, 19, 31, 19, 29, 21, 25, 22, }, // Sirach { - 30, 18, 31, 31, 15, 37, 36, 19, 18, 31, - 34, 18, 26, 27, 20, 30, 32, 33, 30, 32, - 28, 27, 28, 34, 26, 29, 30, 26, 28, 25, - 31, 24, 31, 26, 20, 26, 31, 34, 35, 30, - 24, 25, 33, 22, 26, 20, 25, 25, 16, 29, - 30, + 30, 18, 31, 31, 15, 37, 36, 19, 18, 31, + 34, 18, 26, 27, 20, 30, 32, 33, 30, 32, + 28, 27, 28, 34, 26, 29, 30, 26, 28, 25, + 31, 24, 31, 26, 20, 26, 31, 34, 35, 30, + 24, 25, 33, 22, 26, 20, 25, 25, 16, 29, + 30, }, // Baruch { - 22, 35, 37, 37, 9, 73, + 22, 35, 37, 37, 9, 73, }, // Prayer of Azariah { - 68, + 68, }, // Susanna { - 64, + 64, }, // Bel and the Dragon { - 42, + 42, }, // Prayer of Manasses { @@ -391,15 +128,15 @@ public class SystemKJVA extends Versification { }, // I Maccabees { - 64, 70, 60, 61, 68, 63, 50, 32, 73, 89, + 64, 70, 60, 61, 68, 63, 50, 32, 73, 89, 74, 53, 53, 49, 41, 24, }, // II Maccabees { - 36, 32, 40, 50, 27, 31, 42, 36, 29, 38, - 38, 45, 26, 46, 39, + 36, 32, 40, 50, 27, 31, 42, 36, 29, 38, + 38, 45, 26, 46, 39, }, - }; + }); /* protected */ static final int[][] LAST_VERSE_NT = SystemKJV.LAST_VERSE_NT; diff --git a/src/main/resources/org/crosswire/jsword/versification/Catholic.properties b/src/main/resources/org/crosswire/jsword/versification/Catholic.properties new file mode 100644 index 000000000..991cf55e6 --- /dev/null +++ b/src/main/resources/org/crosswire/jsword/versification/Catholic.properties @@ -0,0 +1,390 @@ +# Catholic=KJVA +# Everything except Esth must be kept aligned with Catholic2. + +# Genesis +Gen.32.1=Gen.31.55 +Gen.32.2-Gen.32.33=Gen.32.1-Gen.32.32 + +# Exodus +Exod.7.26-Exod.7.29=Exod.8.1-Exod.8.4 +Exod.8.1-Exod.8.28=Exod.8.5-Exod.8.32 +Exod.21.37=Exod.22.1 +Exod.22.1-Exod.22.30=Exod.22.2-Exod.22.31 + +# Leviticus +Lev.5.20-Lev.5.26=Lev.6.1-Lev.6.7 +Lev.6.1-Lev.6.23=Lev.6.8-Lev.6.30 + +# Numbers +Num.17.1-Num.17.15=Num.16.36-Num.16.50 +Num.17.16-Num.17.28=Num.17.1-Num.17.13 +Num.25.19-Num.26.1=Num.26.1 +Num.30.1=Num.29.40 +Num.30.2-Num.30.17=Num.30.1-Num.30.16 + +# Deuteronomy +Deut.13.1=Deut.12.32 +Deut.13.2-Deut.13.19=Deut.13.1-Deut.13.18 +Deut.23.1=Deut.22.30 +Deut.23.2-Deut.23.26=Deut.23.1-Deut.23.25 +Deut.28.69=Deut.29.1 +Deut.29.1-Deut.29.28=Deut.29.2-Deut.29.29 + +# Judges +Judg.5.31-Judg.5.32=Judg.5.31 + +# I Samuel +1Sam.20.42-1Sam.21.1=1Sam.20.42 +1Sam.21.2-1Sam.21.16=1Sam.21.1-1Sam.21.15 +1Sam.24.1=1Sam.23.29 +1Sam.24.2-1Sam.24.23=1Sam.24.1-1Sam.24.22 + +# II Samuel +2Sam.19.1=2Sam.18.33 +2Sam.19.2-2Sam.19.44=2Sam.19.1-2Sam.19.43 + +# I Kings +1Kgs.5.1-1Kgs.5.14=1Kgs.4.21-1Kgs.4.34 +1Kgs.5.15-1Kgs.5.32=1Kgs.5.1-1Kgs.5.18 +1Kgs.22.43-1Kgs.22.44=1Kgs.22.43 +1Kgs.22.45-1Kgs.22.54=1Kgs.22.44-1Kgs.22.53 + +# II Kings +2Kgs.12.1=2Kgs.11.21 +2Kgs.12.2-2Kgs.12.22=2Kgs.12.1-2Kgs.12.21 + +# I Chronicles +1Chr.5.27-1Chr.5.41=1Chr.6.1-1Chr.6.15 +1Chr.6.1-1Chr.6.66=1Chr.6.16-1Chr.6.81 + +# II Chronicles +2Chr.1.18=2Chr.2.1 +2Chr.2.1-2Chr.2.17=2Chr.2.2-2Chr.2.18 +2Chr.13.23=2Chr.14.1 +2Chr.14.1-2Chr.14.14=2Chr.14.2-2Chr.14.15 + +# Nehemiah +Neh.3.33-Neh.3.38=Neh.4.1-Neh.4.6 +Neh.4.1-Neh.4.17=Neh.4.7-Neh.4.23 +Neh.10.1=Neh.9.38 +Neh.10.2-Neh.10.40=Neh.10.1-Neh.10.39 + +# Job +Job.40.25-Job.40.32=Job.41.1-Job.41.8 +Job.41.1-Job.41.26=Job.41.9-Job.41.34 + +# Psalms +Ps.3.1-Ps.3.9=Ps.3.0-Ps.3.8 +Ps.4.1-Ps.4.9=Ps.4.0-Ps.4.8 +Ps.5.1-Ps.5.13=Ps.5.0-Ps.5.12 +Ps.6.1-Ps.6.11=Ps.6.0-Ps.6.10 +Ps.7.1-Ps.7.18=Ps.7.0-Ps.7.17 +Ps.8.1-Ps.8.10=Ps.8.0-Ps.8.9 +# Psalm 9 is usually titled as 9A, with psalm 10 being 9B. +# From then on there is a -1 number shift between the title and the number. +# Eg. Psalm 21 in the versification is actually titled "20" or "21 (20)" in the bible. +Ps.9.1-Ps.9.21=Ps.9.0-Ps.9.20 +Ps.11.1!intro=Ps.11.0 +Ps.11.1!verse=Ps.11.1 +Ps.12.1-Ps.12.9=Ps.12.0-Ps.12.8 +Ps.13.1-Ps.13.5=Ps.13.0-Ps.13.4 +Ps.13.6=Ps.13.5-Ps.13.6 +Ps.14.1!intro=Ps.14.0 +Ps.14.1!verse=Ps.14.1 +Ps.15.1!intro=Ps.15.0 +Ps.15.1!verse=Ps.15.1 +Ps.16.1!intro=Ps.16.0 +Ps.16.1!verse=Ps.16.1 +Ps.17.1!intro=Ps.17.0 +Ps.17.1!verse=Ps.17.1 +Ps.18.1-Ps.18.51=Ps.18.0-Ps.18.50 +Ps.19.1-Ps.19.15=Ps.19.0-Ps.19.14 +Ps.20.1-Ps.20.10=Ps.20.0-Ps.20.9 +Ps.21.1-Ps.21.14=Ps.21.0-Ps.21.13 +Ps.22.1-Ps.22.32=Ps.22.0-Ps.22.31 +Ps.23.1!intro=Ps.23.0 +Ps.23.1!verse=Ps.23.1 +Ps.24.1!intro=Ps.24.0 +Ps.24.1!verse=Ps.24.1 +Ps.25.1!intro=Ps.25.0 +Ps.25.1!verse=Ps.25.1 +Ps.26.1!intro=Ps.26.0 +Ps.26.1!verse=Ps.26.1 +Ps.27.1!intro=Ps.27.0 +Ps.27.1!verse=Ps.27.1 +Ps.28.1!intro=Ps.28.0 +Ps.28.1!verse=Ps.28.1 +Ps.29.1!intro=Ps.29.0 +Ps.29.1!verse=Ps.29.1 +Ps.30.1-Ps.30.13=Ps.30.0-Ps.30.12 +Ps.31.1-Ps.31.25=Ps.31.0-Ps.31.24 +Ps.32.1!intro=Ps.32.0 +Ps.32.1!verse=Ps.32.1 +Ps.34.1-Ps.34.23=Ps.34.0-Ps.34.22 +Ps.35.1!intro=Ps.35.0 +Ps.35.1!verse=Ps.35.1 +Ps.36.1-Ps.36.13=Ps.36.0-Ps.36.12 +Ps.37.1!intro=Ps.37.0 +Ps.37.1!verse=Ps.37.1 +Ps.38.1-Ps.38.23=Ps.38.0-Ps.38.22 +Ps.39.1-Ps.39.14=Ps.39.0-Ps.39.13 +Ps.40.1-Ps.40.18=Ps.40.0-Ps.40.17 +Ps.41.1-Ps.41.14=Ps.41.0-Ps.41.13 +Ps.42.1-Ps.42.12=Ps.42.0-Ps.42.11 +Ps.44.1-Ps.44.27=Ps.44.0-Ps.44.26 +Ps.45.1-Ps.45.18=Ps.45.0-Ps.45.17 +Ps.46.1-Ps.46.12=Ps.46.0-Ps.46.11 +Ps.47.1-Ps.47.10=Ps.47.0-Ps.47.9 +Ps.48.1-Ps.48.15=Ps.48.0-Ps.48.14 +Ps.49.1-Ps.49.21=Ps.49.0-Ps.49.20 +Ps.50.1!intro=Ps.50.0 +Ps.50.1!verse=Ps.50.1 +Ps.51.1-Ps.51.2=Ps.51.0 +Ps.51.3-Ps.51.21=Ps.51.1-Ps.51.19 +Ps.52.1-Ps.52.2=Ps.52.0 +Ps.52.3-Ps.52.11=Ps.52.1-Ps.52.9 +Ps.53.1-Ps.53.7=Ps.53.0-Ps.53.6 +Ps.54.1-Ps.54.2=Ps.54.0 +Ps.54.3-Ps.54.9=Ps.54.1-Ps.54.7 +Ps.55.1-Ps.55.24=Ps.55.0-Ps.55.23 +Ps.56.1-Ps.56.14=Ps.56.0-Ps.56.13 +Ps.57.1-Ps.57.12=Ps.57.0-Ps.57.11 +Ps.58.1-Ps.58.12=Ps.58.0-Ps.58.11 +Ps.59.1-Ps.59.18=Ps.59.0-Ps.59.17 +Ps.60.1-Ps.60.2=Ps.60.0 +Ps.60.3-Ps.60.14=Ps.60.1-Ps.60.12 +Ps.61.1-Ps.61.9=Ps.61.0-Ps.61.8 +Ps.62.1-Ps.62.13=Ps.62.0-Ps.62.12 +Ps.63.1-Ps.63.12=Ps.63.0-Ps.63.11 +Ps.64.1-Ps.64.11=Ps.64.0-Ps.64.10 +Ps.65.1-Ps.65.14=Ps.65.0-Ps.65.13 +Ps.66.1!intro=Ps.66.0 +Ps.66.1!verse=Ps.66.1 +Ps.67.1-Ps.67.8=Ps.67.0-Ps.67.7 +Ps.68.1-Ps.68.36=Ps.68.0-Ps.68.35 +Ps.69.1-Ps.69.37=Ps.69.0-Ps.69.36 +Ps.70.1-Ps.70.6=Ps.70.0-Ps.70.5 +Ps.72.1!intro=Ps.72.0 +Ps.72.1!verse=Ps.72.1 +Ps.73.1!intro=Ps.73.0 +Ps.73.1!verse=Ps.73.1 +Ps.74.1!intro=Ps.74.0 +Ps.74.1!verse=Ps.74.1 +Ps.75.1-Ps.75.11=Ps.75.0-Ps.75.10 +Ps.76.1-Ps.76.13=Ps.76.0-Ps.76.12 +Ps.77.1-Ps.77.21=Ps.77.0-Ps.77.20 +Ps.78.1!intro=Ps.78.0 +Ps.78.1!verse=Ps.78.1 +Ps.79.1!intro=Ps.79.0 +Ps.79.1!verse=Ps.79.1 +Ps.80.1-Ps.80.20=Ps.80.0-Ps.80.19 +Ps.81.1-Ps.81.17=Ps.81.0-Ps.81.16 +Ps.82.1!intro=Ps.82.0 +Ps.82.1!verse=Ps.82.1 +Ps.83.1-Ps.83.19=Ps.83.0-Ps.83.18 +Ps.84.1-Ps.84.13=Ps.84.0-Ps.84.12 +Ps.85.1-Ps.85.14=Ps.85.0-Ps.85.13 +Ps.86.1!intro=Ps.86.0 +Ps.86.1!verse=Ps.86.1 +Ps.87.1!intro=Ps.87.0 +Ps.87.1!verse=Ps.87.1 +Ps.88.1-Ps.88.19=Ps.88.0-Ps.88.18 +Ps.89.1-Ps.89.53=Ps.89.0-Ps.89.52 +Ps.90.1!intro=Ps.90.0 +Ps.90.1!verse=Ps.90.1 +Ps.92.1-Ps.92.16=Ps.92.0-Ps.92.15 +Ps.98.1!intro=Ps.98.0 +Ps.98.1!verse=Ps.98.1 +Ps.100.1!intro=Ps.100.0 +Ps.100.1!verse=Ps.100.1 +Ps.101.1!intro=Ps.101.0 +Ps.101.1!verse=Ps.101.1 +Ps.102.1-Ps.102.29=Ps.102.0-Ps.102.28 +Ps.103.1!intro=Ps.103.0 +Ps.103.1!verse=Ps.103.1 +Ps.108.1-Ps.108.14=Ps.108.0-Ps.108.13 +Ps.109.1!intro=Ps.109.0 +Ps.109.1!verse=Ps.109.1 +Ps.110.1!intro=Ps.110.0 +Ps.110.1!verse=Ps.110.1 +# Psalm 114 is usually titled as 113A, with psalm 115 being 113B. +# From then on there is a -2 number shift between the title and the number. +# Psalm 116 is usually titled as 114-115. +# From then on there is a -1 number shift between the title and the number. +Ps.120.1!intro=Ps.120.0 +Ps.120.1!verse=Ps.120.1 +Ps.121.1!intro=Ps.121.0 +Ps.121.1!verse=Ps.121.1 +Ps.122.1!intro=Ps.122.0 +Ps.122.1!verse=Ps.122.1 +Ps.123.1!intro=Ps.123.0 +Ps.123.1!verse=Ps.123.1 +Ps.124.1!intro=Ps.124.0 +Ps.124.1!verse=Ps.124.1 +Ps.125.1!intro=Ps.125.0 +Ps.125.1!verse=Ps.125.1 +Ps.126.1!intro=Ps.126.0 +Ps.126.1!verse=Ps.126.1 +Ps.127.1!intro=Ps.127.0 +Ps.127.1!verse=Ps.127.1 +Ps.128.1!intro=Ps.128.0 +Ps.128.1!verse=Ps.128.1 +Ps.129.1!intro=Ps.129.0 +Ps.129.1!verse=Ps.129.1 +Ps.130.1!intro=Ps.130.0 +Ps.130.1!verse=Ps.130.1 +Ps.131.1!intro=Ps.131.0 +Ps.131.1!verse=Ps.131.1 +Ps.132.1!intro=Ps.132.0 +Ps.132.1!verse=Ps.132.1 +Ps.133.1!intro=Ps.133.0 +Ps.133.1!verse=Ps.133.1 +Ps.134.1!intro=Ps.134.0 +Ps.134.1!verse=Ps.134.1 +Ps.138.1!intro=Ps.138.0 +Ps.138.1!verse=Ps.138.1 +Ps.139.1!intro=Ps.139.0 +Ps.139.1!verse=Ps.139.1 +Ps.140.1-Ps.140.14=Ps.140.0-Ps.140.13 +Ps.141.1!intro=Ps.141.0 +Ps.141.1!verse=Ps.141.1 +Ps.142.1-Ps.142.8=Ps.142.0-Ps.142.7 +Ps.143.1!intro=Ps.143.0 +Ps.143.1!verse=Ps.143.1 +Ps.144.1!intro=Ps.144.0 +Ps.144.1!verse=Ps.144.1 +Ps.145.1!intro=Ps.145.0 +Ps.145.1!verse=Ps.145.1 +# Psalm 147 is usually titled as 146-147. +# From then on, the title and number of the psalm are back in sync. + +# Ecclesiastes +Eccl.4.17=Eccl.5.1 +Eccl.5.1-Eccl.5.19=Eccl.5.2-Eccl.5.20 + +# Song of Solomon +Song.7.1=Song.6.13 +Song.7.2-Song.7.14=Song.7.1-Song.7.13 + +# Isaiah +Isa.8.23=Isa.9.1 +Isa.9.1-Isa.9.20=Isa.9.2-Isa.9.21 +Isa.63.19!a=Isa.63.19 +Isa.63.19!b=Isa.64.1 +Isa.64.1-Isa.64.11=Isa.64.2-Isa.64.12 + +# Jeremiah +Jer.8.23=Jer.9.1 +Jer.9.1-Jer.9.25=Jer.9.2-Jer.9.26 + +# Ezekiel +Ezek.21.1-Ezek.21.5=Ezek.20.45-Ezek.20.49 +Ezek.21.6-Ezek.21.37=Ezek.21.1-Ezek.21.32 + +# Daniel (includes deuterocanonical additions) +Dan.3.24-Dan.3.51=PrAzar.1.1-PrAzar.1.28 +Dan.3.52!a=PrAzar.1.29 +Dan.3.52!b=PrAzar.1.30 +Dan.3.53-Dan.3.90=PrAzar.1.31-PrAzar.1.68 +Dan.3.91-Dan.3.97=Dan.3.24-Dan.3.30 +Dan.3.98-Dan.3.100=Dan.4.1-Dan.4.3 +Dan.4.1-Dan.4.34=Dan.4.4-Dan.4.37 +Dan.6.1=Dan.5.31 +Dan.6.2-Dan.6.29=Dan.6.1-Dan.6.28 +Dan.13.1-Dan.13.64=Sus.1.1-Sus.1.64 +Dan.14.1-Dan.14.42=Bel.1.1-Bel.1.42 +Dan.14.43=?BelThenKingSaid + +# Hosea +Hos.2.1-Hos.2.2=Hos.1.10-Hos.1.11 +Hos.2.3-Hos.2.25=Hos.2.1-Hos.2.23 +Hos.12.1=Hos.11.12 +Hos.12.2-Hos.12.15=Hos.1.1-Hos.1.14 +Hos.14.1=Hos.13.16 +Hos.14.2-Hos.14.10=Hos.14.1-Hos.14.9 + +# Joel +Joel.3.1-Joel.3.5=Joel.2.28-Joel.2.32 +Joel.4.1-Joel.4.21=Joel.3.1-Joel.3.21 + +# Jonah +Jonah.2.1=Jonah.1.17 +Jonah.2.2-Jonah.2.11=Jonah.2.1-Jonah.2.10 + +# Micah +Mic.4.14=Mic.5.1 +Mic.5.1-Mic.5.14=Mic.5.2-Mic.5.15 + +# Nahum +Nah.2.1=Nah.1.15 +Nah.2.2-Nah.2.14=Nah.2.1-Nah.2.13 + +# Zechariah +Zech.2.1-Zech.2.4=Zech.1.18-Zech.1.21 +Zech.2.5-Zech.2.17=Zech.2.1-Zech.2.13 + +# Malachi +Mal.3.19-Mal.3.24=Mal.4.1-Mal.4.6 + +# Tobit +Tob.5.8-Tob.5.9=Tob.5.8 +Tob.5.10-Tob.5.23=Tob.5.9-Tob.5.22 +Tob.6.5-Tob.6.6=Tob.6.5 +Tob.6.7-Tob.6.17=Tob.6.6-Tob.6.16 +Tob.6.18-Tob.6.19=Tob.6.17 +Tob.7.8-Tob.7.9=Tob.7.8 +Tob.7.10!a=Tob.7.9 +Tob.7.10!b=Tob.7.10 +Tob.7.11!a=Tob.7.11 +Tob.7.11!b=Tob.7.12 +Tob.7.12-Tob.7.17=Tob.7.13-Tob.7.18 +Tob.10.7-Tob.10.8=Tob.10.7 +Tob.10.9!a=Tob.10.8 +Tob.10.9!b=Tob.10.9 +Tob.10.12-Tob.10.13=Tob.10.12 +Tob.10.14=Tob.11.1!a +Tob.11.1=Tob.11.1!b + +# Judith +Jdt.15.14=Jdt.16.1 +Jdt.16.1-Jdt.16.6=Jdt.16.2-Jdt.16.7 +Jdt.16.7-Jdt.16.8=Jdt.16.8 + +# Sirach +Sir.33.16-Sir.33.17=Sir.33.16 +Sir.33.18-Sir.33.27=Sir.33.17-Sir.33.26 +Sir.33.28-Sir.33.29=Sir.33.27 +Sir.33.30!a=Sir.33.28 +Sir.33.30!b=Sir.33.29 +Sir.33.31=Sir.33.30 +Sir.33.32-Sir.33.33=Sir.33.31 +Sir.34.10-Sir.34.11=Sir.34.10 +Sir.34.12-Sir.34.13=Sir.34.11-Sir.34.12 +Sir.34.14-Sir.34.15=Sir.34.13 +Sir.34.16=Sir.34.14 +Sir.34.17-Sir.34.18=Sir.34.15 +Sir.34.19-Sir.34.20=Sir.34.16-Sir.34.17 +Sir.34.21-Sir.34.22=Sir.34.18 +Sir.34.23-Sir.34.25=Sir.34.19-Sir.34.21 +Sir.34.26-Sir.34.27=Sir.34.22 +Sir.34.28-Sir.34.31=Sir.34.23-Sir.34.26 +Sir.36.6-Sir.36.7=Sir.36.6 +Sir.36.8-Sir.36.9=Sir.36.7 +Sir.36.10-Sir.36.12=Sir.36.8-Sir.36.10 +Sir.36.13-Sir.36.16=Sir.36.11 +Sir.36.17-Sir.36.31=Sir.36.12-Sir.36.26 +Sir.42.1!a=Sir.41.23-Sir.41.24 +Sir.42.1!b=Sir.42.1 +Sir.44.22-Sir.44.23=Sir.44.22 + +# Baruch +Bar.3.34-Bar.3.35=Bar.3.34 +Bar.3.36-Bar.3.38=Bar.3.35-Bar.3.37 +Bar.6.0=Bar.6.1 +Bar.6.1-Bar.6.72=Bar.6.2-Bar.6.73 + +# I Maccabees +1Macc.12.53-1Macc.12.54=1Macc.12.53 + +# II Maccabees +2Macc.12.45-2Macc.12.46=2Macc.12.45 diff --git a/src/main/resources/org/crosswire/jsword/versification/Catholic2.properties b/src/main/resources/org/crosswire/jsword/versification/Catholic2.properties new file mode 100644 index 000000000..7de3aa6d2 --- /dev/null +++ b/src/main/resources/org/crosswire/jsword/versification/Catholic2.properties @@ -0,0 +1,401 @@ +# Catholic2=KJVA +# Everything except Esth must be kept aligned with Catholic. + +# Genesis +Gen.32.1=Gen.31.55 +Gen.32.2-Gen.32.33=Gen.32.1-Gen.32.32 + +# Exodus +Exod.7.26-Exod.7.29=Exod.8.1-Exod.8.4 +Exod.8.1-Exod.8.28=Exod.8.5-Exod.8.32 +Exod.21.37=Exod.22.1 +Exod.22.1-Exod.22.30=Exod.22.2-Exod.22.31 + +# Leviticus +Lev.5.20-Lev.5.26=Lev.6.1-Lev.6.7 +Lev.6.1-Lev.6.23=Lev.6.8-Lev.6.30 + +# Numbers +Num.17.1-Num.17.15=Num.16.36-Num.16.50 +Num.17.16-Num.17.28=Num.17.1-Num.17.13 +Num.25.19-Num.26.1=Num.26.1 +Num.30.1=Num.29.40 +Num.30.2-Num.30.17=Num.30.1-Num.30.16 + +# Deuteronomy +Deut.13.1=Deut.12.32 +Deut.13.2-Deut.13.19=Deut.13.1-Deut.13.18 +Deut.23.1=Deut.22.30 +Deut.23.2-Deut.23.26=Deut.23.1-Deut.23.25 +Deut.28.69=Deut.29.1 +Deut.29.1-Deut.29.28=Deut.29.2-Deut.29.29 + +# Judges +Judg.5.31-Judg.5.32=Judg.5.31 + +# I Samuel +1Sam.20.42-1Sam.21.1=1Sam.20.42 +1Sam.21.2-1Sam.21.16=1Sam.21.1-1Sam.21.15 +1Sam.24.1=1Sam.23.29 +1Sam.24.2-1Sam.24.23=1Sam.24.1-1Sam.24.22 + +# II Samuel +2Sam.19.1=2Sam.18.33 +2Sam.19.2-2Sam.19.44=2Sam.19.1-2Sam.19.43 + +# I Kings +1Kgs.5.1-1Kgs.5.14=1Kgs.4.21-1Kgs.4.34 +1Kgs.5.15-1Kgs.5.32=1Kgs.5.1-1Kgs.5.18 +1Kgs.22.43-1Kgs.22.44=1Kgs.22.43 +1Kgs.22.45-1Kgs.22.54=1Kgs.22.44-1Kgs.22.53 + +# II Kings +2Kgs.12.1=2Kgs.11.21 +2Kgs.12.2-2Kgs.12.22=2Kgs.12.1-2Kgs.12.21 + +# I Chronicles +1Chr.5.27-1Chr.5.41=1Chr.6.1-1Chr.6.15 +1Chr.6.1-1Chr.6.66=1Chr.6.16-1Chr.6.81 + +# II Chronicles +2Chr.1.18=2Chr.2.1 +2Chr.2.1-2Chr.2.17=2Chr.2.2-2Chr.2.18 +2Chr.13.23=2Chr.14.1 +2Chr.14.1-2Chr.14.14=2Chr.14.2-2Chr.14.15 + +# Nehemiah +Neh.3.33-Neh.3.38=Neh.4.1-Neh.4.6 +Neh.4.1-Neh.4.17=Neh.4.7-Neh.4.23 +Neh.10.1=Neh.9.38 +Neh.10.2-Neh.10.40=Neh.10.1-Neh.10.39 + +# Job +Job.40.25-Job.40.32=Job.41.1-Job.41.8 +Job.41.1-Job.41.26=Job.41.9-Job.41.34 + +# Psalms +Ps.3.1-Ps.3.9=Ps.3.0-Ps.3.8 +Ps.4.1-Ps.4.9=Ps.4.0-Ps.4.8 +Ps.5.1-Ps.5.13=Ps.5.0-Ps.5.12 +Ps.6.1-Ps.6.11=Ps.6.0-Ps.6.10 +Ps.7.1-Ps.7.18=Ps.7.0-Ps.7.17 +Ps.8.1-Ps.8.10=Ps.8.0-Ps.8.9 +# Psalm 9 is usually titled as 9A, with psalm 10 being 9B. +# From then on there is a -1 number shift between the title and the number. +# Eg. Psalm 21 in the versification is actually titled "20" or "21 (20)" in the bible. +Ps.9.1-Ps.9.21=Ps.9.0-Ps.9.20 +Ps.11.1!intro=Ps.11.0 +Ps.11.1!verse=Ps.11.1 +Ps.12.1-Ps.12.9=Ps.12.0-Ps.12.8 +Ps.13.1-Ps.13.5=Ps.13.0-Ps.13.4 +Ps.13.6=Ps.13.5-Ps.13.6 +Ps.14.1!intro=Ps.14.0 +Ps.14.1!verse=Ps.14.1 +Ps.15.1!intro=Ps.15.0 +Ps.15.1!verse=Ps.15.1 +Ps.16.1!intro=Ps.16.0 +Ps.16.1!verse=Ps.16.1 +Ps.17.1!intro=Ps.17.0 +Ps.17.1!verse=Ps.17.1 +Ps.18.1-Ps.18.51=Ps.18.0-Ps.18.50 +Ps.19.1-Ps.19.15=Ps.19.0-Ps.19.14 +Ps.20.1-Ps.20.10=Ps.20.0-Ps.20.9 +Ps.21.1-Ps.21.14=Ps.21.0-Ps.21.13 +Ps.22.1-Ps.22.32=Ps.22.0-Ps.22.31 +Ps.23.1!intro=Ps.23.0 +Ps.23.1!verse=Ps.23.1 +Ps.24.1!intro=Ps.24.0 +Ps.24.1!verse=Ps.24.1 +Ps.25.1!intro=Ps.25.0 +Ps.25.1!verse=Ps.25.1 +Ps.26.1!intro=Ps.26.0 +Ps.26.1!verse=Ps.26.1 +Ps.27.1!intro=Ps.27.0 +Ps.27.1!verse=Ps.27.1 +Ps.28.1!intro=Ps.28.0 +Ps.28.1!verse=Ps.28.1 +Ps.29.1!intro=Ps.29.0 +Ps.29.1!verse=Ps.29.1 +Ps.30.1-Ps.30.13=Ps.30.0-Ps.30.12 +Ps.31.1-Ps.31.25=Ps.31.0-Ps.31.24 +Ps.32.1!intro=Ps.32.0 +Ps.32.1!verse=Ps.32.1 +Ps.34.1-Ps.34.23=Ps.34.0-Ps.34.22 +Ps.35.1!intro=Ps.35.0 +Ps.35.1!verse=Ps.35.1 +Ps.36.1-Ps.36.13=Ps.36.0-Ps.36.12 +Ps.37.1!intro=Ps.37.0 +Ps.37.1!verse=Ps.37.1 +Ps.38.1-Ps.38.23=Ps.38.0-Ps.38.22 +Ps.39.1-Ps.39.14=Ps.39.0-Ps.39.13 +Ps.40.1-Ps.40.18=Ps.40.0-Ps.40.17 +Ps.41.1-Ps.41.14=Ps.41.0-Ps.41.13 +Ps.42.1-Ps.42.12=Ps.42.0-Ps.42.11 +Ps.44.1-Ps.44.27=Ps.44.0-Ps.44.26 +Ps.45.1-Ps.45.18=Ps.45.0-Ps.45.17 +Ps.46.1-Ps.46.12=Ps.46.0-Ps.46.11 +Ps.47.1-Ps.47.10=Ps.47.0-Ps.47.9 +Ps.48.1-Ps.48.15=Ps.48.0-Ps.48.14 +Ps.49.1-Ps.49.21=Ps.49.0-Ps.49.20 +Ps.50.1!intro=Ps.50.0 +Ps.50.1!verse=Ps.50.1 +Ps.51.1-Ps.51.2=Ps.51.0 +Ps.51.3-Ps.51.21=Ps.51.1-Ps.51.19 +Ps.52.1-Ps.52.2=Ps.52.0 +Ps.52.3-Ps.52.11=Ps.52.1-Ps.52.9 +Ps.53.1-Ps.53.7=Ps.53.0-Ps.53.6 +Ps.54.1-Ps.54.2=Ps.54.0 +Ps.54.3-Ps.54.9=Ps.54.1-Ps.54.7 +Ps.55.1-Ps.55.24=Ps.55.0-Ps.55.23 +Ps.56.1-Ps.56.14=Ps.56.0-Ps.56.13 +Ps.57.1-Ps.57.12=Ps.57.0-Ps.57.11 +Ps.58.1-Ps.58.12=Ps.58.0-Ps.58.11 +Ps.59.1-Ps.59.18=Ps.59.0-Ps.59.17 +Ps.60.1-Ps.60.2=Ps.60.0 +Ps.60.3-Ps.60.14=Ps.60.1-Ps.60.12 +Ps.61.1-Ps.61.9=Ps.61.0-Ps.61.8 +Ps.62.1-Ps.62.13=Ps.62.0-Ps.62.12 +Ps.63.1-Ps.63.12=Ps.63.0-Ps.63.11 +Ps.64.1-Ps.64.11=Ps.64.0-Ps.64.10 +Ps.65.1-Ps.65.14=Ps.65.0-Ps.65.13 +Ps.66.1!intro=Ps.66.0 +Ps.66.1!verse=Ps.66.1 +Ps.67.1-Ps.67.8=Ps.67.0-Ps.67.7 +Ps.68.1-Ps.68.36=Ps.68.0-Ps.68.35 +Ps.69.1-Ps.69.37=Ps.69.0-Ps.69.36 +Ps.70.1-Ps.70.6=Ps.70.0-Ps.70.5 +Ps.72.1!intro=Ps.72.0 +Ps.72.1!verse=Ps.72.1 +Ps.73.1!intro=Ps.73.0 +Ps.73.1!verse=Ps.73.1 +Ps.74.1!intro=Ps.74.0 +Ps.74.1!verse=Ps.74.1 +Ps.75.1-Ps.75.11=Ps.75.0-Ps.75.10 +Ps.76.1-Ps.76.13=Ps.76.0-Ps.76.12 +Ps.77.1-Ps.77.21=Ps.77.0-Ps.77.20 +Ps.78.1!intro=Ps.78.0 +Ps.78.1!verse=Ps.78.1 +Ps.79.1!intro=Ps.79.0 +Ps.79.1!verse=Ps.79.1 +Ps.80.1-Ps.80.20=Ps.80.0-Ps.80.19 +Ps.81.1-Ps.81.17=Ps.81.0-Ps.81.16 +Ps.82.1!intro=Ps.82.0 +Ps.82.1!verse=Ps.82.1 +Ps.83.1-Ps.83.19=Ps.83.0-Ps.83.18 +Ps.84.1-Ps.84.13=Ps.84.0-Ps.84.12 +Ps.85.1-Ps.85.14=Ps.85.0-Ps.85.13 +Ps.86.1!intro=Ps.86.0 +Ps.86.1!verse=Ps.86.1 +Ps.87.1!intro=Ps.87.0 +Ps.87.1!verse=Ps.87.1 +Ps.88.1-Ps.88.19=Ps.88.0-Ps.88.18 +Ps.89.1-Ps.89.53=Ps.89.0-Ps.89.52 +Ps.90.1!intro=Ps.90.0 +Ps.90.1!verse=Ps.90.1 +Ps.92.1-Ps.92.16=Ps.92.0-Ps.92.15 +Ps.98.1!intro=Ps.98.0 +Ps.98.1!verse=Ps.98.1 +Ps.100.1!intro=Ps.100.0 +Ps.100.1!verse=Ps.100.1 +Ps.101.1!intro=Ps.101.0 +Ps.101.1!verse=Ps.101.1 +Ps.102.1-Ps.102.29=Ps.102.0-Ps.102.28 +Ps.103.1!intro=Ps.103.0 +Ps.103.1!verse=Ps.103.1 +Ps.108.1-Ps.108.14=Ps.108.0-Ps.108.13 +Ps.109.1!intro=Ps.109.0 +Ps.109.1!verse=Ps.109.1 +Ps.110.1!intro=Ps.110.0 +Ps.110.1!verse=Ps.110.1 +# Psalm 114 is usually titled as 113A, with psalm 115 being 113B. +# From then on there is a -2 number shift between the title and the number. +# Psalm 116 is usually titled as 114-115. +# From then on there is a -1 number shift between the title and the number. +Ps.120.1!intro=Ps.120.0 +Ps.120.1!verse=Ps.120.1 +Ps.121.1!intro=Ps.121.0 +Ps.121.1!verse=Ps.121.1 +Ps.122.1!intro=Ps.122.0 +Ps.122.1!verse=Ps.122.1 +Ps.123.1!intro=Ps.123.0 +Ps.123.1!verse=Ps.123.1 +Ps.124.1!intro=Ps.124.0 +Ps.124.1!verse=Ps.124.1 +Ps.125.1!intro=Ps.125.0 +Ps.125.1!verse=Ps.125.1 +Ps.126.1!intro=Ps.126.0 +Ps.126.1!verse=Ps.126.1 +Ps.127.1!intro=Ps.127.0 +Ps.127.1!verse=Ps.127.1 +Ps.128.1!intro=Ps.128.0 +Ps.128.1!verse=Ps.128.1 +Ps.129.1!intro=Ps.129.0 +Ps.129.1!verse=Ps.129.1 +Ps.130.1!intro=Ps.130.0 +Ps.130.1!verse=Ps.130.1 +Ps.131.1!intro=Ps.131.0 +Ps.131.1!verse=Ps.131.1 +Ps.132.1!intro=Ps.132.0 +Ps.132.1!verse=Ps.132.1 +Ps.133.1!intro=Ps.133.0 +Ps.133.1!verse=Ps.133.1 +Ps.134.1!intro=Ps.134.0 +Ps.134.1!verse=Ps.134.1 +Ps.138.1!intro=Ps.138.0 +Ps.138.1!verse=Ps.138.1 +Ps.139.1!intro=Ps.139.0 +Ps.139.1!verse=Ps.139.1 +Ps.140.1-Ps.140.14=Ps.140.0-Ps.140.13 +Ps.141.1!intro=Ps.141.0 +Ps.141.1!verse=Ps.141.1 +Ps.142.1-Ps.142.8=Ps.142.0-Ps.142.7 +Ps.143.1!intro=Ps.143.0 +Ps.143.1!verse=Ps.143.1 +Ps.144.1!intro=Ps.144.0 +Ps.144.1!verse=Ps.144.1 +Ps.145.1!intro=Ps.145.0 +Ps.145.1!verse=Ps.145.1 +# Psalm 147 is usually titled as 146-147. +# From then on, the title and number of the psalm are back in sync. + +# Ecclesiastes +Eccl.4.17=Eccl.5.1 +Eccl.5.1-Eccl.5.19=Eccl.5.2-Eccl.5.20 + +# Song of Solomon +Song.7.1=Song.6.13 +Song.7.2-Song.7.14=Song.7.1-Song.7.13 + +# Isaiah +Isa.8.23=Isa.9.1 +Isa.9.1-Isa.9.20=Isa.9.2-Isa.9.21 +Isa.63.19!a=Isa.63.19 +Isa.63.19!b=Isa.64.1 +Isa.64.1-Isa.64.11=Isa.64.2-Isa.64.12 + +# Jeremiah +Jer.8.23=Jer.9.1 +Jer.9.1-Jer.9.25=Jer.9.2-Jer.9.26 + +# Ezekiel +Ezek.21.1-Ezek.21.5=Ezek.20.45-Ezek.20.49 +Ezek.21.6-Ezek.21.37=Ezek.21.1-Ezek.21.32 + +# Daniel (includes deuterocanonical additions) +Dan.3.24-Dan.3.51=PrAzar.1.1-PrAzar.1.28 +Dan.3.52!a=PrAzar.1.29 +Dan.3.52!b=PrAzar.1.30 +Dan.3.53-Dan.3.90=PrAzar.1.31-PrAzar.1.68 +Dan.3.91-Dan.3.97=Dan.3.24-Dan.3.30 +Dan.3.98-Dan.3.100=Dan.4.1-Dan.4.3 +Dan.4.1-Dan.4.34=Dan.4.4-Dan.4.37 +Dan.6.1=Dan.5.31 +Dan.6.2-Dan.6.29=Dan.6.1-Dan.6.28 +Dan.13.1-Dan.13.64=Sus.1.1-Sus.1.64 +Dan.14.1-Dan.14.42=Bel.1.1-Bel.1.42 +Dan.14.43=?BelThenKingSaid + +# Hosea +Hos.2.1-Hos.2.2=Hos.1.10-Hos.1.11 +Hos.2.3-Hos.2.25=Hos.2.1-Hos.2.23 +Hos.12.1=Hos.11.12 +Hos.12.2-Hos.12.15=Hos.1.1-Hos.1.14 +Hos.14.1=Hos.13.16 +Hos.14.2-Hos.14.10=Hos.14.1-Hos.14.9 + +# Joel +Joel.3.1-Joel.3.5=Joel.2.28-Joel.2.32 +Joel.4.1-Joel.4.21=Joel.3.1-Joel.3.21 + +# Jonah +Jonah.2.1=Jonah.1.17 +Jonah.2.2-Jonah.2.11=Jonah.2.1-Jonah.2.10 + +# Micah +Mic.4.14=Mic.5.1 +Mic.5.1-Mic.5.14=Mic.5.2-Mic.5.15 + +# Nahum +Nah.2.1=Nah.1.15 +Nah.2.2-Nah.2.14=Nah.2.1-Nah.2.13 + +# Zechariah +Zech.2.1-Zech.2.4=Zech.1.18-Zech.1.21 +Zech.2.5-Zech.2.17=Zech.2.1-Zech.2.13 + +# Malachi +Mal.3.19-Mal.3.24=Mal.4.1-Mal.4.6 + +# Tobit +Tob.5.8-Tob.5.9=Tob.5.8 +Tob.5.10-Tob.5.23=Tob.5.9-Tob.5.22 +Tob.6.5-Tob.6.6=Tob.6.5 +Tob.6.7-Tob.6.17=Tob.6.6-Tob.6.16 +Tob.6.18-Tob.6.19=Tob.6.17 +Tob.7.8-Tob.7.9=Tob.7.8 +Tob.7.10!a=Tob.7.9 +Tob.7.10!b=Tob.7.10 +Tob.7.11!a=Tob.7.11 +Tob.7.11!b=Tob.7.12 +Tob.7.12-Tob.7.17=Tob.7.13-Tob.7.18 +Tob.10.7-Tob.10.8=Tob.10.7 +Tob.10.9!a=Tob.10.8 +Tob.10.9!b=Tob.10.9 +Tob.10.12-Tob.10.13=Tob.10.12 +Tob.10.14=Tob.11.1!a +Tob.11.1=Tob.11.1!b + +# Judith +Jdt.15.14=Jdt.16.1 +Jdt.16.1-Jdt.16.6=Jdt.16.2-Jdt.16.7 +Jdt.16.7-Jdt.16.8=Jdt.16.8 + +# Sirach +Sir.33.16-Sir.33.17=Sir.33.16 +Sir.33.18-Sir.33.27=Sir.33.17-Sir.33.26 +Sir.33.28-Sir.33.29=Sir.33.27 +Sir.33.30!a=Sir.33.28 +Sir.33.30!b=Sir.33.29 +Sir.33.31=Sir.33.30 +Sir.33.32-Sir.33.33=Sir.33.31 +Sir.34.10-Sir.34.11=Sir.34.10 +Sir.34.12-Sir.34.13=Sir.34.11-Sir.34.12 +Sir.34.14-Sir.34.15=Sir.34.13 +Sir.34.16=Sir.34.14 +Sir.34.17-Sir.34.18=Sir.34.15 +Sir.34.19-Sir.34.20=Sir.34.16-Sir.34.17 +Sir.34.21-Sir.34.22=Sir.34.18 +Sir.34.23-Sir.34.25=Sir.34.19-Sir.34.21 +Sir.34.26-Sir.34.27=Sir.34.22 +Sir.34.28-Sir.34.31=Sir.34.23-Sir.34.26 +Sir.36.6-Sir.36.7=Sir.36.6 +Sir.36.8-Sir.36.9=Sir.36.7 +Sir.36.10-Sir.36.12=Sir.36.8-Sir.36.10 +Sir.36.13-Sir.36.16=Sir.36.11 +Sir.36.17-Sir.36.31=Sir.36.12-Sir.36.26 +Sir.42.1!a=Sir.41.23-Sir.41.24 +Sir.42.1!b=Sir.42.1 +Sir.44.22-Sir.44.23=Sir.44.22 + +# Baruch +Bar.3.34-Bar.3.35=Bar.3.34 +Bar.3.36-Bar.3.38=Bar.3.35-Bar.3.37 +Bar.6.0=Bar.6.1 +Bar.6.1-Bar.6.72=Bar.6.2-Bar.6.73 + +# I Maccabees +1Macc.12.53-1Macc.12.54=1Macc.12.53 + +# II Maccabees +2Macc.12.45-2Macc.12.46=2Macc.12.45 + +# Esther (includes deuterocanonical additions) +Esth.10.4-Esth.10.13=AddEsth.10.4-AddEsth.10.13 +Esth.11.1-Esth.11.12=AddEsth.11.1-AddEsth.11.12 +Esth.12.1-Esth.12.6=AddEsth.12.1-AddEsth.12.6 +Esth.13.1-Esth.13.18=AddEsth.13.1-AddEsth.13.18 +Esth.14.1-Esth.14.19=AddEsth.14.1-AddEsth.14.19 +Esth.15.1-Esth.15.3=? +Esth.15.4-Esth.15.19=AddEsth.15.1-AddEsth.15.16 +Esth.16.1-Esth.16.24=AddEsth.16.1-AddEsth.16.24 + diff --git a/src/test/java/org/crosswire/jsword/versification/VersificationToKJVMapperTest.java b/src/test/java/org/crosswire/jsword/versification/VersificationToKJVMapperTest.java index c0a36cad0..fcfabbd2b 100644 --- a/src/test/java/org/crosswire/jsword/versification/VersificationToKJVMapperTest.java +++ b/src/test/java/org/crosswire/jsword/versification/VersificationToKJVMapperTest.java @@ -26,6 +26,7 @@ import org.crosswire.jsword.passage.RangedPassage; import org.crosswire.jsword.passage.VerseRange; import org.crosswire.jsword.versification.system.SystemCatholic; +import org.crosswire.jsword.versification.system.SystemKJVA; import org.crosswire.jsword.versification.system.Versifications; import org.junit.Assert; import org.junit.Test; @@ -229,6 +230,6 @@ public String mapToQualifiedKey(final String verseKey) { return representation.toString(); } - private static final Versification KJV = Versifications.instance().getVersification(Versifications.DEFAULT_V11N); + private static final Versification KJV = Versifications.instance().getVersification(SystemKJVA.V11N_NAME); private static final Versification NON_KJV = Versifications.instance().getVersification(SystemCatholic.V11N_NAME); } diff --git a/src/test/java/org/crosswire/jsword/versification/VersificationsMapperTest.java b/src/test/java/org/crosswire/jsword/versification/VersificationsMapperTest.java index 4b1dac9cc..625db19e9 100644 --- a/src/test/java/org/crosswire/jsword/versification/VersificationsMapperTest.java +++ b/src/test/java/org/crosswire/jsword/versification/VersificationsMapperTest.java @@ -27,11 +27,7 @@ import org.crosswire.jsword.passage.PassageKeyFactory; import org.crosswire.jsword.passage.Verse; import org.crosswire.jsword.passage.VerseFactory; -import org.crosswire.jsword.versification.system.SystemCatholic; -import org.crosswire.jsword.versification.system.SystemCatholic2; -import org.crosswire.jsword.versification.system.SystemKJV; -import org.crosswire.jsword.versification.system.SystemSynodal; -import org.crosswire.jsword.versification.system.Versifications; +import org.crosswire.jsword.versification.system.*; import org.junit.Assert; import org.junit.Test; @@ -43,27 +39,32 @@ * @author Chris Burrell */ public class VersificationsMapperTest { - private static final Versification KJV = Versifications.instance().getVersification(SystemKJV.V11N_NAME); + private static final Versification KJVA = Versifications.instance().getVersification(SystemKJVA.V11N_NAME); private static final Versification CATHOLIC = Versifications.instance().getVersification(SystemCatholic.V11N_NAME); private static final Versification CATHOLIC2 = Versifications.instance().getVersification(SystemCatholic2.V11N_NAME); private static final Versification SYNODAL = Versifications.instance().getVersification(SystemSynodal.V11N_NAME); @Test public void testTwoStepVersification() throws NoSuchVerseException { - doTest(CATHOLIC, "Gen.1.1", CATHOLIC2, "Gen.1.4"); + doTest(CATHOLIC2, "1Sam.20.42", SYNODAL, "1Sam.20.43"); + doTest(CATHOLIC2, "Ps.35.1", SYNODAL, "Ps.34.1"); } @Test public void testTwoStepVersificationUsesParts() throws NoSuchVerseException { - doTest(CATHOLIC, "Gen.1.2", CATHOLIC2, "Gen.1.2"); - doTest(CATHOLIC, "Gen.1.3", CATHOLIC2, "Gen.1.3"); + doTest(CATHOLIC, "Tob.7.11", CATHOLIC2, "Tob.7.11"); + doTest(CATHOLIC, "Tob.7.12", CATHOLIC2, "Tob.7.12"); + doTest(CATHOLIC, "Tob.10.14", CATHOLIC2, "Tob.10.14"); + doTest(CATHOLIC, "Dan.3.52", CATHOLIC2, "Dan.3.52"); + doTest(CATHOLIC, "Ps.35.1", CATHOLIC2, "Ps.35.1"); } @Test public void testSingleStepToKJV() throws NoSuchVerseException { - doTest(CATHOLIC, "Gen.1.1", KJV, "Exod.1.2"); - doTest(CATHOLIC, "Gen.1.2", KJV, "Exod.1.3"); - doTest(CATHOLIC, "Gen.1.3", KJV, "Exod.1.3"); + doTest(CATHOLIC2, "Gen.32.1", KJVA, "Gen.31.55"); + doTest(CATHOLIC2, "Dan.3.60", KJVA, "PrAzar.1.38"); + doTest(CATHOLIC2, "Esth.15.5", KJVA, "AddEsth.15.2"); + doTest(CATHOLIC2, "Dan.3.52", KJVA, "PrAzar.1.29-PrAzar.1.30"); } @Test @@ -78,18 +79,19 @@ public void testSameKey() throws NoSuchVerseException { @Test public void testSingleStepFromKJV() throws NoSuchVerseException { - doTest(KJV, "Exod.1.2", CATHOLIC, "Gen.1.1"); - doTest(KJV, "Exod.1.3", CATHOLIC, "Gen.1.2-Gen.1.3"); + doTest(KJVA, "Gen.31.55", CATHOLIC, "Gen.32.1"); + doTest(KJVA, "AddEsth.13.5", CATHOLIC2, "Esth.13.5"); + doTest(KJVA, "Tob.11.1", CATHOLIC, "Tob.10.14 Tob.11.1"); } @Test public void testMapVerseZero() throws NoSuchVerseException { - doTest(KJV, "Gen.1.0", KJV, "Gen.1.0"); - doTest(KJV, "Gen.1.0", SYNODAL, "Gen.1.0"); - doTest(KJV, "Ps.50.0", KJV, "Ps.50.0"); - doTest(KJV, "Ps.50.0", CATHOLIC, "Ps.50.0"); - doTest(KJV, "Ps.50.0", SYNODAL, "Ps.49.1"); - doTest(SYNODAL, "Ps.49.1", KJV, "Ps.50.0-Ps.50.1"); + doTest(KJVA, "Gen.1.0", KJVA, "Gen.1.0"); + doTest(KJVA, "Gen.1.0", SYNODAL, "Gen.1.0"); + doTest(KJVA, "Ps.50.0", KJVA, "Ps.50.0"); + doTest(KJVA, "Ps.50.0", CATHOLIC, "Ps.50.1"); + doTest(KJVA, "Ps.50.0", SYNODAL, "Ps.49.1"); + doTest(SYNODAL, "Ps.49.1", KJVA, "Ps.50.0-Ps.50.1"); } /** @@ -100,9 +102,9 @@ public void testMapVerseZero() throws NoSuchVerseException { @Test public void testPassageResolves() throws NoSuchKeyException { final VersificationsMapper mapper = VersificationsMapper.instance(); - Key k = mapper.map(KeyUtil.getPassage(PassageKeyFactory.instance().getKey(CATHOLIC, "Gen.1.1-Gen.1.3")), CATHOLIC2); + Key k = mapper.map(KeyUtil.getPassage(PassageKeyFactory.instance().getKey(CATHOLIC, "Gen.32")), CATHOLIC2); - Assert.assertEquals("Gen.1.2-Gen.1.4", k.getOsisRef()); + Assert.assertEquals("Gen.32", k.getOsisRef()); assertVersification(CATHOLIC2, k); } diff --git a/src/test/resources/org/crosswire/jsword/versification/Catholic.properties b/src/test/resources/org/crosswire/jsword/versification/Catholic.properties deleted file mode 100644 index ff5fedf9a..000000000 --- a/src/test/resources/org/crosswire/jsword/versification/Catholic.properties +++ /dev/null @@ -1,3 +0,0 @@ -Gen.1.1=Exod.1.2 -Gen.1.2=Exod.1.3!a -Gen.1.3=Exod.1.3!b diff --git a/src/test/resources/org/crosswire/jsword/versification/Catholic2.properties b/src/test/resources/org/crosswire/jsword/versification/Catholic2.properties deleted file mode 100644 index d3055dad4..000000000 --- a/src/test/resources/org/crosswire/jsword/versification/Catholic2.properties +++ /dev/null @@ -1,3 +0,0 @@ -Gen.1.4=Exod.1.2 -Gen.1.2=Exod.1.3!a -Gen.1.3=Exod.1.3!b