[sword-devel] How to deal with invalid markup?

Tobias Klein contact at tklein.info
Wed Jul 17 14:26:01 MST 2019


Thanks, David! To have this broken note shown in the middle of the Bible text without being asked for is rather distracting in my opinion. I'd rather choose the "validate and fall back to plain text" option recommended by Peter.

Best regards,
Tobias

Am 17. Juli 2019 22:19:13 MESZ schrieb David Haslam <dfhdfh at protonmail.com>:
>I installed the aforementioned module in PocketSword and sent a
>screenshot of the invalid XML verse to Tobias via Facebook Messenger.
>
>It does seem to display the errant markup text as best it can, with
>footnote references shown as links, etc.
>
>David
>
>Sent from ProtonMail Mobile
>
>On Wed, Jul 17, 2019 at 21:12, Tobias Klein <contact at tklein.info>
>wrote:
>
>> Thanks, good advice! Especially the idea about dynamically validating
>markup text and then going for the plain text version as a fallback.
>I'll think about using that option in node-sword-interface (Ezra
>Project's SWORD integration library).
>>
>> Best regards,
>> Tobias
>>
>> On 17.07.19 13:59, Peter Von Kaehne wrote:
>>
>>> 1) The best way is to recognise it and either fall back to something
>sane or refuse to deal with the module without crashing. You could
>presumably if an xml chunk is delivered by the engine to you and is not
>internally valid ask the engine to re-render it plainly and spit out
>some message to that effect on the terminal. Then a use may be in the
>position to see this and send a bug report to whoever is responsible
>for the dodgy module.
>>>
>>> 2) CrossWire modules are for teh last 10 years or so always tested
>and validated before they are published but other repositories are
>subject to their own rules. The module you reference is from eBible and
>not CrossWire. But - admittedly - we have in CrossWire still a lot of
>old modules which may well have bugs which only show up slowly.
>>>
>>> Peter
>>>
>>> Gesendet: Mittwoch, 17. Juli 2019 um 07:13 Uhr
>>> Von: "Tobias Klein"
>[<contact at tklein.info>](mailto:contact at tklein.info)
>>> An: "SWORD Developers' Collaboration Forum"
>[<sword-devel at crosswire.org>](mailto:sword-devel at crosswire.org)
>>> Betreff: [sword-devel] How to deal with invalid markup?
>>>
>>> Hi everyone,
>>>
>>> Is there a recommended way on how to deal with invalid markup (in a
>frontend) when using the text from a Sword module?
>>>
>>> To me invalid markup is basically invalid XML.
>>> You find an example below (Exodus 3:22 / engNET2016eb).
>>>
>>> Are Sword modules validated with standard XML validation tools
>before being published?
>>>
>>> Best regards,
>>> Tobias
>>>
>>> Module: engNET2016eb
>>>
>>> Mark-up text of Exodus 3:22 (module->getRawEntry()):
>>>
>>> <w lemma="strong:H802">Every</w> <w lemma="strong:H802">woman</w> <w
>lemma="strong:H7592">will ask</w> <w lemma="strong:H7934">her
>neighbor</w> <w lemma="strong:H1481">and the one who happens to be 
>staying</w> <w lemma="strong:H1004">in her house</w> <w
>lemma="strong:H3627">for items</w> <w lemma="strong:H3701">of
>silver</w> <w lemma="strong:H2091">and gold</w> <w
>lemma="strong:H8071">and for clothing</w>. <w lemma="strong:H7760">You
>will put</w> <w lemma="strong:H3627">these articles</w> <w
>lemma="strong:H5921">on</w> <w lemma="strong:H1121">your sons</w> <w
>lemma="strong:H1323">and daughters</w> <w lemma="strong:H5337">– thus
>you</w>
>>>
>>> INVALID section starts here:
>>>
>>> <w lemma="strong:H4713">will plunder Egypt</w>!” ‘span
>class=”footnote” id=”footnote-65”’‘span class=”key”’65‘
>>> <w lemma="strong:H7760">a</w>href=”#note-65”
>class=”backref”’3:19‘/a’‘span class=”text”’ <hi type="italic">tn</hi>:
><hi type="italic">Heb</hi> “
>>>
>>> <w lemma="strong:H1121">and</w> <w lemma="strong:H1121">not</w> <w
>lemma="strong:H1004">with</w> <w lemma="strong:H7760">a</w> mighty
>hand.”
>>> ...
>>>
>>> _______________________________________________ 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

-- 
Message sent from my phone. Please excuse brevity.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.crosswire.org/pipermail/sword-devel/attachments/20190717/99383976/attachment.html>


More information about the sword-devel mailing list