71
VISOKA POSLOVNA ŠKOLA STRUKOVNIH STUDIJA BLACE DIPLOMSKI RAD TEMA: DIZAJN INFORMACIONIH SISTEMA BAZIRAN NA XML-U Student: Profesor:

XML informacionih sistema.doc

Embed Size (px)

Citation preview

Page 1: XML informacionih sistema.doc

VISOKA POSLOVNA ŠKOLA STRUKOVNIH STUDIJA

BLACE

DIPLOMSKI RAD

TEMA: DIZAJN INFORMACIONIH SISTEMA

BAZIRAN NA XML-U

Student: Profesor:

ĐORĐEVIĆ MILOŠ Prof. ZORAN JOVANOVIĆ

Oktobar 2014, Blace

Page 2: XML informacionih sistema.doc

SADRŽAJ

UVOD...............................................................................................................................3I DIZAJN........................................................................................................................8III INFORMACIONI SISTEM......................................................................................9III ŠTA JE XML?...........................................................................................................10

3.1. Pregled XML-a i njegovih osobina...............................................................11IV KRATKA ISTORIJA MARKIRANJA..................................................................14V NAMENA XML-a...........................................................................................15

5.1. Prednosti............................................................................................ 165.2. Nedostaci........................................................................................... 16

VI FUNKCIONALNOST XML-a...................................................................................176.1. Sintaksa..........................................................................................................................18VII DELOVI XML-a.....................................................................................................197.1. Gde se XML koristi i gde se još može koristiti?......................................................20VIII ŠTA JE WORLD WIDE WEB CONSORTUM..................................................22IX KRATAK PREGLED METODOLOGIJE...........................................................23X RAZVOJ SPECIFIKACIJA SOFTVERA KORISCENJEM II*S CASE..........2610.1. Konceptualni dizajn karakteristika IS...................................................................2710.2. Implementacija dizajna IS karakteristika............................................................29XI XML SPECIFIKACIJE KORISNIČKOG INTEFEJSA....................................3011.1 Inicijalne XML specifikacije informacionog sistema.........................................3411.1.1. Inicijalne XML specifikacije aplikacije (IXSA)..............................................3411.1.2.Inicajlne XML specifikacije programa..............................................................3511.2 Dizajn finalnih XML specifikacija.........................................................................37XII GENERISANJE PROTOTIPOVA APLIKACIJA............................................40ZAKLJIČAK.................................................................................................................45LITERATURA..............................................................................................................47

2

Page 3: XML informacionih sistema.doc

UVOD

Ovaj rad prikazuje metodologiju za dizajniranje informacionih sistema baziranih

na XML-u. Metodologija koristiti XML definicije tipa dokumenta (DTD - Document

Type Definition) da definiše standarde dizajna, strukturu i ograničenja specifikacija

dizajna. Rezultat dizajniranja je skup validnih XML dokumenata koji predstavljaju

specifikacije transakcionih programa i aplikacija informacionog sistema. Na početku

dizajniranja, metodologija koristi CASE alat da prikaže zahteve korisnika u inicijalne

XML specifikacije. Krajnje specifikacije dizajniranja su izvedene pomoću niza XSL

(eXtensible Style sheet Language) transformacija početnih XML specifikacija.

Ključna osobina metodologije je ta da ona stvara dizajn nezavisan od platforme

informacionog sistema. Metodologija koristi unapređene XSL transformacije koje

stvaraju izvršni prototip informacionog sistema u Java programskom okruženju, da

omogući povratnu reakciju korisnika.

Dizajniranje šeme baze podataka i odgovarajućih aplikacija baze je važan zadatak

u razvoju informacionih sistema (IS). Kvalitet njihovih specifikacija dizajna ima veliki

uticaj na celokupnu vrednost  ravoja i korišćenja performansi informacionih

sistema. Razvoj samostalnih aplikacija znatno povećava vrednost razvoja IS. Odnosno,

svaka aplikacija koja se sastoji od nekoliko transakcionih programa, i razvijenih

transakcionih programa je zadatak za koji je potrebno mnogo vremena, obično od strane

velikog broja dizajnera i programera.

Problemi velike cene razvoja i dugog vremena izrade IS su rešeni, ili bar

umanjeni primenom odgovarajućeg CASE alata. Taj CASE alat je zamišljen tako da

podrži automatsko dizajniranje šema baze podataka, i definisanje i generisanje prototipa

aplikacije. Postoje komercijalni CASE alati koji su dostupni na tržištu i delimično ili

potpuno podržavaju dizajniranje i generisanje aplikacija.

Takođe, na tržištu su na raspolaganju zajedničke metodologije za razvoj softvera

koje su objedinjene upotrebom specifičnih CASE alata. Primeri su Oracle Custom

Development Method (CDM) sa Oracle Project Management Method (PJM), i Rational

3

Page 4: XML informacionih sistema.doc

Unified Process (RUP), koji su bazirani na korišćenju UML-u (Unified Modeling

Language). Ove metodologije definišu brojne apstraktne koncepte, tipove specifikacija, i

procedure koje mogu biti primenjene u razvoju softvera. Struktura i sadržaj ovih

specifikacija su obično dobro definisane, ali postoji potreba za pridržavanjem pojedinih

formata dokumenata, kao što je MS Word DOC format, ili određeni nosilac strukture

CASE alata, koji je zamišljen da se koristi u procesu razvoja softvera. Zbog toga je

mogućnost razmene tako struktuiranih specifikacija između različitih nosilaca, ili

proširenje njihovih definicija, veoma ograničeno.

Sa druge tačke gledišta istog problema je taj da današnji CASE alati veoma često

podržavaju generisanje softverskih rešenja koja potpuno zavise od vremena obrade u

okruženju. Drugim rečima :

- Struktura specifikacija transakcionih programa i aplikacija je tesno povezana sa

nosiocem strukture i generatorom koda,  i

- Generator koda je tesno povezan sa određenim run-time okruženjem.

Prema tome, izbor specifičnog run-time okruženja veoma utiče od izbora CASE

alata i obrnuto. Ova međusobna veza može da ima negativne posledice, naročito kada je

primenjen reinženjering IS, ili ako je neophodan prenos na novu softversku platformu.

Ako, na primer, postoji potreba da se prenesu IS aplikacije na novu softversku platformu,

koja je bazirana na potpuno novim IT konceptima, run-time okruženja će se promeniti.

Sa velikom sigurnošću možemo pretpostaviti da trenutni CASE alat neće podržati

novu platformu. Prema tome, mora biti zamenjen sa drugim koji odgovara novoj

platformi. Međutim, promena CASE-a će prouzrokovati kompleksan problem

transformisanja i restruktuiranja IS specifikacija koje moraju biti isporučene od starog

nosioca i uvezene u novi. Dakle, to može da poveća ukupne troškove i vreme razvoja

projekta.

Glavni cilj dokumenta je da prezentuje metodologiju za dizajniranje specifikacija

transakcionih programa i aplikacija IS koje su nezavisne od vremena obrade u okruženju.

4

Page 5: XML informacionih sistema.doc

Da bi postigli taj cilj, moramo: 

1. Definisati početne specifikacije transakcionih programa i aplikacija koristeći

CASE alat, na početku metodologije. Ove specifikacije su formalne od kada su

kreirane i koriste notaciju sa preciznom sintaksom i značenjem.

2. Izraziti inicijalne specifikacije kao XML dokumente. Ovi XML dokumenti, koji

se nazivaju XML specifikacije, su važeći u smislu DTD-a koji definišu strukturu

i ograničenja specifikacija softvera.

3. Primeniti redosled XSL transformacija na početne XML specifikacije da bi se

izradile krajnje XML specifikacije.

Korišćenje XML-a da se izraze početne i završne specifikacije čini ih nezavisnim

od oba nosioca izabranog CASE alata i run-time okruženja. Na taj način, rukovodioci

projekta će imati više slobode u donošenju odluka koje se tiču izbora run-time okruženja i

CASE alata.

U dizajniranju specifikacija transakcionih programa, koristimo zajednički model

korisničkog interfejsa (User Interfase - UI), i izražavamo specifikacije validnog XML

dokumenta. Zajednički UI model omogućava izradu softvera sa jedinstvenom logikom i

funkcionalnošću. Dakle, predstavljanje i opisivanje ovog zajedničkog UI modela, je još

jedan cilj ovog rada.

Konačno, takođe koristimo XML specifikacije za automatsko generisanje izvršnih

prototipa transakcionih programa i aplikacija. Krajnji cilj ovog rada je opisivanje procesa

generisanja prototipa koji je baziran na korišćenju XSL transformacija i Java

programskog okruženja.

Uvodimo koncept XML specifikacija IS koje su nezavisne i od CASE alata i od

run - time okruženja, i diskutujemo o ulogama ZML -a i UML - a u realizaciji

standardnih modela informacija u sledećim paragrafima.

Z jezička specifikacija je propisan jezik baziran na ISO Z Standardu (2002).

Uglavnom, može biti korišćen kao standard jezika za formalno određivanje transakcionih

5

Page 6: XML informacionih sistema.doc

programa i aplikacija. Tamo je XML predstavljanje Z jezika nazvano ZML. Prednosi

korišćenja ZML - a su sledeće:

1) Pojedine alate nema potrebe rastaviti direktno na Z. To može biti urađeno sa jednim

alatom, i rezultate mogu koristiti mnogi drugi alati.

2) Postoji mnogo razmatranja i alata za transformaciju XML -a, kao što je XSLT

(eXtensible Style sheet Language Transformation) jezik preko kojeg se lako transformišu

XML fajlovi u druge formate. Međutim, postojanje Z jezika je previše uopštena

specifikacija koja može biti naknadno izmenjena za svrhu dizajna IS na dva načina:

- Može biti proširena specifičnim apstraktnim pojmovima, namenjenim za određivanje

transakcionih programa i aplikacija na više deklarativan način, i

