Я использую Spark XML для анализа большого документа, который содержит несколько пользовательских объектов.Это простой фрагмент из файла
<JMdict>
<entry>
<ent_seq>1000000</ent_seq>
<r_ele>
<reb>ヽ</reb>
</r_ele>
<sense>
<pos>&unc;</pos>
<gloss g_type="expl">repetition mark in katakana</gloss>
</sense>
<sense>
<gloss xml:lang="dut">hitotsuten 一つ点: teken dat herhaling van het voorafgaande katakana-schriftteken aangeeft</gloss>
</sense>
</entry>
</JMdict>
Сущности правильно определены во встроенном DTD, который можно найти в документе XML, например здесь
<!ENTITY unc "unclassified">
Однаконе удается выполнить синтаксический анализ на этапе обнаружения схемы ...
root
|-- _corrupt_record: string (nullable = true)
Причиной, по-видимому, являются определяемые пользователем объекты: когда я их избегаю (например, &unc;
), все снова работает.
root
|-- ent_seq: string (nullable = true)
|-- r_ele: struct (nullable = true)
| |-- reb: string (nullable = true)
|-- sense: array (nullable = true)
| |-- element: struct (containsNull = true)
| | |-- gloss: struct (nullable = true)
| | | |-- _VALUE: string (nullable = true)
| | | |-- _g_type: string (nullable = true)
| | | |-- _lang: string (nullable = true)
| | |-- pos: string (nullable = true)
Как мне решить эту проблему?