[osis-core] <identifier type="OSIS">

Todd Tillinghast todd at contentframeworks.com
Tue Nov 9 11:31:33 MST 2004


We have been over this many times but never reached a conclusion on the
structure for the value of <identifier type="OSIS">, Patrick and I are
working on getting the OSIS User Guide completed and we need to finalize
this piece.

Proposal:

WorkSelfIdentifier ::= OSISWorkType '.' Language '.' PublisherOrAuthor
'.' Name '.' Date ( '.' PublisherExtension )*

WorkRefIdentifier  ::= OSISWorkType '.' Language ( '.'PublisherOrAuthor
('.' Name ('.' Date ( '.' PublisherExtension )* )? )? )?

OSISWorkType       ::=   'Annotation'
                       | 'Bible' 
                       | 'BibleStudy' 
                       | 'Concordance' 
                       | 'Commentary' 
                       | 'Devotional' 
                       | 'Dictionary' 
                       | 'ReferenceSystem' 
                       | 'Sermon'

Language           ::=   '_' 
                       | ISOLanguage 
                       | EthnologueLangauge

ISOLangauge        ::= ISO two or three letter language code lower case

EthnologueLanguage ::= Ethnologue three letter language code in upper
case

PublisherOrAuthor  ::=   '*' 
                       | OSISReservedPublishers
                       | NCName

OSISReservedPublishers ::=   'ABS'
                           | 'BL'
                           | 'CCEL'
                           | 'Crosswire'
                           | 'IBS'
                           | 'NTM'
                           | 'SBL'
                           | 'SIL'
                           | 'SF'
                           | 'UBS'
                           | 'WBT'
                           | 'WBTC'
                           | 'WBTI' 
                           | 'VS' 
                       (fill in the rest of the values in the current
doc and also for members of the Forum of Bible Agencies)

Name               ::= OSISReservedNames
                       | NCName

OSISReservedNames  ::=   'CEV'
                       | 'GNT'
                       | 'KJV'
                       | 'NASB'
                       | 'NIV'
                       | 'RVR'
                       (fill in the rest of the values in the current
doc)

Date               ::=
Year(Month(DayOfMonth(Hour(Minute(Second)?)?)?)?)?

Year               ::= [0-9][0-9][0-9][0-9]

Month              ::= [0-9][0-9]
                      
DayOfMonth         ::= [0-9][0-9]

Hour               ::= [0-9][0-9]

Minute             ::= [0-9][0-9]

Second             ::= [0-9][0-9]

PublisherExtension ::= NCName


The '_' value of language would be used in the case where the work is
language independent as would be the case for a ReferenceSystem.

The '*' value for PublisherOrAuthor would  be used for cases where a
reference is being make _to_ a work with the specified Name by any
PublisherOrAuthor.  (I am hopeful that this reasonably addresses Troy's
concern with having Name follow PublisherOrAuthor for cases like the
KJV).

The idea of fallback is intended.

The plan is to put out a version of the OSIS User Guide this week, so
please voice any comments or objections before that time.

Todd



More information about the osis-core mailing list