- Dizajn takvih Z baziranih specifikacija može biti podržan od strane vizuelno

orjentisanog alata, u pogledu činjenice da je teško očekivati da projektant IS bude u

mogućnosti da razume i koristi matematički orjentisana sintaksna pravila Z jezika.

U prethodnim godinama, pokušaji da se definišu standardne specifikacije tehnika

prožimaju se kroz UML (Unified Modeling Language) objektno - orjentisanu

specifikaciju jezika, objavljenu od strane Grupe za Objektno Upravljanje (Object

Management Group – OMG). Meta Object Facility (MOF) je takođe OMG standard, koji

se koristi kao univerzalan meta - metamodel da proizvoljno opiše metamodele, kao što je

sam UML. Da bi podržali razmenu konkretnog modela (tj. specifikaciju softvera) između

različitih nosilaca koji podržavaju UML i MOF, predstavljen je XML Metadata

Interchange (XMI) jezik. XMI je XML reprezentacija MOF - a. UML model može biti

transformisan u XML dokument koji potvrđuje XMI. U XMI - u se smatra " kao model

koji najviše obećava razmenu formata rešenja. To izvršava većinu zahteva koje poseduje

dobar model za razmenu." Ovo dozvoljava da se koristi XMI da zameni UML modele

kod UML CASE alata ili skladišta od razlličitih prodavača. Na ovaj način, izbor CASE

alata možda neće biti podjednako srodan sa izborom run - time okruženja.

Svrha Model Driven Architecture (MDA), objavljena od strane OMG - a je

automatska generacija programskog koda iz određenih UML modela. "Iako formalni 6

Page 7: XML informacionih sistema.doc

UML modeli, izričito koriste izvršni UML, često mogu biti pokazani kao MDA - ova

platforma - nezavisnih modela, glavna prepreka ovog pristupa je ta da su ovi modeli

previše opširni, zbog toga što je izvršni UML čuvan kolikogod je moguće tako da se

može koristiti za širok spektar različitih domena"1. Osim toga, autori izjavljuju da "

nazalost, standard UML metamodela je neadekvatan za izražavanje postojanosti između

dizajna modela i odgovarajućeg programskog koda. Ovo se dešava najčešće zbog toga što

UML metamodel sadrži potpun skup metoda kao što je specifična implementacija"2.

Otvoreno pitanje je kako dizajnirati i odrediti zajednički UI model, koji će biti

pogodan za primenu u svim softverskim aplikacijama IS. Jedna od željenih osobina

takvog zajedničkog modela je nezavisnost. Nezavisnost ovde označava činjenicu da UI

model može biti nezavisan od:

- Bilo kog run - time okruženja, i

-  Bilo kojih formalizama, notacija ili struktuiranih pravila koja se koriste u dizajnu IS

specifikacija.

Na ovaj način, u slučaju prebacivanja podataka trenutnih IS aplikacija na novu

softversku platformu, nezavisan UI model će ostati nepromenjen.

Markerski (označavajući ) jezici mogu takođe biti korišćeni za kreiranje UI.

Postoje dve prednosti, a to su deklatarivnost i proširivost. Proširivost označava činjenicu

da omogućavaju mehanizme da uvedu nove apstraktne koncepte na meta nivou. Prema

tome, mogu biti pogodni za dizajniranje zajedničkih UI modela, tj. da omoguće

apstraktne koncepte koji će napraviti nezavisne modele. Sposobnost da se omogući run -

time nezavisnost je bio razlog zašto je izabran XML da opiše zajednički UI.3

1

2

3 S. Allen, S.F. Gilani, J. H. Pedersen, R. Raghunathan, J. Reid, Od početka… C# baze podataka, 20037

Page 8: XML informacionih sistema.doc

I DIZAJN4

Dizajn je proces donošenja serije odluka koje imaju za cilj konstruisanje,

oblikovanje ili kreiranje nečega. Dizajn se obično odvija po unapred određenom planu,

ideji ili zamisli. Svrha dizajna je realizacija plana ili ideje koji mogu biti uzrokovani

potrebom da se reši određen problem. Zbog toga se proces dizajna često definiše i kao

proces rešavanja problema.

Kada se govori o dizajnu nekog proizvoda, predmeta ili objekta, obično se pod

dizajnom smatra aranžman ili konfiguracija pojedinačnih komponenti koji čine celinu

proizvoda, predmeta ili objekta.

Danas dizajn ne predstavlja specifičnu profesiju niti disciplinu jer je pojam preširok.

Postoje mnogobrojne discipline dizajna. Neke od njih su:

industrijski dizajn

interijer dizajn

grafički dizajn

modni dizajn

type dizajn

Razvojem tehnologije i shodno potrebama društva, nameću se nove oblasti dizajna

koje su tek u začetku razvoja kao što su:

web dizajn

interaktivni dizajn

informacioni dizajn .

4 Tekst je preuzet sa sajta http://sr.wikipedia.org/sr/Дизајн8

Page 9: XML informacionih sistema.doc

1.1. Dizajn informacionog sistema5

Dizajn informacionog sistema podrazumijeva logički i fizički dizajn. Prvi aspekt

podrazumeva način na koji se različite komponente informacionog sistema struktuiraju

u jednu logičku celinu. Detaljna specifikacija komponenata sistema odnosi se na

dizajn: outputa, inputa, procesa, baze podataka, procedura, sistema kontrole i zaštite.

Drugi aspekt je fizičko projektovanje kojim se određuju sve važne karakteristike

svakog od važnih parametara sistema: hardvera, softvera, jedne ili više baza podataka,

prenosa (komunikacije podataka), personala i procedura.

II INFORMACIONI SISTEM

Informacioni sistem (IS) je sistem u kome su elementi sistema povezani

informacijama, tj veze između elemenata sistema i veze sistema sa okruženjem ostvaruju

se razmenom informacija.

Brz razvoj informacionih tehnologija apsolutno je obeležio način funkcionisanja

svih tehničkih i društvenih sistema danas. Ozbiljni društveni a pre svega poslovni sistemi

ne mogu se zamisliti bez informacionih sistema koji omogućavaju brzu razmenu

informacija unutar sistema i sistema sa okolinom. Prednosti korišćenja informacionih

sistema su mnogostruke i ogledaju se pre svega u povećanju efikasnosti sistema i uštedi

ljudskih i materijalnih resursa.

Osnovu informacionog sistema čini baza podataka, jer ona predstavlja

fundamentalne, stabilne, sporo izmenljive karakteristike sistema, objekte u sistemu i

njihove međusobne veze. Zato se projekat IS mora bazirati na bazi podataka. Ako je baza

podataka dobar model stanja realnog sistema, ako programi za održavanje dobro

modeliraju dejstvo ulaza na stanje relanog sistema, onda će se bilo koja informacija

potrebna za upravljanje (izlazi), čak i one unapred ne predviđene, moći dobiti iz IS. Time

se dobrim delom zaobilazi ključni problem u konvencionalnom pristupu razvoju IS, 5 Tekst je preuzet sa http://www.javniregistar.net/vlada/odjeljenja/10/is.htm

9

Page 10: XML informacionih sistema.doc

specifikacija zahteva za informacijama, postupak projektovanja se ne bazira na tim

stalno promenljivim zahtevima, već na modeliranju fundamentalnih, stabilnih

karakteristika sistema.

Ako je informacioni sistem model relanog sistema u kome deluje, onda se

postupak projektovanja IS svodi na neku vrstu modeliranja relanog sistema, a za to su

nam neophodna neka intelektualna sredstva (alati) i to:

Model podataka kao intelektualno sredstvo za prikazivanje objekata sistema,

njihovih atributa i njihovih međusobnih veza (statičkih karakteristika sistema)

preko logičke strukture baze podataka.

Model procesa kao intelektualno sredstvo za opisivanje dinamike sistema, dejstva

ulaza na stanje sistema i izlazne transformacije, preko programa nad definisanim

modelom podataka.6

III Šta je XML?

Proširivi markerski jezik (Extensible Markup Language, XML) je najnoviji jezik za

komunikaciju na Internetu, koji u isto vreme predstavlja i visokosposobnu tehnologiju koja se

svakim danom sve više razvija i koja se koristi prevashodno za upravljanje, prikazivanje i

organizovanje podataka. Zajedno sa posebnim jezikom za prikazivanje (XSL-om) i objektnim

modelom dokumenta (DOM-om), on predstavlja nezamenljivu tehnologiju za svakoga ko

koristi markerske jezike za rad na mreži ili za interne potrebe.

XML je na prvom mestu tehnologija. Nakon toga dolazi definicija da je XML jezik

mada je XML manje jezik a više konvencija za kodiranje. XML je i skup srodnih

tehnologija i sam za sebe ne predstavlja nešto posebno već tek sa srodnim tehnologijama

daje pune rezultate. Srodne tehnologije su:

• DTD

6 M.Govedarica, I. Luković, P. Mogin, Generating XML Based Specifications of Information Systems,

ComSIS Vol. 1, No. 1, February 2004. str.32

10

Page 11: XML informacionih sistema.doc

• CSS

• XLS

• DOM

• ADO

• XLink

• XFragments

• XPointer

• ... itd.

U nekim od pomenutih tehnologija XML se ponaša kao klijent dok je za neke server a

može biti i jedno i drugo istovremeno.

Jedan od najvećih problema kada je u pitanju transfer informacija je njihov sadržaj u

logičkom smislu te reči. XML služi kao konterner za transfer jer u sebi pored informacije

ima i njenu poziciju u odnosu na ostale informacije – XML pored informacije opisuje i

strukturu.

3.1. Pregled XML-a i njegove osobine

XML je u svojoj osnovi informacija o informaciji. Više nije dovoljno imati samo

informaciju jer to u današnjim uslovima znači tražiti i pronaći istu već je potreban način

da opišemo informaciju a da taj opis informacije upotrebimo dalje za pronalaženje iste i

