Programrendszerek fejlesztése Bilicki Vilmos

Slides:



Advertisements
Hasonló előadás
C# nyelvi áttekintő A „Programozás C# nyelven (Illés Zoltán)”
Advertisements


Kamarai prezentáció sablon
Készítette: Boros Erzsi
Weblap szerkesztés HTML oldal felépítése Nyitó tag Záró tag Nyitó tag Záró tag oldalfej tözs.
A társadalmi tényezők hatása a tanulásra
1 XML •Az Extensible Markup Language (XML, kiterjeszthető leíró nyelv) a W3C által ajánlott általános célú leíró nyelv speciális célú leíró nyelvek létrehozására.
Erőállóképesség mérése Találjanak teszteket az irodalomban
MATEMATIKA Év eleji felmérés 3. évfolyam
Humánkineziológia szak
Mellár János 5. óra Március 12. v
Matematika - 5. évfolyam © Kačmárová Fordította: Balogh Szilveszter.
Elektromos mennyiségek mérése
Az új történelem érettségiről és eredményeiről augusztus Kaposi József.
Utófeszített vasbeton lemez statikai számítása Részletes számítás
JavaScript.
A tételek eljuttatása az iskolákba
Elektronikai Áramkörök Tervezése és Megvalósítása
Fejlett programozási technikák II.
VÁLOGATÁS ISKOLÁNK ÉLETÉBŐL KÉPEKBEN.
Hernyák Zoltán XML validálás.
Védőgázas hegesztések
1. IS2PRI2 02/96 B.Könyv SIKER A KÖNYVELÉSHEZ. 2. IS2PRI2 02/96 Mi a B.Könyv KönyvelésMérlegEredményAdóAnalitikaForintDevizaKönyvelésMérlegEredményAdóAnalitikaForintDeviza.
ADATBÁZISOK
C++ Alapok, első óra Elemi típusok Vezérlési szerkezetek
6. előadás Parametrikus polimorfizmus. Generikus programozás. Az Ada sablonok.
Önleíró adatok: XML INFO ÉRA, Békéscsaba
Szerkezeti elemek teherbírásvizsgálata összetett terhelés esetén:
Sárgarépa piaca hasonlóságelemzéssel Gazdaság- és Társadalomtudományi kar Gazdasági és vidékfejlesztési agrármérnök I. évfolyam Fekete AlexanderKozma Richárd.
Webszerkesztés Stíluslapok (CSS).
NOVÁK TAMÁS Nemzetközi Gazdaságtan
SOAP alapismeretek A SOAP egy egyszerű XML alapú protokoll, ami lehetővé teszi, hogy az alkalmazások információt cseréljenek a HTTP-én keresztül. Forrás:
DRAGON BALL GT dbzgtlink féle változat! Illesztett, ráégetett, sárga felirattal! Japan és Angol Navigáláshoz használd a bal oldali léptető elemeket ! Verzio.
XML támogatás adatbázis-kezelő rendszerekben
PHP I. Alapok. Mi a PHP? PHP Hypertext Preprocessor Szkriptnyelv –Egyszerű, gyors fejlesztés –Nincs fordítás (csak értelmező) Alkalmazási lehetőségek:
1.NET web szolgáltatások XSLT Bilicki Vilmos
.NET web szolgáltatások
1.NET web szolgáltatások XSLT programozás XSLT hivatkozások Bilicki Vilmos
szakmérnök hallgatók számára
Access XP Kifejezés-szerkesztő Összehasonlító operátorok:
Logikai szita Izsó Tímea 9.B.
Klasszikus Programozás a FoxPro-ban
2007. május 22. Debrecen Digitalizálás és elektronikus hozzáférés 1 DEA: a Debreceni Egyetem elektronikus Archívuma Karácsony Gyöngyi DE Egyetemi és Nemzeti.
Matematika - 5. évfolyam © Kačmárová Fordította: Balogh Szilveszter.
7. Házi feladat megoldása
Hernyák Zoltán XSLT transzformációk.
Csurik Magda Országos Tisztifőorvosi Hivatal
A klinikai transzfúziós tevékenység Ápolás szakmai ellenőrzése
2006. Peer-to-Peer (P2P) hálózatok Távközlési és Médiainformatikai Tanszék.
Nyitott Kapuk 2010 Beiskolázási kérdőívek értékelése.
QualcoDuna interkalibráció Talaj- és levegövizsgálati körmérések évi értékelése (2007.) Dr. Biliczkiné Gaál Piroska VITUKI Kht. Minőségbiztosítási és Ellenőrzési.
XML fejlesztések TSQL fejlesztések Tábla paraméter SQLCLR fejlesztések 8k limit feloldása Több paraméteres UDA-ek Ordered UDF-ek Entity Framework ADO.NET.
XML adatkezelés 1. témakör Az XML szabvány.
– SQL 3: SELECT - 1. – Tarcsi Ádám, január 31. Adatbázis gyakorlat.
XML Mi az XML?  Extensible Markup Language  Kiterjeszthető jelölő nyelv  Adatok, adatstruktúrák leírására szolgál  A HTML és az SGML tapasztalataira.
Objektum orientált programozás
1. Melyik jármű haladhat tovább elsőként az ábrán látható forgalmi helyzetben? a) A "V" jelű villamos. b) Az "M" jelű munkagép. c) Az "R" jelű rendőrségi.
Virtuális Méréstechnika Sub-VI és grafikonok 1 Makan Gergely, Vadai Gergely v
Mérés és adatgyűjtés laboratóriumi gyakorlat - levelező Sub-VI és grafikonok 1 Mingesz Róbert V
Webprogramozó tanfolyam
BINÁRIS FA Definició: A fa olyanösszefüggő gráf, amelyben nincs kör
Kvantitatív módszerek
Illés Zoltán ELTE Informatikai Kar
> aspnet_regiis -i 8 9 TIPP: Az „Alap” telepítés gyors, nem kérdez, de később korlátozhat.
A KÖVETKEZŐKBEN SZÁMOZOTT KÉRDÉSEKET VAGY KÉPEKET LÁT SZÁMOZOTT KÉPLETEKKEL. ÍRJA A SZÁMOZOTT KÉRDÉSRE ADOTT VÁLASZT, VAGY A SZÁMOZOTT KÉPLET NEVÉT A VÁLASZÍV.
Algoritmizálás, adatmodellezés
1 Az igazság ideát van? Montskó Éva, mtv. 2 Célcsoport Az alábbi célcsoportokra vonatkozóan mutatjuk be az adatokat: 4-12 évesek,1.
1 Fejlett Programozási Technikák 2. 15/2. Fejlett Programozási Technológiák 2. 2 A mai előadás tartalma: DTD XSD XPath XSLT.
XML lekérdezőnyelvek XPath XQuery.
Fejlett Programozási Technikák 2.
Előadás másolata:

