XML. Miroslav Trajanović. Šta je XML

Similar documents
The <schema> Element. <?xml version="1.0"?> <xs:schema>... </xs:schema>

Introduction to XML. M2 MIA, Grenoble Université. François Faure

Data formats. { "firstname": "John", "lastname" : "Smith", "age" : 25, "address" : { "streetaddress": "21 2nd Street",

XML (Extensible Markup Language)

markup language carry data define your own tags self-descriptive W3C Recommendation

Bioinforma)cs Resources XML / Web Access

XML extensible Markup Language

Software Engineering Methods, XML extensible Markup Language. Tutorial Outline. An Example File: Note.xml XML 1

Infrastruktura za elektronsko poslovanje (SI3IEP) Nemanja Kojić XML. extensible Markup Language. Copyright (C) 2010 by Nemanja Kojić

11. EXTENSIBLE MARKUP LANGUAGE (XML)

Web services CSCI 470: Web Science Keith Vertanen Copyright 2011

The components of a basic XML system.

EAE-2037 Loading transactions into your EAE/ABSuite system. Unite 2012 Mike Bardell

Extensible Markup Language (XML) Hamid Zarrabi-Zadeh Web Programming Fall 2013

PREDMET. Osnove Java Programiranja. Čas JAVADOC

CSS CSS. selector { property: value; } 3/20/2018. CSS: Cascading Style Sheets

Web Programming. Meta-markup Languages

Web Computing. Revision Notes

EXtensible Markup Language XML

Extensible Markup Language (XML) What is XML? Structure of an XML document. CSE 190 M (Web Programming), Spring 2007 University of Washington

but XML goes far beyond HTML: it describes data

XML: a "skeleton" for creating markup languages you already know it! <element attribute="value">content</element> languages written in XML specify:

XML CSC 443: Web Programming

MANAGING INFORMATION (CSCU9T4) LECTURE 2: XML STRUCTURE

INTERNET PROGRAMMING XML

Web Programming Paper Solution (Chapter wise)

INTERNET & WEB APPLICATION DEVELOPMENT SWE 444. Fall Semester (081) Module 4 (VII): XML DOM

What is XML? XML is designed to transport and store data.

Vežbe - XII nedelja PHP Doc

Extensible Markup Language (XML) What is XML? An example XML file. CSE 190 M (Web Programming), Spring 2008 University of Washington

Start learning XML! Learn by examples! With our editor, you can edit XML and click on a test button to view the result.

Aplikativni softver. XML Schema

A) XML Separates Data from HTML

From (Copyright Refsnes Data) XML stands for EXtensible Markup Language.

Internet Technologies 11-XML. F. Ricci 2010/2011

VRIJEDNOSTI ATRIBUTA

Web Programming Step by Step

Svi Java tipovi imaju ekvivalentan tip u jeziku Scala Većina Scala koda se direktno preslikava u odgovarajući Java konstrukt

E-Applications. XML and DOM in Javascript. Michail Lampis

XSL Languages. Adding styles to HTML elements are simple. Telling a browser to display an element in a special font or color, is easy with CSS.

Informacioni sistemi i baze podataka

Osnove programskog jezika C# Čas 5. Delegati, događaji i interfejsi

XML for Android Developers. partially adapted from XML Tutorial by W3Schools

pojedinačnom elementu niza se pristupa imeniza[indeks] indeks od 0 do n-1

8/1/2016. XSL stands for EXtensible Stylesheet Language. CSS = Style Sheets for HTML XSL = Style Sheets for XML. XSL consists of four parts:

Osnove programskog jezika C# Čas 4. Nasledjivanje 2. deo

Uvod u relacione baze podataka

XML. Presented by : Guerreiro João Thanh Truong Cong

APLIKATIVNI SOFTVER Front End: HTML, CSS, JavaScript

CSE 154 LECTURE 23: XML

Sveučilište u Zagrebu PMF Matematički odsjek. Mreže računala. Vježbe 08. Zvonimir Bujanović Slaven Kožić Vinko Petričević

extensible Markup Language

Solutions. a. Yes b. No c. Cannot be determined without the DTD. d. Schema. 9. Explain the term extensible. 10. What is an attribute?