za njenu dalju obradu. Zamislite sledeću situaciju: potreban vam je tačan kurs DEM u

odnosu na USD. Možete otići na neki sajt i tamo pronaći tu informaciju ali to zahteva da

neka osoba to i uradi. Možda biste mogli i da napišete neki parser koji će sadržaj tog sajta

rasčlaniti i pronaći potrebnu informaciju ali zamislite šta vam je sve potrebno da znate da

napišete takav parser. Morate znati gde je i kako je ta informacija smeštena. Prilično

komplikovano a rezultati su i dalje diskutabilni.

Međutim kada biste imali informaciju koja opisuje informaciju stvari bi bile

mnogo lakše. Lako biste mogli da dođete do potrebne informacije – to bi mašina mogla

da uradi umesto vas a kad neko stalno nudi takve informacije kojima biste mogli da

pristupite lako onda je pojam web servisa lako razumljiv. Ideja se dalje razvija i dobijamo

11

Page 12: XML informacionih sistema.doc

internet kao mrežnu infrastrukturu tako da na kraju krajeva internet ili barem jedan

njegov segment će biti uskoro čisto poslovna mreža kojom će se razmenjivati samo

informacije u sirovom obliku. Uslov te razmene je da informacije na neki način budu

obeležene da bi se mogle identifikovati i koristiti a upravo to je ono što XML nudi.

XML je u osnovi tekst. Doduše nije formatiran tako da lepo izgleda a može biti i

komplikovan tako da ga to potencijalno diskvalifikuje za čitanje od strane ljudi. Kao

ilustarcija XML, ovako izgleda ADO rekordset (SELECT * FROM Customers) u XML-u

parsiran u Internet Exploreru:

Slika 1. ADO rekordset u XML-u

Za dalju diskusiju su nam potrebni primeri pa razmotrimo sledeći: <?xml version="1.0" ?>

12

Page 13: XML informacionih sistema.doc

<note>

<to>Pera</to>

<from>Mika</from>

<subject>pozdrav</subject>

<body>Puno pozdrava iz Beograda</body>

</note>

Ovako bi mogao da izgleda jedan običan i jednostavan XML fajl kada ga

posmatramo iz Notepada. Odmah je uočljivo da postoje neki tagovi (oznake) koje

uokviruju neki tekst. Upravo te oznake su ono što XML čini XML-om. One opisuju

sadržaj odnosno informaciju. Međutim postoji još nešto što ovaj primer možda ne

oslikava jasno – XML može da opiše svojom strukturom i strukturu informacija odnosno

njihov odnos u smislu hijerarhije. Dve veoma bitne stvari. Informacija o informaciji i

informacija o strukturi u jednom dokumentu je prilično lucidna stvar. To nam dopušta da

kada već imamo relacione baze podataka da sadržaj istih interpretiramo na način da to

bude lako upotrebljivo, brzo dostupno i, možda najbitnije, razmenljivo između aplikacija.

13

Page 14: XML informacionih sistema.doc

Slika 2. parsirani(sintaksna analiza) prethodni primer

IV KRATKA ISTORIJA MARKIRANJA

Šezdesetih godina XX veka, zbog problema sa velikom količinom različite

tehničke dokumentacije, u IBM-u se javlja ideja za stvaranjem prvog šire korišćenog

jezika za označavanje podataka. Tako nastaje GML (Generalized Markup Language),

koji su izumeli Čarls Goldfarb, Ed Mošer i Rej Lori (Charles Goldfarb, Ed Mosher, Ray

Lorie).

SGML (Standard Generalized Markup Language) je jezik baziran na tekstu, koji se

može koristiti za markiranje podataka - tačnije metapodataka, na način koji sam sebe

opisuje. Najpoznatija aplikacija SGML-a je hipertekstualni markerski jezik ili HTML

(HyperText Markup Language).

SGML je do te mere komplikovan jezik, da jednostavno nije prikladan za

razmenu podataka na mreži. Osim toga, iako se HTML pokazao kao vrlo uspešan,

njegove mogućnosti su ograničene: on služi samo za prikazivanje dokumenata na

pretraživaču. To znači da stvaranjem nekog HTML dokumenta koji prikazuje fiksne

informacije o nekoj osobi, ne možete postići ništa više od toga. Iz tog dokumenta se,

na primer, ne može saznati koji deo te informacije predstavlja ime, a koji prezime te

osobe (ako to samo po sebi nije jasno), jer HTML nema sredstva pomoću kojih bi

mogao da prikazuje takve specijalizovane informacije.

Proširivi markerski jezik ili XML (Extensible Markup Language) napravljen je

upravo sa ciljem da se prevazidu ovakvi problemi SGML-a i HTML-a.

XML predstavlja ciljno formirani podskup SGML-a (zadatak mu je markiranje svih

mogućih tipova podataka), čija je komplikovanost svedena na nužni minimum. XML

je napravljen tako da je potpuno kompatibilan sa SGML-om, što znači da svaki

dokument, napravljen korišćenjem XML-ove sintakse, po definiciji podleže i

pravilima SGML-ove sintakse i da mogu da ga čitaju postojeći SGML-ovi alati.

14

Page 15: XML informacionih sistema.doc

Međutim, ne mora svaki SGML-ov dokument obavezno da ima i status XML

dokumenta.

Iako se zvanično naziva jezikom, važno je uočiti da XML ustvari uopšte nije

„jezik", već standard za pravljenje jezika koji odgovaraju XML-ovim kriterijumima.

Drugim recima, XML opisuje sintaksu koju koristite da biste pravili sopstvene

programske jezike.

Pošto nad radom u XML-u imate potpunu kontrolu, podatke možete oblikovati onako

kako vi to želite, tj. tako da se uklope u kontekst konkretne aplikacije.

Odavde i potiče izraz proširivi u nazivu proširivi markerski jezik: svakome je data sloboda da,

koristeći ovaj jezik, po sopstvenoj želji markira podatke, bez obzira na to kako to rade drugi.

V NAMENA XML-a

Kao što je to već pomenuto XML je komplement HTML-u a ne njegova bolja

verzija. Zapravo XML samo liči na HTML jer koristi tagove kao i HTML ali je to

posledica toga što je i on jezik za obeležavanje. HTML je namenjen da prikazuje

dokument ali on nema jasnu granicu između sadržaja i forme. Sa XML-om je situacija

potpuno drugačija. Forma je izdvojena u poseban fajl (na primer .css – cascading style

sheets ako baš želite da formatirate fajl mada to nije prvenstvena ideja upotrebe XML-a)

a sadržaj je u posebnom fajlu i on je suština XML-a.

Koristi se da pruži podatke i njihov opis a sam prikaz često i ne postoji.

Jednostavno, XML služi kao format - spona između dve aplikacije koja od jedne prihvata

podatke i pruža je drugoj aplikaciji. U ovoj varijanti, prednost mu je što može koristiti

HTTP protokol. Međutim teško je dati odgovor tip: "XML se koristi za to i to... " jer su

mogućnosti primene praktično neograničene. Bolje je upoznati osobine XML-a i koristiti

ga tamo gde je to prikladno nego se ograničavati nekim stvarima koje su više ilustracija

primene nego pravilo.

15

Page 16: XML informacionih sistema.doc

5.1. Prednosti

XML je jednostavno čitljiv i čoveku i računaru. Pošto je XML dokument obično

tekstualna datoteka, čitljiva je na svakoj platformi koja može čitati tekstualne podatke.

Tako postaje neosetljiv na tehnološke promene – bez obzira na napredak tehnologije,

tekstualne podatke će još dugo svaki računar moći da pročita. etikete XML podržava

Unikod i omogućava prikaz teksta na svim poznatim jezicima.

Takođe, ovaj format je samodokumentujući: etikete opisuju sadržaj koji se nalazi unutar

njih. Ispravnost nastalog XML dokumenta vrlo je jednostavno kontrolisati, jer XML ima

stroga sintaksička pravila. Računarski programi za obradu dokumenata mogu jednostavno

da obrađuju XML sadržaj.

XML je međunarodno prihvaćen standard. Prihvatili su ga mnogi proizvođači

programa i koriste ga u svojim proizvodima. Kompatibilan je sa SGML-om, koji se

koristi od 1986. godine, a SGML može obrađivati veliki broj računarskih programa.

XML može da predstavlja najuopšteniju strukturu kompjuterske nauke: snimke, liste i

stabla, a njegova hijerarhijska struktura je prikladna za većinu (ali ne i za sve) tipove

dokumenata. Može se reći da je za XML najvažnije to što predstavlja jezik za

metaoznačavanje, što podrazumeva da on nema fiksan skup oznaka i elemenata. U imenu

XML-a slovo X potiče od reči Extensible (proširiv). To znači da se jezik može

prilagođavati i proširivati kako bi zadovoljio različite potrebe korisnika.

5.2. Nedostaci

Jedan od osnovnih nedostataka XML-a je redundantna i opširna sintaksa. Ona

može zbunjivati čoveka, a računarski program koji obrađuje dokument može delimično

usporiti. Ovi računarski programi su veoma složeni jer moraju da obrađuju velike

količine ugnežđenih podataka na više nivoa. Treba imati u vidu da je XMLsamo jezik za

označavanje, a ne programski jezik. XML dokument samo postoji, ne radeći ništa. Kao ni

16

Page 17: XML informacionih sistema.doc

HTML, ni XML ne šalje podatke preko mreže. Poslani podaci mogu biti kodirani u

XML-u, ali izvan XML dokumenta mora postojati neki protokol (HTTP, FTP, NFS i

slično) koji će poslati dokument. To znači da XML nije protokol za mrežni prenos.

Iako XML veoma dobro služi kao prenosni format, koji je nezavisan od platforme, on

nije baza podataka. Sama baza podataka, iako može sadržati XML podatke, nije XML

