[sword-devel] Improvements to osis2mod to handle XML comments and <header> correctly

Brian J. Dumont bdumont at ameritech.net
Mon Apr 5 10:49:29 MST 2010


I would be concerned about this and how it might be implemented.  I have
packaged a number of very large modules and regularly compile (osis2mod
or xml2mod as the case may be) updates to see how it's changing as I
update. 

I have a relatively slow broadband connection.  It would be painful as a
web service every hour or so, and I fear that if there is both a web
service and a program, that they may get out of sync.

Brian

On 04/05/2010 01:24 PM, Daniel Owens wrote:
> Yes, I agree, and if there were a feedback mechanism for the module
> creator to let them know how to start fixing an OSIS file or conf
> file, it would save Chris (or whoever else approves modules) time on
> the basic stuff.
>
> Daniel
>
> On 4/5/2010 11:09 AM, DM Smith wrote:
>> This is a great idea. Rather than emailing source to modules at
>> crosswire dot org, one could upload it via a web service. We could
>> have stages of validation (xmllint) and construction (osis2mod). Such
>> a service could evaluate the quality of the submission.
>>
>> In Him,
>>     DM
>>
>> On 04/05/2010 12:01 PM, Weston Ruter wrote:
>>> Why not turn osis2mod into a web service? Then it wouldn't matter
>>> how it is implemented since it would be abstracted away by the web
>>> service interface. It could use the best XML libraries available
>>> today and written in the programming language of choice, both of
>>> which would make maintenance and the addition of new features much
>>> easier.
>>>
>>> Weston
>>>
>>> On Mon, Apr 5, 2010 at 5:55 AM, Manfred Bergmann
>>> <manfred.bergmann at me.com <mailto:manfred.bergmann at me.com>> wrote:
>>>
>>>     Hi DM.
>>>
>>>     Am 05.04.2010 um 13:21 schrieb DM Smith:
>>>
>>>     > Regarding using a "real" parser, it is a good idea. But we
>>>     don't want SWORD to be dependant on an external parser.
>>>
>>>     What's the reason for that?
>>>     I could understand if it would mean for the user to install
>>>     certain libraries manually but when the sources can be integrated
>>>     into the project and has the appropriate licence then why not?
>>>
>>>
>>>     Manfred
>>>
>>>     >
>>>     > On 02/04/2010 05:31 AM, John Zaitseff wrote:
>>>     >> Dear SWORD developers,
>>>     >>
>>>     >> Firstly, thanks for developing the SWORD library!  I have been
>>>     using
>>>     >> this library, in conjunction with the BibleTime front-end, for
>>>     many
>>>     >> years.
>>>     >>
>>>     >> I have recently started to develop some OSIS documents of my
>>> own.
>>>     >> In doing so, I found that the XML parser in osis2mod is somewhat
>>>     >> fragile---something that you are, no doubt, aware of.
>>>     >>
>>>     >> In particular, osis2mod does not handle XML comments at all, nor
>>>     >> does it correctly parse the <header> element.  Being able to
>>>     handle
>>>     >> XML comments is, I think, quite important---I like to
>>> document the
>>>     >> SVN revision ID, for example, in an XML comment.
>>>     >>
>>>     >> Furthermore, the osis2mod XML parser looks for the first
>>> <div> in
>>>     >> the document, no matter where that occurs.  In particular, if
>>> the
>>>     >> OSIS document includes a <revisionDesc> tag in the header, it
>>> will
>>>     >> have <p> tags as well---which will be translated by
>>> transformBSP()
>>>     >> into <div> tags---and get used as the starting point for the
>>>     >> document!
>>>     >>
>>>     >> For this reason, I have generated a quick patch that will solve
>>>     >> these particular problems.  Could you please apply it to the SVN
>>>     >> head for utilities/osis2mod.cpp.  Comments are handled
>>> similar to
>>>     >> spaces: they are skipped.  And handleToken() now looks for the
>>>     first
>>>     >> <div> after the </revision> end tag.
>>>     >>
>>>     >> In general, I think that (perhaps eventually) the proper way to
>>>     >> parse XML is to use a library like libxml---which is designed
>>>     >> specifically for this purpose.
>>>     >>
>>>     >> Yours truly,
>>>     >>
>>>     >> John Zaitseff
>>>
>>
>>
>> _______________________________________________
>> sword-devel mailing list: sword-devel at crosswire.org
>> http://www.crosswire.org/mailman/listinfo/sword-devel
>> Instructions to unsubscribe/change your settings at above page
>
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
>




More information about the sword-devel mailing list