Izrada VI laboratorijske vježbe

Introduction Syntax and Usage XML Databases Java Tutorial XML. November 5, 2008 XML

Web Services Part I. XML Web Services. Instructor: Dr. Wei Ding Fall 2009

Semantic Web. XML and XML Schema. Morteza Amini. Sharif University of Technology Fall 94-95

EXtensible Markup Language XML

PRINCIPI SOFTVERSKOG INŽENJERSTVA TIM NAZIV_TIMA

VHDLPrimeri Poglavlje5.doc

Extensible Stylesheet Language jezik za definiranje stila XML dokumenta

COMP20008 Elements of Data Processing. Week 1: Lecture 2. Data format and storage

extensible Markup Language

Tema 8: Koncepti i teorije relevantne za donošenje odluka (VEŽBE)

NATIONAL DIPLOMA IN COMPUT TER TECHNOLOGY

Week 5 Aim: Description. Source Code

CSC System Development with Java Working with XML

2. XML jezik za označavanje

Translating XSLT into XQuery

Programiranje Internet aplikacija

CLASS DISCUSSION AND NOTES

Programiranje Internet aplikacija (IR4PIA)

Mašinska vizija. Dr Nenad Jovičić tnt.etf.rs/~mv

xmlns:gu=" xmlns:uky="

Jezik Baze Podataka SQL. Jennifer Widom

XML. Marie Dubremetz Uppsala, April 2014

<?xml version = 1.0 encoding= windows-874?> <?xml-stylesheet type= text/css href= #xmldocs?> <style id= xmldocs > element-name{ } </style>

User Interaction: XML and JSON

Session 23 XML. XML Reading and Reference. Reading. Reference: Session 23 XML. Robert Kelly, 2018

Programiranje Internet aplikacija

UPUTSTVO ZA KORIŠĆENJE NOVOG SPINTER WEBMAIL-a

UNIVERZITET U BEOGRADU ELEKTROTEHNIČKI FAKULTET

Introduction to XML. An Example XML Document. The following is a very simple XML document.

COMP9321 Web Application Engineering. Extensible Markup Language (XML)

XML. Uvod. Šta je XML

Programiranje III razred

VB komande. Programiranje 1

COMP9321 Web Application Engineering

Ovde će se raditi na funkcijama konverzija: konverzija tipa datuma u znak tip i obrnuto, konverzija broja u karakter tip i obrnuto

Corpus Linguistics. Linguistic Annotation. Corpus markup. Mark-up schemes. Character encodings. Corpus annotation. Motivation.

Internet programiranje

Računarske osnove Interneta (SI3ROI, IR4ROI)

Sveučilište u Zagrebu Fakultet strojarstva i brodogradnje. WEB programiranje HTML & CSS

7.1. Redovna datoteka sa slogovima koji se odnose na kupnje i prodaje valuta na tržištu stranih sredstava plaćanja

XML. extensible Markup Language. ... and its usefulness for linguists

Uputstvo za podešavanje mail klijenta

Windows Server 2012, VDI Licenciranje najprodavanijeg servera, što je novo, VDI licenciranje. Office 2013 / Office 365

Prirodno-matematički fakultet u Nišu Departman za fiziku. dr Dejan S. Aleksić Programiranje u fizici

Java EE 7: Back-end Server Application Development 4-2

XML: extensible Markup Language

Transcription:

XML Miroslav Trajanović Šta je XML XML je skraćenica zaextensible Markup Language XML je proširivi jezik označavanja(markup language) XML je projektovan da strukturira, čuva i prenosi podatke između aplikacija Za razliku od HTML, XML tagovi nisu standardizovani. Korisnici sami definišu tagove XML je projektovan da opisuje samog sebe XML je preporukaw3c iz 1998.