dokument. Da bi korisnik preuzeo XML dokument iz baze podataka, mora upotrebiti neki

posrednički program (eng. middleware product), kao što je Enhydra.7

VI FUNKCIONALNOST XML-a

Za funkcionalnost koji pruža XML potreban je parser. U Internet Exploreru 5.0 i

nadalje postoji ugrađen parser a za parsiranje iz npr. Visual Basica potrebno je postaviti

referencu na XML parser. Parsiranje, kada je XML u pitanju znači sledeće –

rasčlanjivanje tekstualnog fajla i pravljenje strukture koja se rekurzivno puni elementima

XML stabla.

To znači da parser izvodi sledeće operacije:

1. Isčitava preprocesorski deo dokumenta (deo na početku dokumenta između ?

znakova) da bi došao od informacija koje se odnose na dokument a nisu deo

samog XML stabla. Na primer: <?xml version="1.0" encoding="windows-1252"?>

2. Zatim se isčitava prvi tag u XML strukturi i zapisuje njegovo ime – ovo je top level

ili startni tag.

3. Zatim se zapisuje ime elementa.

4. Zatim se isčitavaju ostali elementi redom da bi se odredilo koja svojstva ima dati

element strukture i zatim se ta svojstva upisuju - ako je u pitanju element upisuje

se njegova vrednost ili u formi uređenih parova atribut = vrednost ako je u

pitanju atribut.

7 K. Watson, M. Bellinaso, O. Cornes, D. Espinosa, Z. Greenvoss, C. Nagel, J. H. Pedersen, Jon

D. Reid, M. Skinner, E. White, Od početka… C#, CET, 2002.

17

Page 18: XML informacionih sistema.doc

5. Ako sledeći tag nakon prvog nađenog nije oznaka za zatvaranje isčitava se sledeći

tag i on se definiše kao dete trenutnog elementa. Onda se parser vraća na korak 3.

Ako je nađeni tag oznaka za zatvaranje onda je element definisan.

6. Ovaj proces se ponavlja dok se ne obradi čitav dokument.

XML je projektovan za distribuirano okruzenje i veoma pogodan kao format za razmenu

podataka između heterogenih aplikacija na Web-u .XML kao format je dovoljno

formalan za masinsko procesiranje i dovoljno razumljiv za korisnike.

Slika 3.

6.1. Sintaksa

U XML dokumentima podaci su smešteni u obliku znakovnih nizova (eng.

strings), koji se nalaze između tekstualnih etiketa koje ih opisuju. U XML-u se osnovne

jedinice etiketa i podataka nazivaju elementi.

18

Page 19: XML informacionih sistema.doc

Slika 4.

Korisnik se pri pisanju etiketa mora pridržavati precizno definisane sintakse.

Strukturu XML dokumenta opisuju njegove etikete, pomoću kojih se može videti koji su

elementi pridruženi drugim elementima. Ako je XML dokument dobro projektovan,

etikete opisuju i njegovu semantiku (npr. etikete ukazuju da li je element naslov, ime

osobe, datum i sl.). Ali, etikete u dobro projektovanim XML aplikacijama ne govore ništa

o načinu prikazivanja dokumenta (npr. da li je element ispisan polucrno ili kurzivom i sl.)

jer XML jezik ne označava način prikazivanja, već strukturu i semantiku.

Bazična sintaksa za jedan dokument u XML-u je:

<osoba>Petar Petrovic</osoba>

VII DELOVI XML-a

Postoji veliki broj međusobno povezanih internih specifikacija (neke od njih su još u

fazi razvoja) koje, funkcionišući zajedno, čine familiju XML-ovih tehnologija, pri čemu se

svaka od njih odnosi na jedan određeni aspekt komunikacionih informacija. Ovo su neke od

najvažnijih:

19

Page 20: XML informacionih sistema.doc

1) XML 1.0 je osnovna specifikacija na koju se oslanja familija XML-ovih tehnologija.

Ona definiše sintaksu koja se mora koristiti u XML dokumentima, pravila koja moraju

da poštuju XML-ovi parseri, kao i sve ostalo što je potrebno da znate da biste čitali i

pisali XML dokumente. (Ona takode definiše i DTD-ove, iako se oni ponekad tretiraju

kao zasebna tehnologija).

2) Budući da sami pravite strukturu i elemente svojih XML dokumenata, DTD-ovi i

šeme vam mogu biti od velike koristi. Naime, oni vam omogućavaju pravljenje

šablona za vaše tipove dokumenata.

3) Prostori imena obezbeduju sredstva kojima se može napraviti razlika između

različitih XML-ovih rečnika, čime se omogućava pravljenje bogatijih dokumenata

kombinovanjem više rečnika u okviru jednog tipa dokumenta.

4) XPath opisuje jezik upita za adresiranje delova nekog XML dokumenta. Ovo

omogućava aplikacijama da precizno pronađu određene delove XML dokumenta i da

na taj način izbegnu obrađivanje velike količine informacija koju celokupni dokument

sadrži.

5) Za definisanje prikaza dokumenata u jednostavnijim slučajevima možete

koristi kaskadne liste stilova (CSS). Kada je u pitanju složeniji prikaz, možete

upotrebljavati proširivi jezik lista stilova (XSL), koji se sastoji od XSLT-a, koji može

transformisati dokumente iz jednog tipa u drugi i objekata formatiranja, koji se koriste

za definisanje samog prikaza.

6) XLink i XPointer su jezici koji se koriste za povezivanje više XML dokumenata, slično

HTML-ovim hipervezama.

7) Da bi se obezbedila veza između nekih tradicionalnih aplikacija i XML dokumenata

koristi se objektni model dokumenta - DOM. Alternativa DOM-u, koju programeri mogu

20

Page 21: XML informacionih sistema.doc

upotrebiti da bi se iz svog koda povezali sa XML dokumentima je Simple API for XML

(SAX). 8

7.1. Gde se XML koristi i gde se još može koristiti?

Uvek kada je potrebno uspostaviti komunikaciju između raznih računarskih programa,

XML predstavlja dobar izbor formata za razmenu. U nastavku je prikazano samo nekoliko

primera:

- Smanjenje opterećenosti servera

Mrežno orjentisane aplikacije mogu koristiti XML u cilju smanjenja opterećenosti mrežnih

servera. To se može postići tako što će se sve informacije čuvati na računana klijentu što je

moguće duže, a zatim će biti poslate ostalim klijentima u okviru jednog velikog XML

dokumenta.

- Sadržaj Web lokacija

Svoje specifikacije W3C piše pomoću XML-a. Ti XML dokumenti se zatim mogu, u cilju

prikazivanja, pretvoriti (korišćenjem XSLT-a) u HTML ili u neki drugi format za

prezentaciju.

Na nekim Web lokacijama se celokupan sadržaj (koji se obično prikazuje u HTML-u)

obraduje isključivo u XML-u. Taj XML se zatim pomoću XSLT-a pretvara u HTML, ili se

prikazuje direktno na pretraživačima korišćenjem kaskadnih lista stilova. Neki mrežni serveri

mogu čak u hodu da odrede koji tip pretraživača će se koristiti za prikazivanje informacija, pa

se shodno tome opredeljuju za jednu od ovih opcija.

- Daljinsko pozivanje procedura

XML se koristi i kao protokol za daljinsko pozivanje procedura (Remote Procedure Calls,

RPC). RPC je protokol koji omogućava objektima sa jednog računara da, u cilju obavljanja

određenih aktivnosti, pozivaju objekte sa nekog drugog računara, vršeći na taj način

raspodeljenu obradu.

8 op cit. M.Govedarica, I. Luković, P. Mogin, str.7621

Page 22: XML informacionih sistema.doc

- Elektronska trgovina

Elektronska trgovina je pojam sa kojim se danas često možete susresti. Kompanije

svakodnevno otkrivaju da komuniciranjem preko Interneta, umesto na tradicionalne načine

(korišćenjem faksova, ličnim kontaktom i si.), mogu dosta ubrzati poslovne procese, smanjiti

troškove i povećati raspoloživo vreme za odgovore. Kompanija koja namerava da pošalje te

podatke drugoj kompaniji treba da uzme u obzir XML, jer on predstavlja dobar izbor formata

i za takvu razmenu.

Kada između dve kompanije postoji neki takav vid saradnje, on se naziva poslovnom

(B2B) elektronskom trgovinom. Može se govoriti i o transakcijama tipa firma-kupac (engl.

business to customer, B2C), u kojima ste možda i sami učestvovali kupujući, na primer,

knjige preko Interneta. I u ovim slučajevima postoje mogućnosti za primenu XML-a.

VIII ŠTA JE WORLD WIDE WEB CONSORTIUM?

Jedan od razloga tolike uspešnosti XML-a jeste činjenica da oni ustvari predstavljaju

standarde. To znači da svako, ko se pridržava tih standarda, ima mogućnost da pravi rešenja

koja mogu funkcionisati usaglašeno.

World Wide Web Consortium (W3C), koji je osnovan 1994. godine i prema navodu

na njegovoj adresi, http://www.w3.org, ima za cilj da „World Wide Web vodi u smeru punog

iskorišćenja njegovih mogućnosti razvojem opštih protokola koji promovišu stalno širenje

ove mreže i obezbeduju njenu meduoperativnost". Shvatajući potrebu za standardizacijom,

W3C izdaje preporuke koje definišu osnovne gradivne komponente ove mreže. Koristi se

termin preporuke, a ne standardi, zato što se odluka o njihovom poštovanju u cilju

postizanja međuoperativnosti prepušta korisnicima.

Zbog XML-ovih ciljeva vezanih za meduoperativnost, W3C je institucija koja je

pogodna i za razvoj standarda za tehnologije koje se koriste uz XML.

22

Page 23: XML informacionih sistema.doc

IX KRATAK PREGLED METODOLOGIJA

Međunarodni standardi u softverskom inženjerstvu, kao što su ISO 9001 sa ISO

