XML i odnośniki do stron...proste :/

Ciotka prowadzi kronikę rodziny w formie…papierowej :slight_smile:

Pyta się mnie czy mogę to jakoś zrobić w komputerze, “jakiś program”, tak żeby każdemu to wysłać i każdy mógł sobie oglądać, dodatkowo, żeby ona mogła w prosty sposób dopisać kogoś, skorygować dane itd.

Skoro ma być proste, działać u wszystkich to od razu odrzuciłem robienie jakiś programów, instalacji, aktualizacji i pomyślałem o najprostszym sposobie — czyli “stacjonarnej” stronie WWW. Inaczej, takiej “niby aplikacji” która jest uruchamiana i odtwarzana w przeglądarce www. Otwieranej lokalnie ale bez potrzeby instalowania dodatkowych serwerów PHP czy baz MySQL.

Gdybym zrobił normalną stronę HTML to w sytuacji aktualizacji albo dodawania nowego ‘obiektu’ odnalezienie się w tych nic nie mówiących znacznikach mogłoby być dla ciotki uciążliwe.

Pomyślałem, że ‘zaszaleję’ i skorzystam z cudów technologii :wink: i użyję XML, gdzie znaczniki można nazwać w sposób … “przyjazny”, i tam gdzie będzie ciotka będzie wiedziała, że ma wpisać imię, tam gdzie wstawia lokalizację do obrazka, itd.

I teraz zbliżamy się do zagadnienia.

Jednym z pól dla pojedynczego obiektu “osoba” jest pole: dzieci, gdzie wpisane są imiona, po kliknięciu których za pomocą odnośnika przeskakujemy do kolejnej strony “osoba”, która znowu może mieć pole dzieci lub może mieć pole dzieci puste.

Przejrzałem jedną opasłą książkę o XML ale nie znalazłem tam żadnego jednego prostego przykładu, na wstawienie znacznika z odnośnikiem tak jak wstawia się znacznik w HTML ?! Czyli jakiś tekst (dowolny) pod którym znajduje się jakiś adres http://…

Przejrzenie kilku stron typu “Nauka XML”,“jak zbudowany jest XML” itd. … I NIC O TYM ZAGADNIENIU !? :confused:

Albo to jest takie proste (jak się wydaje, że powinno być) i dlatego nikt o tym nie pisze albo…jest tak przesadnie skomplikowane :|, że piszą dopiero o tym na jakiś “wyższych poziomach wtajemniczenia w XML” ??

I tu dochodzimy do mojej prośby…pytania…Czy ktoś potrafi mi odpowiedzieć jak w XML umieszczać znaczniki, które są odnośnikami i po ich kliknięciu otwiera się wskazana strona (tak jak to opisałem wyżej), a druga kwestia (z którą czuję, też pojawią się wydumane problemy) jak wstawić znaczniki, które są odnośnikami do obrazków ?

Jeśli chcesz z XML budować HTML bez pośrednictwa serwera, to jest do dosyć skomplikowane (przynajmniej dla początkujących) i problematyczne ogólnie. Generalnie, więcej na tym stracisz niż zyskasz.

http://pl.wikipedia.org/wiki/XSLT

http://en.wikipedia.org/wiki/XSLT

Radziłbym ci raczej skorzystać z jakiegoś CMS-a, jeśli nie chcesz pisać własnej aplikacji webowej/desktopowej. Ciotka się połapie, bo może wypełniać zwyczajny formularz w przeglądarce. W przypadku takiego projektu można się obyć i bez własnej domeny, zaś cena za hosting nie musi przekraczać nawet 50 zł rocznie (w ostateczności zostają i darmowe opcje).

http://drupal.org/

Inna opcja (też z wykorzystaniem jakiegoś CMS-a), to XML-RPC (popularne powinny to wspierać). Wtedy masz do dyspozycji różnego rodzaju desktopowe aplikacje-edytory, np. Windows Live Writer.

http://en.wikipedia.org/wiki/XML-RPC

http://wordpress.org/ + http://codex.wordpress.org/Weblog_Client

Hosting ? Ale ja nie chcę żeby to było dostępne na jakimś zewnętrznym serwerze itd.

Jeśli chodzi o samą wizualizację danych z XML to wystarczy mi to co daje CSS, chodzi mi tylko teraz o kwestię odnośników. Naprawdę “działania odnośników” nie da się ‘wywołać’ bez użycia XSLT ?

CSS z zasady nie daje możliwości wizualizacji danych z XML, więc nie wiem co chcesz osiągnąć. Nie wiem też, w jaki sposób chcesz udostępniać innym dane, jeśli nie za pośrednictwem Internetu (w ogólności).

Jeśli chcesz, aby XML był w jakimś tam sensie interaktywny w przeglądarce, to musisz go przerobić na warstwę prezentacji (XML to tylko surowe dane). Można to zrobić na wiele sposobów, bo XML jest uniwersalny, ale wnioskując po twoich wypowiedziach – bez urazy – nie ma sensu pakować się w coś bardziej skomplikowanego…

“CSS z zasady nie daje możliwości wizualizacji danych z XML, więc nie wiem co chcesz osiągnąć.”

To jeszcze raz.

Mówiąc “wizualizacja” danych mam na myśli po prostu, żeby w przeglądarce (po kliknieciu w plik .xml) nie wyświetlało się drzewko z rozpisanymi elementami tylko zawartość poszczególnych elementów odpowiednio sformatowana/wyświetlona, czyli to o czym jest mowa np. tutaj http://webmaster.helion.pl/starocie/xml/css.htm

“Nie wiem też, w jaki sposób chcesz udostępniać innym dane, jeśli nie za pośrednictwem Internetu (w ogólności).”

To wracając do podstaw :wink:

“[…] pomyślałem o najprostszym sposobie — czyli “stacjonarnej” stronie WWW. Inaczej, takiej “niby aplikacji” która jest uruchamiana i odtwarzana w przeglądarce www. Otwieranej lokalnie ale bez potrzeby instalowania dodatkowych serwerów PHP czy baz MySQL.”

Inaczej, tak jak kiedyś za “starych czasów” kiedy płyty od CHIP’ów to były takie strony WWW tyle, że nagrane na płycie. Odpalałeś i uruchamiała się przeglądarka www i przeglądałeś płytę tak jakbyś przeglądał strony — zupełnie bez udziału/podłączenia do Internetu.

?:>

I wrócę na wszelki wypadek znowu (żebyśmy nie zabrnęli w zbyt ogólnikową rozmowę filozoficzną) do mojego prostego pytania — W jaki sposób w pliku XML wstawić element, który jest odnośnikiem z nazwą inną niż sama ścieżka odnośnika, innymi słowy element który by spełnił funkcję znacznika .

Jeszcze inaczej — czy można to zapisać w taki sposób:

nazwa odnośnika

tzn. sprawdziłem i tak nie działa :slight_smile: ale czy w jakiś inny podobny prosty sposób.

Czy jednak rzeczywiście — tak jak pisałeś — nie da się tej prostej sprawy zapisać w tak prosty sposób i trzeba sięgać do czegoś więcej: XSLT, serwery, parsery…Biblia ;), to rzeczywiście szkoda nad z tak błahą rzeczą tak się ścierać…i może po prostu zrobić Word’a z odsyłaczami do nagłówków.