Programrendszerek fejlesztése Bilicki Vilmos

A mai előadás tartalma: 2  XPath  XSLT

Irodalom 3  Don Box: Essential XML  us/dnxml/html/desxsdlib.asp us/dnxml/html/desxsdlib.asp  

XSD 4  Típusokat definiálhatunk  Beépített típusokat használhatunk (  Szűkítéses származtatás  Az érték határok mellett a lexikális formátum is definiált (0,1-true,false) -> kompatibilitás

Értékek, Lexikális típusok 5  Beépített adattípusokat használhatunk

Típusok definiálása névtéren belül 6  A felhasználók definiálhatnak típusokat(UDT)  Típus definiáláskor hasonlóan az OO nyelvekhez célszerű névtereket használni

Példa 7 <xsd:schema xmlns:xsd=" targetNamespace=" xmlns:tns="

XSD Alapelemek 8  Egyszerű típus:  xsd:simpleType  csak szöveges elemek értéke és attribútuma lehet  Összetett típus:  xsd:complexType  struktúrát definiál  Elem definiálása:  xsd:element  Attribútum definiálása:  xsd:attribute  Egyszerű típus konstrukció:  xsd:restriction  xsd:union  xsd:list

Használatuk XML-ben 9... Vagy <genericId xmlns:x=" xmlns:xsi=" xsi:type="tns:AuthorId" >

Szűkítési minták 10  xsd:enumeration (lista)  xsd:fractionDigits (a tizedesjegy után)  xsd:length ()  xsd:maxExclusive  xsd:maxInclusive  xsd:maxLength  xsd:minExclusive  xsd:minInclusive  xsd:minLength  xsd:pattern  xsd:totalDigits  xsd:whiteSpace

Példa: Egyszerű típusok

Példa: Lexikális szűkítés

Példa: felsorolás

Példa: unió

Komplex típusok 15  xsd:complexType:  xsd:sequence  xsd:choice  xsd:all  ref  névtér definiálás:  ##any  ##other  ##targetNamespace  ##local  Lista

16

XPath 17  W3C szabvány  Az XML dokumentumot faként kezeli  Gyökér  Elem  Tulajdonság  Szöveg  Megjegyzés  Feldolgozási információ  Névterek  Segítségével csomópontokat, vagy csomópontok csoportjait jelölhetjük ki  Elérési útvonalak csomópontok kijelölésére  XPath operátorok és függvények

Miért használjuk 18 Az XSLT stílus lapokban, minta illesztésre SQL Server-nél, XML-t is tud generálni XPointer-ben, a dokumentumok csatolására A DOM-ban,csomópontok kiválasztására XML XPath

XPath fa struktúra 19  XML dokumentum XPath faként <catalog xmlns="urn:litwareinc"> Blue jeans <catalog xmlns="urn:litwareinc"> Blue jeans "123" "Blue jeans" Root "urn:litware" "comment " "proc-instr" "urn:litwareinc"

A csomópontokból kinyerhető információk 20 Csomópont típusok Gyökér Egyed Tulajdonság Szöveg Névtér Feld. utasítások Megjegyzés Minden csomópont rendelkezik tulajdonságokkal  Tulajdonságok  Érték  Név  Szülő csomóp.  Gyerek csomóp.

Elérési útvonalak 21  Elérési útvonal egy olyan XPath kifejezés mely XML dokumentumban egy vagy több elemet jelöl ki  Lehet:  Relatív  A jelenlegi csomóponthoz viszonyítva  Abszolút  ”/” karakterrel kezdődik  A gyökérhez viszonyítja

Elérési útvonalak 22  Útvonalat ábrázol  Relatív útvonal  Abszolút útvonal  Balról jobbra vannak kiértékelve  Útvonal az XML dokumentumban  Minden lépés három részből áll  Példa lépés product/price /catalog/product/price axis::node-test[predicate]… child::product[price > 35.95][3]

Tengelyek 23 self child descendant parent attribute descendant-or-self ancestor ancestor-or-self following following-sibling preceding-sibling preceding code=123 Root node code= code=

Tengelyek használata 24  A gyakori XPath tengelyeknek van rövidített alakja is  A többinek nincs  Példa – ancestor::node() Tengely child attribute self parent Példa teljes child::price attribute::code self::node() parent::node() Példa rövidített descendant-or-self//price/descendant-or-self()/price

Csomópont kritériumok 25  Név alapján  Egy adott név  Minden csomóp.  Név és névtér  Minden csomóp. a név.térben  Típus alapján  axis::node-type-function()  Például a gyermek tengelyen: text() processing-instruction() comment() node() price * * aprefix:* aprefix:price Attribute examples

Predikátumok használata 26  Egy lépés egy vagy több predikátumot használhat  Csomópont gyűjtemény szűrése  Pozíció  Tartalom  Létezés alapján  Több predikátumot is használhatunk  Balról jobbra vannak kiértékelve axis::node-test[predicate]… product[last()]

Operátorok és függvények használata 27  Csomópont gyűjtemény kifejezések és függvények  Logikai kifejezések és függvények  Szám kifejezések és függvények  Karakterlánc kifejezések és függvények

Csomópont gyűjtemény 28  Az elérési útvonalak csomópont gyűjteményt adnak vissza  Csomópont gyűjteményeket (“ | ”) jellel tudunk összefűzni  Gyűjtemény függvények is használhatóak cd | dvd (cd | /*/(cd | dvd) cd[position() = last()] > 5.8])

Logikai kifejezések 29  Logikai operátorok = != > >= < <=  Logikai függvények  Példa: product[(price > 25 and price 50] true() false() boolean() not() lang() and not(discount-policy)]

Szám kifejezések 30  Egyenlőtlenség  Bináris operátorok, + - * div mod  Függvények  Példa account[balance >= - overdraft-limit] number() floor() ceiling() round() sum() account[sum(transaction-amount) > 0] account[(balance mod 100) > 0]

Karakterláncok 31  Kerekterlánc szűrő  Karakterlánc módosító customer[ "Mac") ] customer[ "Mac") ] 1, 1) "]") normalize-space(" To be or not to be ") substring-before("12/3/1964", "/") or substring-after translate(str, "aeiou", "AEIOU")

Tanácsok 32  Rövidített szintaxist használjuk ha van  Egyszerűbb karbantartani  Kerüljük a túl általános kifejezéseket: //  Ha tudjuk akkor szűkítsük le: /*/product  Ne használjuk a count() –ot arra hogy megnézzük van-e eleme  Használjuk a last()-ot  Ne használjuk a name() a név vizsgálatra  Használjuk a namespace-URI() és local-name() függvényeket helyette

Bevezetés az XSLT-be 33  Az XSLT alkalmazási területei  Az XSLT mint deklaratív programozási nyelv  XSLT stíluslap struktúra  Minták definiálása  Stíluslapok statikus használata  Stíluslapok dinamikus használata

Az XSLT felhasználási területei 34  W3C gondozza  XSL-ből származik  Egy XML dokumentum más struktúrájú domukentummá konvertálása  XML HTML-é konvertálása  XML szöveggé konvertálása  Adat szűrése, kinyerése, összefűzése

XSLT képességek 35  Sok különböző transzformációra képes  Példák:  Egy XML szintaxis másikra cserélése  Adat szűrés  Adat rendezés  XML átstruktúrálás  Számítások elvégzése

XML HTML-é transzformálás 36  XSLT XML dokumentum XSLT stílus lap + XSLT processor HTML dokumentum Reid … Reid … Reid … Reid …

XML más XML szintakszissá 37  Más szintakszis XML dokumentum XSLT stílus lap + XSLT processor Más XML nyelvtan Reid … Reid … <staff-member name="Reid" pay="91000"/> … <staff-member name="Reid" pay="91000"/> …

XSLT mint deklaratív programozási nyelv 38  Szabályokon, nem eljárásokon alapul  A stílus lap szabályok bármilyen sorrendben végrehajthatóak  A stílus lap szabályok egymástól függetlenek lehetnek  A stílus lap szabályok független a bevitel, kimenet sorrendtől

XSLT stíluslap struktúra 39  Egy elem, vagy Felső szintű elemek. Pl.: sablon szabályok XSLT, Implementáció spec., Felh. Def. Utasítás elemek <xsl:template match="/"> … … … </xsl:template> <xsl:apply-templates select="employees/employee" /> <xsl:template match="employee"> … … … </xsl:template> <xsl:value-of select="name" />

Sablon szabályok definiálása 40  A csomópontok kiválasztása a egyezés tulajdonságával  A gyökér elem sablon szabályának definiálása (megvalósítás függő)  Kimenet produkálása a elemmel

Stíluslapok statikus használata 41  Stíluslap statikus használata egy XML dokumentumban  Használjuk a elemet az XML dokumentumban  Adjuk meg a stíluslap helyét … XML document content … … XML document content …

Stíluslapok dinamikus használata 42  XslTransform használata (jelenleg)  XslCommand használata (2005) XslTransform xslttrans = new XslTransform(); eloadas\stylesheet0701.xsl"); eloadas\demo1eredmeny.txt", null); XslTransform xslttrans = new XslTransform(); eloadas\stylesheet0701.xsl"); eloadas\demo1eredmeny.txt", null); XsltCommand xslt = new XsltCommand(); xslt.OnMessageEvent += new QueryEventHandler(MessageCallBack); xslt.Compile("output.xsl"); xslt.Execute("books.xml", "books.html"); XsltCommand xslt = new XsltCommand(); xslt.OnMessageEvent += new QueryEventHandler(MessageCallBack); xslt.Compile("output.xsl"); xslt.Execute("books.xml", "books.html");