9000 - 3 predlozima, i delimično ISO 12207 predlažu zajedničku softversku razvojnu

metodologiju, ali oni ne određuju zajedničku strukturu specifikacija dizajna za softverske

proizvode, u potpunosti. Zato, razvojna metodologija pojedinačnog projekta može biti

definisana u fazi planiranja projekta. Takođe, struktura i sadržaj dizajna specifikacija

mora biti ustanovljena privremenim standardima softverskog razvojnog projekta, kao deo

predložene metodologije.

Metodologija koja je predložena u ovom radu je bazirana na kombinaciji životnog

ciklusa i prototipskog pristupa. U ovm delu, diskutujemo o najvažnijim aktivnostima

metodologije i stavljamo ih u okvir metodologije životnog ciklusa. Kao najvažnije

aktivnosti, Slika 1. opisuje: razvijanje specifikacija aplikacija i transakcionih progama, i

generisanje prototipa aplikacija.

U nastavku, smatra se da sledeće aktivnosti mogu zauzeti mesto u fazi planiranja

projekta:

- Definisanjem zajedničkog UI modela koji specificira strukturu prezentacionih formi i

funkcionalnu logiku,

- Definisanjem strukture specifikacija transakcionih programa i aplikacija,

- Definisanjem dizajna procesa programa i specifikacije aplikacija i omogućavanjem

odgovarajućih softverskih alata, i

- Odezbeđivanjem alata za automatsko generisanje prototipa aplikacija.

23

Page 24: XML informacionih sistema.doc

Smatra se da se dizajn IS može odvijati u dve paralelne grupe aktivnosti: 1) dizajn

baze podataka i 2) dizajn transakcionih programa i aplikacija. Prema metodologiji

životnog ciklusa, ove aktivnosti se izvršavaju u fazi analize i dizajna .

Prema pristupu autora [1], konceptualni dizajn IS je izveden u fazi analize. Glavni

cilj ove faze je da transformiše korisničke zahteve u formalne specifikacije IS koje su

nezavisne od bilo koje DBMS ili programske paradigme. Prema tome konceptualni dizajn

označava: šemu baze podataka, transakcioni program, i rezultate aplikacija u

odgovarajuće formalne specifikacije, videti Sliku 1. Predlaže se da dizajn ovih

specifikacija mora biti izveden korišćenjem odgovarajućeg CASE alata. U ovom slučaju,

dizajnirane specifikacije su sačuvane u CASE skladištu. Zato, strukture gore pomenutih

specifikacija i svaka dizajnirana specifikacija potvrđuje ovo.

Implementacija dizajna IS je izvršenu u fazi dizajna. Glavni cilj ove faze je da

transformiše formalne specifikacije u ekvivalentne specifikacije implementacije. Ove

specifikacije su nezavisne od bilo kog DBMS i run - time okruženja. Predlažemo

automatsko transformisanje konceptualnih specifikacija u odgovarajuću implementaciju

specifikacija, videti Sliku 1.

Na taj način, aplikaciona specifikacija je transformisana u Initial XML

Specification of an Application (IXSA). XML DTD koji je nazvan MenuDTD definiše

svoju strukturu. Programska specifikacija je transformisana u Initial XML Specification of

a Program (IXSP). UIML DTD i XML DTD je nazvan SubschemaDTD i definiše svoju

strukturu. Inicijalne XML specifikacije su kombinovane sa XML Based UI Model

(XBUM) i transformisane u Final SML Specification of an Application (FXSA) (videti

Sliku 1.). XBUM je UIML dokument. Predstavlja zajednički UI model IS, koji je

nezavisan od bilo kog run - time okruženja.

24

Page 25: XML informacionih sistema.doc

Slika 3. Pregled procesa razvoja IS specifikacija i prototipa aplikacija.

Prema tome, metodologija životnog ciklusa, programskih aplikacija i

transakcionih programa je izvedena u fazi konstrukcije . Autori [1] predlažu

programiranje uz pomoć automatske transformacije finalnih XML specifikacija u izvršne

prototipe aplikacija. Prototipi su takođe određeni značenjem XML - a, ali oni su zavisni

od platforme, videti Sliku 1. Ovi prototipi mogu biti interpretirani prevođenjem na Java -

u. UIML dokument koji nazivamo Mapping Rules for XML based UI Model (MRXM)

definiše kako će komponente FXSA biti predstavljene u Java specifične run - time

komponente. 

25

Page 26: XML informacionih sistema.doc

X RAZVOJ SRECIGIKACIJA SOFTVERA KORIŠĆENJEM

IIS*CASE

Korišćenje CASE alata u razvoju IS je danas uobičajena navika. Takođe autori [1]

smatraju da je korišćenje CASE alata u  primeni njihove metodologije korisno u sledećim

situacijama. Prvo, stavlja se naglasak da su XML specifikacije dizajna obično sasvim

dugačke, čak i mnogo duže od odgovarajućeg koda, napisanog u posebnom programskom

jeziku. Prema tome, teško je očekivati da čak i dobro uvežbani i iskusni projektanti budu

u mogućnosti da ne naprave XML specifikacije bez grešaka u kratkom vremenskom

periodu. Druga mogućnost, predstavlja da će projektanti koristiti zajednički alat (kao što

je XML Spy) za projektovanje i proveru XML dokumenata. Neki alati im mogu pomoći

samo u stvaranju formalno validnih XML specifikacija, pošto ne postoji namera da im

pomogne u konceptualnom projektovanju i semantičkoj analizi specifikacija dizajna.

Dakle, postoji mala garancija da će takve XML specifikacije biti semantički ispravne.

U metodologiji aplikacija, odlučeno je da se koristi CASE alat koji se zove

IIS*CASE . To je laboratorijski softverski proizvod iz skupa integrisanih CASE alata.

IIS*CASE  je usmeren prema:

- Konceptualnom dizajnu šeme baze podataka, transakcionim programima i aplikacijama,

- Automatskom generisanju relacionih šema baza podataka, zadovoljavajući treću

normalnu formu (3NF) u najmanjoj meri, i

- Automatskom generisanju prototipa aplikacija.

IIS*CASE radi kao klijentska aplikacija preko svog skladišta na strani servera. Skladište

mora biti implementirano kao relaciona baza.

26

Page 27: XML informacionih sistema.doc

10.1. Konceptualni dizajn karakteristika IIS

Jedan od glavnih motiva u razvoju IIS*Case je taj da treba savladati složenost

prepoznavanja, oblikovanja i određivanja ograničenja baze podataka u dizajnu baze

podataka. Da bi se postigao taj cilj uvodi se tip forme kao jedini koncept na

konceptualnom nivou. Prema tome konceptualni dizajn IS je baziran na konceptu tipa

forme. Tip forme je uopštavanje ekranizovanja ili štampanih formi, koja se koristi da

odredi UI. Ove korisničke forme su najčešće izvedene forme odgovarajućih poslovnih

dokumenata, koje nose informaciju o atributima i ograničenju u realnom sistemu.

Tip forme je izdvajanje veoma slično konceptu objektnih klasa u objektno -

orijentisanom pristupu. Ovo omogućava formalizam za izražavanje:

- Strukture nad skupom atributa transakcionih programa,

- Stanja karakteristika transakcionih programa,

- Ograničenja podataka različitih tipova, i

- Prezentacije podataka u izgledu forme.

IIS*Case podržava kreiranje:

1) Skupa tipova formi, i

2) Brojnih hijerarhijskih struktura nad skupom tipova formi.

Na ovaj način, dizajniramo specifikacije baze podataka, transakcionih programa i

aplikacija, na konceptualnom nivou.

Svaki tip forme predstavlja formalnu specifikaciju programa na konceptualnom

nivou. Struktura nad skupom atributa i ograničenja podataka predstavlja izgled baze

podataka. Forma koja prezentuje podatke predstavlja izgled na ekranu ili štampanu formu

transakcionog programa.  Karakterisike ponašanja definišu operacije, tj. procesnu logiku

podataka koju transakcioni program može da izvršava nad bazom podataka. One mogu da

27

Page 28: XML informacionih sistema.doc

uključuju prethodno definisane (standardne) operacije baze podataka: pretraživanje,

ubacivanje, brisanje i ažuriranje, i nestandardne (specifične) operacije. Standardne

operacije su određene deklarativno.

Struktura nad skupom atributa, ograničenja podataka i karakteristika ponašanja

tipa forme predstavljaju spoljnu šemu. Skup svih spoljnih šema, kreiranih od strane

IIS*Case, predstavlja formalnu specifikaciju šeme baze podataka na konceptualnom

nivou.

Svaka hijerarhijska struktura nad skupom tipova forme predstavlja formalnu

specifikaciju aplikacije. Ona opisuje sadržaj sistema koji omogućava pozive

odgovarajućih transakcionih programa. Trebalo bi da uključuje sledeće:

- Specifikaciju sadržaja strukture sa stavkama menija, i

- Specifikaciju stanja i vizuelnih svojstava svake stavke menija.

Ponašanje svojstava stavke menija određuje spajanje stavke sa transakcionim

programom, koje se predstavlja preko tipa forme, ili sa drugim menijem. Očigledno

svojstvo stavke menija definiše pojavu stavke u UI.

Na početku procesa projektovanja, koristi se IIS*Case da bi se napravio nacrt korisničkih

zahteva koji ima sledeće konceptualne karakteristike:

- Konceptualna šema karakteristika baze podataka, koja se definiše kao skup svih

spoljnih šema,

- Konceptualne programske karakteristike, gde je svaka definisana tipom forme, i

- Karakteristike aplikacije, gde je svaka definisana preko hijerarhijske strukture nad

unijom skupa tipova formi i skupom menija.

28

Page 29: XML informacionih sistema.doc

10.2. Implementacija dizajna IS karakteristika

U procesu implementacije dizajna baze podataka, IIS*Case transformiše svaku

