eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingBiblia jako XML, reprezentacja danychBiblia jako XML, reprezentacja danych
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
    From: "Wojciech \"Spook\" Sura" <s...@s...please.op.pl>
    Newsgroups: pl.comp.programming
    Subject: Biblia jako XML, reprezentacja danych
    Date: Sun, 29 Nov 2009 17:46:49 +0100
    Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
    Lines: 63
    Message-ID: <heu8ha$94r$1@inews.gazeta.pl>
    NNTP-Posting-Host: chello089077193124.chello.pl
    Mime-Version: 1.0
    Content-Type: text/plain; format=flowed; charset="utf-8"; reply-type=original
    Content-Transfer-Encoding: 8bit
    X-Trace: inews.gazeta.pl 1259513194 9371 89.77.193.124 (29 Nov 2009 16:46:34 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Sun, 29 Nov 2009 16:46:34 +0000 (UTC)
    X-Antivirus-Status: Clean
    X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18005
    X-Priority: 3
    X-Newsreader: Microsoft Windows Mail 6.0.6002.18005
    X-User: spoko_ws
    X-Antivirus: avast! (VPS 091129-0, 2009-11-29), Outbound message
    X-MSMail-Priority: Normal
    Xref: news-archive.icm.edu.pl pl.comp.programming:184189
    [ ukryj 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! \/) \ !

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: