Specifikacija
formata za izmenjavo metapodatkovnih opisov po standardu CEN/TC 287
3.2 Težave s
šumniki in drugimi tujimi znaki
4. SPECIFIKACIJE FORMATA ZA IZMENJAVO
METAPODATKOV
4.2.1 VSEBINA SKLOPA JE TEKSTOVNA
4.2.2 VSEBINA SKLOPA JE POVEZAVA NA
ZUNANJE DATOTEKE
4.2.3 VSEBINA SKLOPA SO PODSKLOPI
4.2.4 SKLOPI KARDINALNOSTI 1:N
4.3.1 IZVOZ VEČ METAPODATKOVNIH OPISOV
4.3.2 IZVOZ POSAMEZNEGA METAPODATKOVNEGA
OPISA
4.3.3 VKLJUČITEV OBJEKTNEGA TIPA
4.3.3.1 VKLJUČITEV ATRIBUTNEGA TIPA
4.3.3.2 VKLJUČITEV ASOCIACIJSKEGA TIPA
4.3.5 ORGANIZACIJA IN VLOGA ORGANIZACIJE
4.3.6 KONTAKTNA OSEBA IN VLOGA KONTAKTNE
OSEBE
5. VKLJUČITEV SLIK IN FORMATIRANEGA
BESEDILA
6. MOŽNOSTI ZA NADALJNO NADGRADNJO
6.1 HTML
VSEBINA KOT DEL XML STRUKTURE
6.3 MOŽNOSTI
ZA PRENOS BINARNIH PODATKOV
6.4 MOŽNOSTI
ZA PRENOS ŠIFRANTOV
7. PRILOGA: PRIMER VSEBINE
IZMENJEVALNEGA FORMATA
Specifikacija formata za
izmenjavo metapodatkovnih opisov po standardu CEN/TC 287 je nastala zaradi potreb po dograditvi obstoječega
metapodatkovnega sistema. Ta sistem vključuje:
·
specifikacijo standarda za
pripravo metapodatkovnih opisov prostorskih podatkov, katere osnova je standard CEN/TC
287, ki je delno prilagojen (zato dodatek »implementacija CEN/TC 287),
·
programska rešitev za pripravo
in pregledovanje opisov MPedit,
·
Centralna evidenca prostorskih podatkov (CEPP), ki je uvedena in objavljena na internet strežniku Geodetske uprave RS,
·
orodja za administracijo CEPP.
Standardni izmenjevalni format za izmenjavo metapodatkovnih opisov je naslednji korak pri razvoju in uveljavljanju metapodatkovnega standarda in naj bi omogočil predvsem večjo odprtost metapodatkovnega sistema. Tako bo omogočena:
·
enostavnejša izmenjava
metapodatkovnih opisov v okviru metapodatkovnega sistema,
·
enostavnejša izmenjava
metapodatkovnih opisov med različnimi sistemi za vodenje metapodatkov,
·
samostojna izgradnja in
nadgradnja lastnega metapodatkovnega sistema na strani upravljalca podatkov na osnovi
metapodatkovnih opisov po standardu itd.
Standardni izmenjevalni
format metapodatkovnih opisov temelji na XML standardu, ki je univerzalni format namenjen
za opis strukturiranih dokumentov in podatkov na internet omrežju.
V nadaljevanju je najprej
na kratko predstavljen XML, nato je opisana specifikacija formata za izmenjavo
metapodatkovnih opisov. V prilogi je prikazan primer podatkov metapodatkovnega opisa v
standardni izmenjevalni datoteki.
Aktualna verzija XML je
1.0.
XML standard ima
naslednje značinosti (vir: http://www.w3.org/XML/1999/XML-in-10-points):
·
metoda za vključitev podatkov v
tekstovno (ASCII) datoteko,
·
je na pogled podoben HTML
zapisu, vendar to ni HTML zapis,
·
je tekstoven zapis, vendar
njegov namen ni, da bi ga uporabniki brali direktno,
·
postaja družina tehnoloških
rešitev, ki pokrivajo različna področja,
·
je relativno nov, razvijati se
je začel leta 1996, prva uradna specifikacija pa je bila izdana leta 1998 v okviru
konzorcija W3C (Wordl Wide Web Consortium)
·
je prosto dostopen brez posebnih
licenčnih pogojev in je neodvisen od platforme.
Poenostavljeno povedano
je XML nastal kot poenostavitev preveč zapletenega SGML za bodočo uporabo namesto povsem
zaprtega HTML. Rezultat je enostavna in razširljiva struktura, ki nima predpisane
vsebine.
Za razumevanje XML je
potrebno poznavati osnove ML (markup language). XML je občutljiv na velikost znakov.
Parsanje vseh XML elementov poteka "dobesedno", kar velja tudi za vse
"white space" elemente. Vsebina XML datoteke je ločena na sklope s ti. TAGi.
Obstajata dve vrsti TAGov.:
1. TAGi z vsebino, ki zahtevajo svoj začetek in konec.
Med začetkom in koncem se nahaja tekstovna vsebina:
<tag>***vsebina***</tag>
2. prazni TAGi, ki ne zahtevajo zaključka in nimajo
vsebine:
<empty_tag/>
TAGi imajo lahko še
poljubno število atributov, ki v določenih primerih predstavljajo vsebino:
<attributes first="nekaj1"
second="nekaj2"/>
Komentar v XML se začne
z <!-- in konča z -->. Komentar nima nobene vsebinske vrednosti
na vsebino XML datoteke. V specifikacijah bo komentar na več mestih opisoval pomembna in
težje razumljiva mesta.
Formatiranje vsebine XML
datoteke za prikaz na zaslonu, izpis na tiskalniku, izgovorjavo itd. je omogočeno z XSL
(extensible stilesheet language).
XML je uporabljen kot osnova za specifikacijo standardnega
izmenjevalnega formata metapodatkovnih opisov zato, ker:
·
ima zelo enostavno in zelo
razširljivo strukturo,
·
predstavlja standard, ki
omogoča prenos poljubne strukture podatkov in povezav med podatki,
·
omogoča vedno boljšo podprtost
v množičnih SW izdelkih (Internet Explorer 4-5, Netscape Navigator) - to pomeni, da se z
ustreznim formatiranjem, brez spreminjanja vsebine XML, lahko prikaže kot običajen
dokument,
·
obstaja veliko dosegljivih
parserjev,
·
je tekstovna datoteka, ki je
kljub temu, da to ni njen osnovni namen, lahko lepo berljiva tudi za človeka.
Specifikacije XML so prosto dostopne na http://www.w3.org/TR/REC-xml, http://www.w3.org/XML/
in http://www.w3.org/Style/.
C knjižnica LibWWW, ki vključuje tudi parser za XML je
prosto dostopna na http://www.w3.org/Library/.
Dokumentacija XML parserja, ki je vdelan v IE4-5, pa je dosegljiva na http://msdn.microsoft.com/xml/c-frame.htm
- /xml/default.asp.
Kot vsebina podatkov so
dovoljena tudi besedila formatirana s HTML TAGi. Ker se običajni HTML ne pokorava v
celoti vsem XML predpisom se mora to besedilo v XML vedno prenesti kot CDATA sekcija. To
pomeni, da se vsebina te sekcije ne interpretira, kot MARKUP.
CDATA sekcija se zapiše
takole:
<![CDATA vsebina
]]>
Zaradi predpisanega
zaključka CDATA sekcije kot vsebina TAGov ni dovoljena kombinacija znakov ]]> oz., se
tretira kot napaka v datoteki.
primer:
pravilno:
<tag1><![CDATA[<a
name="sidrisce">to se ne interpretira kot HTML]]></tag1>
narobe tudi sintaktično:
<tag1><a
name="sidrisce">to se ne interpretira kot HTML</tag1>
Možnosti nadgradnje oz.
posodobitve, so opisane na koncu dokumenta.
Zaradi uporabe kodne
tabele 1250 v Windows okolju in dovoljenja XML standarda za uporabo različnih kodiranj,
naj se uporablja sledeče kodiranje:
<?xml
version="1.0" encoding="Windows-1250"?>
Možnosti nadgradnje oz. posodobitve, so opisane na koncu
dokumenta.
Čeprav izvozna datoteka
ni namenjena ročni obdelavi in pregledovanju, naj bo struktura kljub temu berljiva tudi na pogled. Vsa imena TAGov naj zato
odsevajo sklop metapodatkov, ki ga opisujejo. Zaradi omejitev XML naj se vsa imena TAGov
začnejo s črko »p«, nadaljujejo pa z oštevilčenjem sklopa. Primeri:
·
sklop 1.1
naslov
<p1.1></p1.1>
·
sklop 3.5
logična usklajenost <p3.5></p3.5>
·
itd.
Vsakič, ko je vsebina TAGa tekstovna ali XHTML, naj se jo
izpiše v eno vrstico z njenim začetnim in zaključnim TAGom vred.
Primer:
·
<p2.7>Projekt izdelave DMR
Slovenije, Geodetska uprava Republike Slovenije<br/><br/><a
href="http://www.sigov.si/cgi-bin/spl/gu/gurs.html"
target="_blank">Za dodatno literaturo si poglejte nase spletne
strani</a></p2.7>
Za potrebe izvoza
metapodatkov mora XML datoteka podpirati sledeče tipe podatkov:
·
vsebina sklopa je tekstovna,
lahko tudi HTML formatirana,
·
vsebina sklopa je povezava na
zunanje datoteke,
·
vsebina sklopa so podsklopi,
·
obstajajo sklopi kardinalnosti
1:n.
Večina vsebine sklopov
je enostavne tekstovne narave. Vsebina je lahko tudi sintaktično pravilen XHTML odsek. V
vseh takih primerih naj se uporablja sledeč XML zapis:
<tag>tekstovna
vsebina</tag>
primeri:
·
<p1.1>DIGITALNI MODEL
RELIEFA</p1.1>
·
<p8.1.1>MOP, Geodetska
uprava Republike Slovenije</p8.1.1>
·
<p2.7>Projekt izdelave DMR
Slovenije, Geodetska uprava Republike Slovenije<br/><br/><a
href="http://www.sigov.si/cgi-bin/spl/gu/gurs.html"
target="_blank">Za dodatno literaturo si poglejte na#e spletne
strani</a></p2.7>
·
itd.
Kjer podatek pomeni le
datum, ali število, naj se uporablja sledeč format zapisa:
·
datum dd.mm.yyyy
·
število xxxxx.xxx
Sklopi, katerih vsebina
je le povezava na zunanjo datoteko, se opisujejo s praznimi TAGi in atributom, ki vsebuje
"naslov" datoteke:
<tag
src="naslov.dat"/>
primer:
·
<p2.8
src="2_8.jpg"/>
Za lažjo berljivost naj
se tako vsebino zapiše na sledeč način:
<sklop>
<podsklop1><![CDATA[vsebina
podsklopa ]]></podsklop1>
<podsklop1><![CDATA[ vsebina podsklopa
]]></podsklop1>
...
<sklop>
primeri:
·
<p5.2.1><!-- mejna XY
-->
<p5.2.1.1><![CDATA[15000]]></p5.2.1.1>
<p5.2.1.1><![CDATA[365000]]></p5.2.1.1>