Primer poruke Cola Cola podseća Delta Holding da ističe rok plaćanja <poruka> <primalac>delta Holding</primalac> <posiljaoc>coca Cola D.O.O</posiljaoc> <zaglavlje>podsecanje</zaglavlje> <telo>sutra vam ističe rok za plaćanje računa</telo> </poruka> Poruka je samo opisujuća XML dokument ne radi ništa Potreban je softver za slanje, prijem i prikaz poruka Korišćenje XML Korisnici sami definišu strukturu dokumenata i tagove koji opisuju informacije Aplikacije mogu da interpretiraju tagove po potrebi XML pomaže da se podaci odvoje od HTML koda. Na taj način je mogućdinamički prikaz strane. HML se koristi za definisanje izgleda, a pomoću XML se podaci mogu menjati Pomoću umetnutogjavascript-a mogu se pročitati podaci iz neke XML datoteke i prikazati unutar HTML strane

Razmena podataka između aplikacija ili baza podataka Sistem A Sistem B Program za konverziju podataka iz formata A u XML XML datoteka Program za konverziju podataka XML datoteke u format B XML dokument ima strukturu stabla <?xml version="1.0" encoding="iso-8859-1"?> <poruka> <primalac>delta Holding</primalac> <posiljaoc>coca Cola D.O.O</posiljaoc> <zaglavlje>podsecanje</zaglavlje> <telo>sutra vam ističe rok za plaćanje računa</telo> </poruka>

XML dokument ima strukturu stabla <root> <child> <subchild>...</subchild> </child> </root> Primer

Primer <bookstore> <book category="cooking"> <title lang="en">everyday Italian</title> <author>giada De Laurentiis</author> <year>2005</year> <price>30.00</price> </book> <book category="children"> <title lang="en">harry Potter</title> <author>j K. Rowling</author> <year>2005</year> <price>29.99</price> </book> <book category="web"> <title lang="en">learning XML</title> <author>erik T. Ray</author> <year>2003</year> <price>39.95</price> </book> </bookstore> XML - Sintaksna pravila Mora da postoji završni tag <price>39.95</price> XML pravi razliku između velikih i malih slova Ova dva taga nisu ista <Cena> i <cena> Ugnježdavanje mora biti ispravno <b><i>this text is bold and italic</b></i> neispravno <b><i>this text is bold and italic</i></b> ispravno

XML - Sintaksna pravila XML mora da ima koreni element koji je roditelj svim podelementima (child) Svi atributi moraju biti unutar navodnika Netačno <note datum=12/11/2007> <to>tove</to> <from>jani</from> </note> Tačno <note datum="12/11/2007"> <to>tove</to> <from>jani</from> </note> Entitetske reference < < less than > > greater than & & ampersand &apos; ' apostrophe " " quotation mark

Komentari i blanko karakter <! Ovo je komentar--> Blanko karakteri unutar teksta se ne odbacuju Ovde ima nekoliko blanko karaktera i oni se ne odbacuju XML element XML element je bilo šta od startnog taga do završnog taga Jedan element može da sadrži druge elemente, običan tekst ili oba Elementi mogu da imaju atribute

Primer <bookstore> <book category="children"> <title>harry Potter</title> <author>j K. Rowling</author> <year>2005</year> <price>29.99</price> </book> <book category="web"> <title>learning XML</title> <author>erik T. Ray</author> <year>2003</year> <price>39.95</price> </book> </bookstore> Atribut Tekstualni sadržaj Sadržaj u obliku ugnježdenih elemenata Pravila za davanje imena Imena mogu da se sastoje od slova, brojeva i drugih karaktera Ime ne može da počne brojem ili tačkom Ime ne može da započne stringom xml Ime ne može da sadrži blanko karakter Bilo koje ime može da se koristi Nema rezervisanih reči

Dobra praksa za davanje imena Imena treba da budu opisna. <datum_prijema>, <datum_slanja>. Imena treba da budu kratka: <broj_racuna> a ne: <ovo_je_broj_racuna>. Izbegavati znak"- jer neki programi to mogu doživeti kao oduzimanje Izbegavati znak". jer neki programi mogu drugi deo imena doživeti kao osobinu prvog dela. Primer: <broj.racuna> Izbegavati znak":". Dvotačka je rezervisana za namespaces Ne engleska slova šžéòásu sasvim legalna u XML-u,ali se može dogoditi da ih neki softveri ne podržavaju Moguće je proširiti XML elemente Nekom XML dokumentu je moguće dodati nove elemente, ali će aplikacije sa kojima su radili stari dokumenti i dalje moći da funkcionišu <?xml version="1.0" encoding="iso-8859-1"?> <poruka> <primalac>delta Holding</primalac> <posiljaoc>coca Cola D.O.O</posiljaoc> <zaglavlje>podsecanje</zaglavlje> <telo>sutra vam ističe rok za plaćanje računa</telo> <iznos>578300</iznos> </poruka> Novi element

