-
Data: 2009-11-29 16:46:49
Temat: Biblia jako XML, reprezentacja danych
Od: "Wojciech \"Spook\" Sura" <s...@s...please.op.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Witam!
Chciałbym przechować Pismo Święte w postaci pliku XML z podziałem na księgi,
rozdziały i wersety. W Internecie udało mi się znaleźć tylko jedno miejsce z
którego da się ściągnąć Biblię w tej postaci, ale wynikł pewien problem w
reprezentacji danych.
Otóż na samym początku, w księdze Genesis mamy następujący fragment:
[Cytuję]
(...)
<werset numer="4">Oto są dzieje początków po stworzeniu nieba i
ziemi.</werset>
<header_2>Drugi opis stworzenia człowieka</header_2>
Gdy Pan Bóg uczynił ziemię i niebo,
<werset numer="5">nie było jeszcze żadnego krzewu polnego na ziemi, ani
żadna trawa polna jeszcze nie wzeszła - bo Pan Bóg nie zsyłał deszczu na
ziemię i nie było człowieka, który by uprawiał ziemię</werset>
(...)
[/Cytuję]
I dalej mamy już normalnie. Zapytam pewnie jakiegoś biblistę, ale wygląda na
to, że werset czwarty jest przedzielony na dwa kawałki nagłówkiem drugiego
stopnia. Jestem też przekonany, że nie jest to jedyne miejsce takiej
postaci, a co gorsza będę musiał narzeźbić jakiś parser do poprawienia tego
błędu, bo cały tekst ma przeszło 190000 linijek i ręczne poprawki nie
wchodzą w grę.
No i tu mam zagwózdkę, bo nie wiem, jak to teraz ubrać w poprawnego XMLa.
Powyższy kod jest oczywiście nieprawidłowy, bo - przynajmniej za mojej
pamięci - gałąź może zawierać albo tekst albo podgałęzie, nigdy na raz. Mam
kilka pomysłów, ale nie jestem zadowolony z żadnego rozwiązania:
a) Ubrać urwany kawałek w znaczniki <werset> i nadać mu ten sam numer, jak
werset poprzedzający nagłówek. Wtedy jednak powstaje pewna
niejednoznaczność - co mam pokazać, jeśli użytkownik zażyczy sobie
przeczytać właśnie ten werset?
b) Podobnie, jak powyżej, ale dodać do znacznika jakiś parametr informujący
o tym, że jest to kontynucja urwanego wersetu, coś pokroju <werset
rodzaj="cd">. Tyle tylko, że wtedy będę musiał przygotować jakiś dodatkowy
mechanizm analizujący to, co jest za danym wersetem, bo może się okazać, że
werset jest połamany na kawałki, jak powyżej.
c) Zrezygnować z oznaczania wersetów znacznikami, natomiast wprowadzić
własne formatowanie wewnątrz rozdziału - przykładowo przyjąć, że @(1)
oznacza, że jest to początek pierwszego wersetu. Niby wygodne do
oprogramowania i przetworzenia, ale wydaje mi się, że jest to hackerskie
rozwiązanie, z którym będę miał później same problemy.
Rozwiązaniem byłoby oczywiście usunięcie znacznika nagłówka drugiego
poziomu, ale w ten sposób pozbywam się treści, co oczywiście jest
nieakceptowalne.
Czy macie może jakiś lepszy pomysł?
Pozdrawiam -- Spook.
--
! ._______. Warning: Lucida Console sig! //) !
! || spk || www.spook.freshsite.pl / _ """*!
! ||_____|| spook at op.pl / ' | ""!
! | ___ | tlen: spoko_ws gg:1290136 /. __/"\ '!
! |_|[]_|_| May the SOURCE be with you! \/) \ !
Następne wpisy z tego wątku
- 29.11.09 17:11 Jacek Czerwinski
- 29.11.09 18:19 Jędrzej Dudkiewicz
- 03.12.09 18:43 MinkoSoft
- 04.12.09 14:13 MoonWolf
- 05.01.10 22:19 Wojciech \"Spook\" Sura
- 05.01.10 23:14 Borneq
- 06.01.10 07:16 Wojciech \"Spook\" Sura
- 16.11.15 11:58 k...@g...com
- 28.02.17 23:07 s...@g...com
- 01.03.17 21:40 t...@g...com
- 06.04.17 22:24 m...@g...com
- 24.04.18 15:23 m...@g...com
- 26.04.18 01:34 M.M.
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-02-06 PROGRAM DOPŁAT DO AUT ELEKTRYCZNYCH TO ABSURD. ZA ŚRODKI Z KPO KUPIMY NIEMIECKIE I CHIŃSKIE AUTA
- 2025-02-05 ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-05 Re: ceny OC
- 2025-02-07 Smar do video
- 2025-02-06 Litowe baterie AA Li/FeS2 a alkaliczne
- 2025-02-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-07 Warszawa => System Architect (Java background) <=
- 2025-02-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-07 Warszawa => Solution Architect (Java background) <=
- 2025-02-07 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-02-07 Lublin => Programista Delphi <=
- 2025-02-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-07 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-07 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo