[osis-core] OSIS Candidate.1.1_001 - 5 bad osisWorkType regex

Chris Little osis-core@bibletechnologieswg.org
Fri, 16 Aug 2002 20:21:24 -0700 (MST)


Finally all caught up....  (Who says English isn't pro-drop?)

osisWorkType has a pattern of:
((\p{L} | \p{N} | _)*(\.(\p{L} | \p{N} | _)*)?

I think what is desired is:
((\p{L}|\p{N}|_)*)(\.(\p{L}|\p{N}|_)*)*

There are three changes:
1) The close parenthesis following the first asterisk is needed to make it 
a valid regex at all
2) The spaces that surround each | are removed because they cause the 
requirement of actual spaces in the osisWork.  (like "B i b l e .K J V 
. 1 6 1 1 ")
3) The final "?" was changed to a "*" to allow thinks like 
"Bible.KJV.1611.etc.etc" rather than just a 1 or 2 component osisWork like 
"Bible.KJV" or "Bible".  "?" == {0,1} while "*" == {0,}.

I haven't checked other regexes, but they may need to be checked for 
conformance to these last 2 points.  XML Spy says the schema is valid, so 
there shouldn't be any other missing parentheses in regexes.

--Chris