spoljnu šemu u podšemu. Podšema eksplicitno koristi koncepte relacionog modela

podataka. Orjentaciono govoreći, podšema sadrži skup relacionih šema, skup međusobnih

ograničenja, i  prethodno definisano stanje. Svaka šema relacije podšeme je razmatrana

definicija nad relacionom šemom baze. Skup  međusobnih ograničenja podšeme mora biti

tačnija ili jednaka projekciji međusaobnih ograničenja baze podataka nad skupom

podšema relacionih šema. Prethodno definisano stanje deklatarivno određuje skup

osnovnih operacija nad bazom podataka (kao sto je izdvajanje, unos, ažuriranje i brisanje)

koje se može izvršavati uz pomoć transakcionih programa koristeći podšemu.

Relaciona šema baze podataka IS je napravljena integracijom podšema.

IIS*Case podrška generiše:

- Implementaciju specifikacije šeme baze podataka, i

- Skup podšema specifikacija.

Podsetimo se da opis konceptualnog programa sadrži spoljnu šemu opisa i

specifikacija prezentacije podataka forme. Ogovarajući implementacioni program

specifikacije sadrži podšemu specifikacije i konceptualne specifikacije prezentacije

podataka forme, jer tada samo transformišemo svaku spoljnu šemu u podšemu.

Sledeći korak predložene metodologije je predstavljanje formalnih specifikacija u

ekvivalentnu XML reprezentaciju. To zovemo inicijalne XML specifikacije. IIS*Case

podržava generisanje inicijalnih XML specifikacija (videti Sliku 4.). Na taj način,

automatski se transformiše svaka podšema specifikacije u XML Specification of a

Subschema (XSS), svaka specifikacija prezentacije podataka forme u Initial XML

Specification of an data presentation Form  (IXSF), i svaka specifikacija aplikacije u

Initial XML Specification of an Application (IXSA).

29

Page 30: XML informacionih sistema.doc

Metodologija koristi XML DTD-ove da definiše standarde dizajna, strukturu i

ograničenja XML specifikacija dizajna. Rezultat potpunog procesa dizajna je skup

validnih XML dokumenata koji predstavljaju specifikacije transakcionih programa i

aplikacija. U tu svrhu, razvili smo specifičan XML DTD, koji se naziva SubschemaDTD,

koja modeluje apstraktnu strukturu podšeme. Svaki XSS dokument generisan od strane

IIS*Case, je validan posredstvom SubschemaDTD. 

Da bi se definisala struktura IXSF uz pomoć XML DTD dokumenta, usvaja se

UIML DTD . Svaki IXSF, generisan sa IIS*Case, je validan posredstvom UIML DTD.

Takođe smo razvili specifičan XML DTD, nazvan MenuDTD, koji modeluje

zajedničku strukturu meni sistema. To je definisano korišćenjem koncepata UIML. Svaki

IXSA, generisan od strane IIS*Case, je validan posredstvom MenuDTD.

Slika 4. Generisanje XML specifikacija od IIS*Case nosilaca.

30

Page 31: XML informacionih sistema.doc

XI XML SPECIFIKACIJE KORISNIČKOG INTERFEJSA

Prilagođavanje metodologije razvoja standardnog softvera zadatim ciljevima

projekta uglavnom je izvršeno u fazi planiranja. Pošto Internacionalni standardi u

softverskom inženjerstvu eksplicitno ne nameću bilo kakav zajednički UI model za

softverske proizvode, u ovom radu se akcenat stavlja na to da specifikovanje zajedničkog

UI modela projekta IS aplikacija treba da bude obavezan zadatak u istoj fazi. Iako je

specijalizovan projekat, ovaj UI model bi takođe trebao da bude zajednički za sve

aplikacije IS. Zbog toga se naziva zajednički UI model.

. S obzirom na ciljeve metodologije, pretpostavlja se da zajednički UI model

zadovoljava sledeće uslove :

- Može biti primenjen kao šablon za razvojni UI svih IS aplikacija,

- Potpuno je nezavisan od bilo kog CASE alata,

- Potpuno je nezavisan od bilo kog run-time okruženja.

Treba naglasiti da nezavisnost od bilo kog CASE alata implicira da obe

konceptualne specifikacije smeštene u skladištu CASE alata, i izlaz XML primenjenih

specifikacija ne bi trebalo da sadrže detalje specificiranja zajedničkih UI karakteristika IS.

Ovako generisane inicijalne XML specifikacije će kasnije u procesu biti kombinovane sa

zajedničkim UI modelom. Na ovaj način, finalne XML specifikacije, dobijene iz inicijalnih

XML specifikacija, će naslediti zajedničke UI karakteristike iz zajedničkog UI modela.

Izabran je XML kao deklarativni markerski jezik za specificiranje zajedničkog UI

modela, zbog toga što dozvoljava formalno specificiranje zajedničkog UI modela, koji je

potpuno nezavisan od run-time okruženja. Druge tehnike koje se često koriste kao

specifično programiranje u okruženju ili opisni tekstualni dokumenti, su ili zavisne od

run-time okruženja, ili rezultujuće specifikacije nisu formalne.

Prvi zadatak pri dizajniranju zajedničkog UI modela baziranog na XML-u je da se

odredi specifičan XML DTD ili XML šema, koji će definisati pojmove koji su potrebni

za predstavljanje specifikacija sadržaja i funkcionalnosti UI modela. Zatim, UI model bi

31

Page 32: XML informacionih sistema.doc

trebalo da bude specifikovan kao važeći XML dokument, na primer instanca tog XML

DTD-a ili XML šema. Takva instanca se naziva XBUM ( XML Based UI Model ) i to je

XML dokument koji treba da bude kombinovan sa inicijalnim XML specifikacijama

(Slika 2).

Postoji nekoliko markerskih jezika usmerenih ka specificiranju UI, koji su

bazirani na XML tehnologiji. UIML (User Interface Markup Language ) je jezik za

specificiranje UI nezavisno od urađaja. Kreiranje UI modela korišćenjem UIML-a je

izvršeno razvijanjem UIML dokumenta, koji mora da se prilagodi UIML DTD ili UIML

šema dokumentu. UIML obezbeđuje neke apstraktne pojmove koji podržavaju

definisanje komponenata UI modela. Takođe podržava definisanje zajedničkih vizuelnih

svojstava (oblik prezentacije) UI komponenata. Ova vizuelna svojstva su nezavisna od

run-time okruženja.

U ovom prikazivanju metodologije UIML DTD je usvojen kao DTD definisani

koncept UI modela. Korišćenjem UIML DTD-a, razvili smo XBUM, kao njegovu važeću

instancu.

XBUM specifikuje : (a) sadržaj, i (b) ugrađeno ponašanje (npr. funkcionalnost)

UI.

Sadržaj obuhvata specifikacije : (a1) strukture UI komponenata i (a2) pravila

prezentacije UI elemenata. Struktura UI komponenata definiše skup osnovnih UI

elemenata i pravila strukturiranja za građenje složenih UI komponenata. Specifikacija

pravila prezentacije definiše zajednička vizuelna svojstva UI elemenata koji su nezavisni

od run-time okruženja.

Ugrađeno UI ponašanje specifikuje asocijacije UI elemenata, npr. dugmad, menije

i stavke menija, sa : (b1) unapred definisanim (zajedničkim) funkcijama, i (b2) dodatnim

(specifičnim) funkcijama. Unapred definisane funkcije su povezane sa ekranom ili

formama za štampanje, usmerenih na prezentovanje podataka ili izvršavanje standardnih

operacija baze podataka - selektovanje i ažuriranje. Specifične funkcije su povezane sa

UI elementima samo onih transakcionih programa koji izvode neke specifične akcije ili 32

Page 33: XML informacionih sistema.doc

poslovna pravila.

Predstavljajući šablone forme, XBUM sadrži sledeće UI komponente:

Šablon formu za autorizaciju koja je usmerena na generisanje autorizacije forme

aplikacije, podržavajući identifikovanje korisnika,

Naziv šablona forme koji je usmeren na generisanje prve forme aplikacije, koja se

pojavljuje ako je autorizacija prihvaćena. Omogućava tabelarno predstavljanje i

pregledanje podataka iz baze podataka,

Šablon formu za kvalifikacioni upit koja se koristi da generiše forme za

definisanje izabranog kriterijuma upita,

Šablon formu za prezentovanje podataka koja se koristi da generiše nepromenljive

forme (samo za čitanje) za prezentovanje samo jednog sloga podataka iz baze

podataka,

Šablon formu za umetanje, koja je usmerena na generisanje formi za sekvencijalno

umetanje jednog sloga podataka u bazu podataka,

Šablon formu za ažuriranje, koja je usmerena na generisanje formi za

sekvencijalno modifikovanje jednog sloga podataka iz baze podataka,

Šablon formu za brisanje, koja je usmerena na generisanje formi za sekvencijalno

brisanje jednog sloga podataka iz baze podataka,

Šablon formu za poruke, koja je usmerena na generisanje formi za predstavljanje

poruka korisniku, i

Šablon formu za završetak, koja je usmerena na generisanje forme koja

obaveštava da je izvršavanje aplikacije završeno.

33

Page 34: XML informacionih sistema.doc

XBUM ne specifikuje run-time specifičnih prezentacionih pravila ili vizuelnih

svojstava UI komponenata. Sa druge strane, svaki zajednički UI model bi trebalo da bude

interpretiran u run-time okruženja.

Koristeći markerski jezik za specifikovanje nezavisne platforme, zajednički UI

model omogućava njegovo interpretiranje različitog run-time okruženja. Jedna od

prednosti korišćenja markerskih jezika je to da su oni podržani od tzv. rendera koji mogu

da interpretiraju pogodne markerske specifikacije specifičng run-time okruženja.

11.1. Inicijalne XML specifikacije informacionog sistema

Jedan od ciljeva implementacije dizajna je da se proizvedu inicijalne specifikacije