Sablon szabályok 43  Sablon szabályok definiálása  Sablon tartalom definiálása  Több sablon szabály használata  Literális eredmény elemek használata

Sablon szabályok definiálása 44  A szintakszis a leggyakrabban alkalmazott elem  match vagy name  XSLT Fa Modell  Az XSLT transzformációk sorrendje   IE alap stíluslapja:  res://msxml3.dll/defaultss.xsl

A sablon tartalom definiálása 45  a csomópont szöveges értékét írja ki  a csomópont XML tartalmát írja ki James Wilson Kathryn Wilson Spouse James Wilson Kathryn Wilson Spouse

Sablon szabályok definiálása 46 <xsl:stylesheet version="1.0" xmlns:xsl=" Employees details, <xsl:stylesheet version="1.0" xmlns:xsl=" Employees details,

Szöveges eredmény elemek 47  HTML, szkript, vagy szöveg másolása a kimeneti fára  XSLT részeket értelmezi az értelmező  A névtér elemek kimásolódnak

Sablon szabály minták 48  XPath kifejezések használata  A rekurzív művelet használata (//)  Boolean operátorok használata employees/employee/empname //employee/empname employees/employee[type='full' or type='part']

Sablonok illesztése válogatott mintára 49  alapértelmezett működése  A sablonokat a gyermek elemekre illeszti  Csak adott gyermek elemekre illeszteni:  A select tulajdonság segítségével

Névterek használata 50 <xsl:stylesheet version="1.0" xmlns:xsl=" xmlns:nw="urn:nwtraders" xmlns:con="urn:contoso" >, <xsl:stylesheet version="1.0" xmlns:xsl=" xmlns:nw="urn:nwtraders" xmlns:con="urn:contoso" >,

Csomópontok sorbarendezése 51  Az XSLT segítségével sorbarendezhetjük a csomópontokat  Használjuk a a elemben  Példa  Minden elemre séma illesztés  A elemek rendezése érték alapján

Több rendező kulcs definiálása 52  Több kulcsot is definiálhatunk  Több elem segítségével  Példa  Rendezzük az elemeket szerint  Majd az elemek azonos elemben név szerint vannak rendezve

Rendezés finomítása 53  a következő tulajdonságokkal rendelkezik:  order – "ascending" vagy "descending"  case-order – "upper-first" vagy "lower-first"  lang – nyelv kód (pl.: "en")  data-type – "text" vagy "number"  Például  Rendezzük az elemeket elem alapján csökkenő sorrendben <xsl:sort select="salary" order="descending" data-type="number"/> <xsl:sort select="salary" order="descending" data-type="number"/>

A kimenet testreszabása 54  Számok formázása  A szám formátumok lokalizálása  A szóközök kezelése  Az eredmény dokumentum definiálása  XML kimenet definiálása  HTML és szöveg kimenet definiálása

Számok formázása 55  A format-number() segítségével format-number( , '#000') Használjuk a,-t mint csoportosító és a.-t mint decimális eválasztót format-number( , '#,000.00') , format-number(number, format-string) Gyakori megoldások 0 a szükséges és # az opcionális számra format-number() használata

Lokális szabályok 56  format-number()-ben Használjuk a -ot a lokalizált szám formátum definiálására <xsl:decimal-format name="Euro" grouping-separator="." decimal-separator=","/> <xsl:decimal-format name="Euro" grouping-separator="." decimal-separator=","/> format-number(1234.5, '#,000.00', 'Euro') 1.234,50 Példa

Kimeneti formátum 57  Az XSLT stílus lapok két fázisban dolgozódnak fel:  Egy eredmény fa generálódik  Az eredmény fa a kimeneti dokumentumba íródik  A segítségével megadhatjuk a kimenet típusát  XML kimenet  HTML kimenet  Szöveg kimenet

XML kimenet 58  Az XSLT két XML kimenet típust tud generálni  Jól formázott XML dokumentumokat  Külső általános egyedek  Az elemben adhatjuk meg <xsl:output method="xml" encoding="iso " indent="yes" cdata-section-elements="company script" doctype-system="employees.dtd"/> <xsl:output method="xml" encoding="iso " indent="yes" cdata-section-elements="company script" doctype-system="employees.dtd"/>

HTML, Szöveg kimenet 59  A segítségével lehet a szöveget testreszabni A segítségével lehet a HTML kimenetet testreszabni <xsl:output method="html" encoding="iso " indent="yes"/> <xsl:output method="html" encoding="iso " indent="yes"/> <xsl:output method="text" encoding="us-ascii"/> <xsl:output method="text" encoding="us-ascii"/>

Stíluslapok beszúrása 60  Egy stíluslap felhasználhat másik stíluslapokat  Ugyanúgy kell használnunk őket … … … … Starter.xsl … Példa

Stíluslapok importálása 61  Egy stíluslap felhasználhat másik stíluslapokat  Az importált stíluslapok felülírhatóak … … Starter.xsl … Példa

Felülírt szabályok 62  Felülírás engedélyezése … … Starter.xsl Példa:

Ciklusok, elágazások 63  Ciklusok használata  Sorbarendezés  Elágazások

Ciklus 64  Csomópontok halmazán mehetünk végig  A utasítás  is ugyanezt csinálja  Biztonságosabb, nem függ a szerkezeti változásoktól  A ciklus gyorsabb és átláthatóbb  Aktuális csomópont pozíciója: position()

Sorrend megadása 65  Az utasítás a utasításon belül  Ugyanaz mint az eleme

Elágazások "> High Tax "> High Tax ">High ">Avg -- Low ">High ">Avg -- Low --

Hivatkozott dokumentumok használata 67 Regions.xml Philips R Philips R <xsl:value-of select="document('Regions.xml') <xsl:value-of select="document('Regions.xml') Employees.xml AddressbyRegion.xsl

A mai előadás tartalma: 68  XPath  XSD  XSLT

A következő előadás tartalma 69  JDBC