XML atributi Obezbeđuju dodatne informacije o elementu Atributi se pišu unutar startnog taga Atributi se koriste da bi se obezbedile informacije koji nisu deo podataka Izbegavati korišćenje atributa. Bolje preko elemenata Atribute koristiti samo kao metadata <file type="gif">computer.gif</file> Validacija XML-a XML dokumenti sa korektnom sintaksom su "Well Formed" XML dokumenti. XML koji je proveren na osnovu DTD je"valid" XML dokument. DTD - Document Type Definition

Well Formed XML Dokumenti "Well Formed" XML document ima korektnu XML sintaksu. XML dokument mora da ima koreni element XML element mora da ima završni element XML tagovi razlikuju velika i mala slova (case sensitive) XML elementi treba da budu ispravno ugnježdeni XML atributi treba da budu unutar navodnika Validni XML Dokumenti Validni XML dokument je "Well Formed" XML dokument koji takođe odgovara pravilima Document Type Definition (DTD): <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE note SYSTEM "Note.dtd"> <note> <to>tove</to> <from>jani</from> <heading>reminder</heading> <body>don't forget me this weekend!</body> </note>

Note.dtd DTD definiše strukturu XML dokumenta preko liste legalnih elemenata <!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]> PCDATA - parsed character data XML Schema alternativa za DTD <xs:element name="note"> <xs:complextype> <xs:sequence> <xs:element name="to" type="xs:string"/> <xs:element name="from" type="xs:string"/> <xs:element name="heading" type="xs:string"/> <xs:element name="body" type="xs:string"/> </xs:sequence> </xs:complextype> </xs:element>

XML Validator XML dokument koji nije validan će zaustaviti izvršenje aplikacije Svaki XML dokument treba validirati pre upotrebe posebnim programima za validaciju Prikazivanje podataka XML dokumenti ne sadrže podatke o tome kako će se podaci prikazati, nego samo definišu značenje podataka Za prikazivanje podataka se koriste tehnologije: CSS (Cascading Style Sheets) XSLT (extensible Stylesheet Language Transformations) W3C konzorcijum preporučuje XSLT

CSS Poseban CSS dokument se kreira sa informacijama o načinu prikazivanja podataka u veb čitaču Primer XML sa CSS definicijom <?xml version="1.0" encoding="iso-8859-1"?> <?xml-stylesheet type="text/css" href="cd_catalog.css"?> <CATALOG> <CD> <TITLE>Empire Burlesque</TITLE> <ARTIST>Bob Dylan</ARTIST> <COUNTRY>USA</COUNTRY> <COMPANY>Columbia</COMPANY> <PRICE>10.90</PRICE> <YEAR>1985</YEAR> </CD> <CD> <TITLE>Hide your heart</title> <ARTIST>Bonnie Tyler</ARTIST> <COUNTRY>UK</COUNTRY> <COMPANY>CBS Records</COMPANY> <PRICE>9.90</PRICE> <YEAR>1988</YEAR> </CD>. </CATALOG>

Primer CSS definicije CATALOG { background-color: #ffffff; width: 100%; } CD { display: block; margin-bottom: 30pt; margin-left: 0; } TITLE { color: #FF0000; font-size: 20pt; } ARTIST { color: #0000FF; font-size: 20pt; } COUNTRY,PRICE,YEAR,COMPANY { display: block; color: #000000; margin-left: 20pt; } XSLT -extensible Stylesheet Language Transformations Pomoću XSLT-a se XML dokument prevodi u HTML dokument pre nego se on prikaže u veb čitaču Transformacija se može obaviti u samom veb čitaču ili na serveru