koje automatski mogu biti transformisane u izvršne transakcione programe i aplikacije.

11.1.1. Inicijalne XML Specifikacije Aplikacije (IXSA)

IXSA obezbeđuje meni sistem aplikacije za specifikovanje. To je XML dokument

koji je važeći u odnosu na MenuDTD. MenuDTD definiše opšte koncepte za specifikovanje

meni sistema. To omogućava specifikovanje strukture stabla, sačinjene od stavki menija u

rekurzivnoj formi. Osnovni koncept je stavka menija. Svaka stavka je čvorna tačka

strukture stabla.

Razlikujemo sledeće tipove stavki menija :

Glavni meni, koji je koren menija stabla,

Podmeni, koji nije lisni lisni čvor meniju stabla,

Lisna stavka, koja je lisni čvor u meniju stabla, i

Kontekstni meni, koji je odvojeni meni, pojavljuje se u kontekstu forme ekrana

(obično se pojavljuje klikom na formu desnim tasterom miša).

34

Page 35: XML informacionih sistema.doc

Za svaku stavku menija, definisani su svojstva ponašanja i vizuelna svojstva. Svojstva

ponašanja stavke menija specifikuju :

Asocijaciju stavke sa jednim od sledećih : meni, podmeni, kontekstni meni ili

transakcioni program, i

Logički uslov koji mora biti zadovoljen da bi se stavka aktivirala.

Glavno vizuelno svojstvo stavke menija je labela (naslov) stavke koja će se

pojaviti u UI. Pošto MenuDTD štiti nezavisnost IXSA od XBUM-a, ne postoji

preklapanje definicija koncepata u MenuDTD-u i XBUM-u. Zbog toga nema potrebe za

definisanjem zajedničkih vizuelnih svojstava nekoliko stavki menija u kontekstu IXSA.

Oni treba da budu definisani samo u XBUM-u.

11.1.2. Inicijalna XML Specfikacija Programa (IXSP)

Svaka specifikacija programa obuhvata :

Podšemu, i

Formu prezentacije podataka.

Zbog toga se IXSP sastoji od : (i) XSS i (ii) IXSF.

XSS je XML dokument koji funkcioniše u odnosu na SubschemaDTD.

SubschemaDTD definiše : (a) strukturu podataka na nivou apstrakcije, sa ugrađenim

ograničenjima podataka, i (b) karakteristike unapred definisanog ponašanja transakcionog

programa koji će koristiti podšemu. Prema tome, XSS definiše apstraktnu strukturu baze

podataka i unapred određenu logiku obrađivanja podataka transakcionog programa.

Izuzev unapred određene logike obrade podataka, specifikacija programa može

uključiti definiciju specifične logike obrade podataka, koja definiše specifičnu

35

Page 36: XML informacionih sistema.doc

funkcionalnost transakcionog programa. To može biti izraženo u proceduralnoj formi. Za

ovu svrhu, autori [1] predlažu korišćenje nekog formalnog jezika (pseudo kod). Ako se

koristi, specifičan DTD može biti i sam dobavljen kao specifikacija formalnog jezika.

Jedan od primera takve specifikacije jezika je XEXPR (XML Expression Language).

IXSF je UIML dokument. On specifikuje tip forme. Korisnik će koristiti tip forme

kako bi komunicirao sa transakcionim programom i kreirao instance tipova formi. Tip

forme će preneti svojstva odgovarajućeg šablona tipa forme u procesu generisanja finalnih

specifikacija XML programa. Svaki šablon forme definisan je u XBUM-u i ima ugrađeni

sadržaj i ponašanje . IXSF definiše :

Sadržaj, npr. komponente i strukturu tipa forme,

Svojstva specifičnog ponašanja komponenti tipa forme, i

Specifična virtuelna svojstva komponenti tipa forme.

UIML DTD definiše tipove komponenti tipa forme i pravila za njihovo

strukturiranje. Komponenta tipa forme je UI elemenat, kao što su : stavka podatka, grupa

(npr. panel ili blok) stavki podataka, traka za pomeranje, traka sa alatkama, dugme, itd.

Postoje komponente tipa formi koje moraju biti u asocijaciji sa odgovarajućim

komponentama podšeme. Takve asocijacije su takođe izražene ovom UIML

specifikacijom. One modeluju vezu između komponenti forme korisnika i šeme baze

podataka. Na primer, ako je stavka podatka tipa forme u asocijaciji sa nekim atributom

podšeme, tada će ona čuvati vrednosti baze podataka tog atributa. Ako je komponenta

tipa forme u asocijaciji sa nekom odgovarajućom komponentom podšeme, onda će ona

preneti svoju unapred definisanu funkcionalnost. Na primer, ako je panel stavki u

asocijaciji sa šemom relacije podšeme, onda će biti korišćen da podrži operacije baze

podataka koje su u asocijaciji sa ovom šemom relacije.

Specifična vizuelna svojstva i svojstva ponašanja nisu obuhvaćena od strane

XBUM-a. Specifična svojstva ponašanja mogu definisati neke dodatne procedure obrade

podataka ili procedure provere ispravnosti koje treba da budu obavljene samo u okviru

datog tipa forme. Na primer, to može biti formula za lokalno računanje ili proveru 36

Page 37: XML informacionih sistema.doc

ispravnosti vrednosti stavke tipa forme koja ne odgovara ni na jedan atribut podšeme.

11.2. Dizajn finalnih XML specifikacija

Ovaj deo objašnjava proces kreiranja konačnih XML specifikacija aplikacije.

Ulazi u procesu su : (i) IXSA, (ii) set IXSP-ova i (iii) XBUM. Izlaz je FXSA (Final XML

Specification of an Application), koja je generisana primenjivanjem sekvence XSL

trensformacija. Celokupan proces ima dve faze koje prikazuju Slika 3 i Slika 4.

Prva faza generiše prvu verziju DXSA-a (Draft XML Specification of an

Application ) spajanjem pogodnih XML i UIML ulaznih dokumenata (Slika 3). Rezultat

je UIML dokument. XSL transformation 1 spaja IXSA sa XBUM i proizvodi DXSA.

DXSA prenosi :

Sve UI komponente sa ugrađenim vizuelnim svojstvima i svojstvima ponašanja iz

XBUM-a, i

Strukturu menija, ponašanje i specifična vizuelna svojstva stavke menija iz IXSA.

Posle spajanja, DXSA sadrži celokupnu specifikaciju XBUM-a.

Slika 6. opisuje sledeću fazu procesa. Sastoji se od dva koraka koji se iterativno primenjuju

na svaki IXSP na ulazu, sve dok se FXSA ne proizvede.

U prvom koraku, XSL transformation 2 spaja tekuću verziju DXSA sa IXSF

tekuće specifikacije programa. Ona prenosi sve šeme formi iz tekuće verzije DXSA. XSL

transformation 2 mapira ove šeme u konkretni tip forme. Nova verzija DXSA prenosi

sadržaj i strukturu ovih tipova forme, i svojstva ponašanja i specifična vizuelna svojstva

komponenata tipa forme iz korisničkog tipa forme, specifikovanih od strane IXSF-a.

37

Page 38: XML informacionih sistema.doc

Slika 5. Proizvođenje nedovršene XML specifikacije neke aplikacije posredstvom XSL

transformacije

Nakon prvog koraka, nova DXSA postaje tekuća. To će biti jedan od ulaza u XSL

transformation 3. U drugom koraku, XSL transformation 3 spaja tekuću verziju DXSA-a

sa XSS-om tekuće specifikacije programa. Na ovaj način dobijena je nova verzija DXSA-a.

Nova DXSA je UIML dokument koji sjedinjuje koncepte forme prezentacije podataka i

podšemu.

XSS povećava funkcionalnost novog DXSA sa unapred određenom logikom

obrađivanja podataka. Prema tome, nova DXSA prenosi iz prethodne verzije samo one

tipove formi koji su neophodni da se podrže osnovne operacije baze podataka, koje

dozvoljava podšema.

Nakon XSL transformation 3, nova DXSA sadrži informacije o komponentama

tipa forme, komponente podšeme, i njihove veze. Ovo omogućava odgovarajućem

transakcionom programu proveru ispravnosti ograničenja baze podataka i upozorenje

korisnika o njihovom narušavanju ranije, nego što su ograničenja proveravana samo na

nivou DBMS. To čini UI transakcionog programa reaktivnijim.

Sledeći (treći) korak bi bio kreiranje nove XSL transformacije koja bi podržala

transformisanje DXSA sa unapred definisanom funkcionalnošću transakcije programa u

DXSA sa potpunom (unapred definisanom i specifičnom) funkcionalnošću transakcije

programa. DXSA sa potpunom funkcionalnošću može preneti specifičnu funkcionalnost 38

Page 39: XML informacionih sistema.doc

iz inicijalne XML specifikacije specifične logike obrade podataka (initial XML

specification of specific data processing logic).

Slika 6. Proizvođenje konačne XML specifikacije aplikacije posredstvom XSL

transformacija.

Posle aplikacije XSL transformation 3 na IXSP, nova verzija DXSA će postati ili

39

Page 40: XML informacionih sistema.doc

tekuća a nova IXSP će se povećati u sledećoj iteraciji, ili postati FXSA. FXSA ujedinjuje

sve strukturalne, funkcionalne i vizuelne karakteristike IXSA-a, set IXSP-ova, i XBUM, i

potpuno je nezavisan od bilo kog run-time okruženja.

XII GENERISANJE PROTOTIPOVA APLIKACIJE

Jedan od glavnih ciljeva ove metodologije je omogućavanje direktne interpretacije

XML specifikacija kao prototipova programa u izabranom run-time okruženja.

Generalno, postoje tri tehnike transformisanja specifikacija dizajna u izvršne softverske

aplikacije:

1. Ručno kodiranje,

2. Automatsko kodiranje, i

3. Kombinacija prethodne dve tehnike.

Prema pomenutom cilju ove metodologije, najprimernija je tehnika potpunog

generisanja koda. Ipak, primenjivanje ove tehnike podrazumeva da ulazne specifikacije

programa moraju biti formalne i dovoljno bogate da iskažu sve neophodne detalje u vezi

sa funkcionalnošću i UI karakteristikama generisanog softvera. Formalne specifikacije

programa i aplikacija i njihove XML reprezentacije zadovoljavaju ove uslove. Znači, ulaz

u procesu generisanja jednog prototipa izvršne aplikacije je konačna XML specifikacija

aplikacije (FXSA - Final XML Specification of an Application). Izlaz će biti prototip

aplikacije zasnovan na XML-u, namenjen za direktnu interpretaciju u okviru run-time

okruženja.

Renderi su run-time okruženja. Oni su u mogućnosti da transformišu softverske

komponente jedne klase (izvora) u softverske komponente druge klase (izvršne), a zatim

da ih interpretiraju u okviru datog run-time uređaja. Pošto su izvorne softverske

komponente specificirane posredstvom UIML-a (npr. XML) postoje Java renderi, koji su

u mogućnosti da ih transformišu u odgovarajuće Java softverske komponente koje mogu

40

Page 41: XML informacionih sistema.doc

biti izvršene na Java virtuelnoj mašini (JVM - Java Virtual Machine). U ovoj aplikaciji

metodologije izabran je Java Render by Harmonia Incorporation kao programiranje i

run-time okruženje i adaptiran je za interpretiranje generisanih prototipova aplikacije.

Glavna karakteristika tog rendera je da može da interpretira UIML specifikacije na JVM

uređaju.

Pošto je FXSA nezavisan od platforme, za renderovanje je potrebno :

Definisanje pravila mapiranja za transformisanje komponenti FXSA u

odgovarajuće run-time komponente, i

Stvaranje XSL transformacije koja će mapirati FXSA u XML specifikaciju koja

može biti interpretirana od strane softvera za renderovanje.

Na ovaj način XSL transformacije će imati ulogu generatora kompletnog programskog

koda.

Ako je UIML model UI-a nezavisan od run-time okruženja, a nameravamo da

renderujemo UI, tad je potrebno specificirati mapiranje između UI komponenti i run-time

komponenti softvera. UIML obezbeđuje sintaksu za definisanje mapiranja između UI

komponenata i odgovarajućih Java softverskih komponenti.

Java Render by Harmonia inkorporiše samo pravila mapiranja i Java softverske

komponente koje omogućavaju neke od UIML komponenti u određene Java softverske

komponente. Ove komponente implementiraju samo vizuelne karakteristike UI

komponenti. Koriste se da bi se omogućilo vizuelno interpretiranje XBUM-a na JVM.

U drugu ruku, Java Render by Harmonia ne obezbeđuje ni Java softverske

komponente, niti odgovarajuća pravila mapiranja koja podržavaju komunikaciju sa

DBMS-om. Zbog toga Java Render by Harmonia ne podržava ugrađene karakteristike

ponašanja XBUM-a. Zato je bilo potrebno proširenje dodavanjem novih Java softverskih

komponenti namenjenih da podrže ugrađene karakteristike ponašanja XBUM-a.

Java Render by Harmonia je proširen novim Java softverskim komponentama, 41

Page 42: XML informacionih sistema.doc

namenjenim za :

Podržavanje polja formi ekrana koji treba da sadrže i prezentuju podatke iz baze

podataka,

Komunikaciju sa DBMS-om posredstvom JDBC protokola i SQL-a,

Proveravanje ispravnosti ograničenja u okviru transakcionog programa.

Definisana su i pravila mapiranja koja omogućavaju transformisanje karakteristika

ponašanja XBUM-a odgovarajuće Java softverske komponente. Pravila mapiranja za UI

model zasnovan na XML-u (Mapping Rules for XML based UI Model - MRXM) je

UIML dokument. On dopunjuje XBUM pravilima mapiranja koja omogućavaju

interpretaciju XBUM-a na Java Render by Harmonia.

Slika 5. prikazuje proces generisanja i renderovanja prototipa XML aplikacije.

MRXM povećava FXSA mapiranjem UI komponenti u odgovarajuće Java softverske

komponente. Na Slici 5, XSL transformacija je generator jednog prototipa XML

aplikacije. Prototip XML aplikacije je UIML dokument koji je adaptiran za

interpretiranje od strane Java Render by Harmonia na JVM.

Treba naglasiti da se XBUM sam može spojiti sa MRXM pomoću XSL

transformacije. Tako on može biti direktno transformisan samostalni prototip XML

aplikacije baš kao i FXSA. Na ovaj način, omogućeno je vizuelno testiranje tokom

njegovog dizajna.

Na kraju treba naglasiti da poboljšanje FXSA za interpretiranje u specifičnom

run-timse okruženju mora uključiti :

Programiranje softverskih komponenti koje će implementirati XBUM,

Dizajniranje odgovarajućeg UIML dokumenta, koji specificira pravila mapiranja

za XBUM, i

Programiranje odgovarajuće XSL transformacije koja će generisati prototipove

izvršne aplikacije.9

9 B.Radulović, Lj. Eremić, K. Zoltan, Odabrana poglavlja projektovanja informacionih

sistema, Tehnički fakultet ''Mihajlo Pupin'' Zrenjanin, 2002. str.89

42

Page 43: XML informacionih sistema.doc

Slika 7. Proces generisanja prototipa aplikacije

43

Page 44: XML informacionih sistema.doc

ZAKLJUČAK

Trenutno postoje dve verzije XML-a. Prva, XML1.0, inicijalno je definisana

1998. godine. Od tada je pretrpela manje prepravke, ali bez novog broja verzija. Trenutno

je u svom petom izdanju, koje je objavljeno 26 novembar 2008. Široko je prihvaćena i još

uvek se preporučuje za opštu upotrebu. Druga verzija, XML 1.1, objavljena je 4. februara

2004. XML1.1 nije u širokoj upotrebi i preporučuje se za upotrebu onima kojima su

potrebna njegova posebna svojstva.

XML 1.0 i XML 1.1 se razlikuju po karakterima koji su upotrebljeni za imena i

njihove elemente i atribute. XML 1.0 jedino dozvoljava karaktere koji su definisani u

Unikod 2.0 , što uključuje većinu svetskih jezika, a isključuje one koji su dodati u kasnije

Unikod verzije. Među isključenima su pisma Mongolije, Kambodže, Burme i druga.

Skoro bilo koji Unikod karakter može biti upotrebljen u vrednosti karaktera i atributa

XML 1.1 dokumenata, čak i ako karakter nije definisan, bez obzira da li ima kodnu tačku

u važećoj vrednosti Unikoda. Pristup XML-a 1.1 je takav da su samo određeni karakteri

zabranjeni, a da je sve drugo dozvoljeno, a u XML 1.0 samo određeni karakteri su

eksplicitno dozvoljeni, tako da se XML 1.0 ne može prilagoditi dodavanju karaktera u

budućim verzijama Unikoda.

U znakovnim podacima i vrednostima atributa XML 1.1 dozvoljava upotrebu više

kontrolnih znakova od drugih verzija. Zbog robusnosti većine kontrolnih karaktera koji se

nalaze u XML-u 1.1 oni moraju biti izraženi kao numeričke znakovne reference. Među

podržanim kontrolnim karakterima u XML-u 1.1 su i dve isprekidane linije koje

predstavljaju prazan prostor između karaktera. To su jedini kontrolni karakteri koji mogu

biti upisani direktno.

XML-ova osnovna svrha je da olakša deljenje podataka kroz različite informacione

sisteme, posebno kroz one sisteme koji su povezani sa Internetom. Naime, kako raste

www i njegov sadržaj tako rastu i naše potrebe za informacijama (ili barem potrebe za

brzinom dobijanja istih). Pored toga, kako napreduje hardverska infrastruktura tako se

44

Page 45: XML informacionih sistema.doc

menja i pogled na internet. Internet sve manje doživljavamo kao carstvo šarenih reklama

a sve više kao medijum za ozbiljno poslovanje. Informacija na sajtu više nije nekakav

statičan sadržaj već je uglavnom živa informacija - posledica upita nad bazom a internet

polako dobija atribute mrežne infrastrukture koja liči na one tipa LAN. Ono što je nekada

predstavljao HTTP za razvoj internet danas je XML za moderno poslovanje putem

interneta posebno u segmentu B2B (Buisness to buisness – tipično veliki informacioni

sistemi).

Literatura:

45

Page 46: XML informacionih sistema.doc

1. Miro Govedarica, Ivan Luković, Pavle Mogin, Generating XML Based

Specifications of Information Systems, ComSIS Vol. 1, No. 1, February

2004.

2. David Hunter, Kurt Cagle, Dave Gibbons, Nikola Ozu, Jon Pinnoch, Paul

Spencer, Od početka… XML, CET, 2001.

3. Karli Watson, Marco Bellinaso, Ollie Cornes, David Espinosa, Zach

Greenvoss, Christian Nagel, Jacob Hammer Pedersen, Jon D. Reid, Morgan

Skinner, Eric White, Od početka… C#, CET, 2002.

4. Scott Allen, Syed Fahad Gilani, Jacob Hammer Pedersen, Ranga

Raghunathan, Jon Reid, Od početka… C# baze podataka, 2003.

5. Dr Biljana Radulović, Ljubica Eremić, Kazi Zoltan, Odabrana poglavlja

projektovanja informacionih sistema, Tehnički fakultet ''Mihajlo Pupin''

Zrenjanin, 2002.

Internet stranice:

1. http://sr.wikipedia.org/sr/Дизајн pristup stranici 28.09.2014 .

2. http://www.javniregistar.net/vlada/odjeljenja/10/is.htm pristup stranici 01.10.2014

46