Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Ertan Deniz Öğretim Görevlisi.

Benzer bir sunumlar


... konulu sunumlar: "Ertan Deniz Öğretim Görevlisi."— Sunum transkripti:

1 Ertan Deniz Ertan.deniz70@gmail.com Öğretim Görevlisi

2  XML Şema  Doküman içinde gezinme (Xpath)  Doküman dönüştürme (XSLT)

3  Michael P. Papazoglou, Web Services, 1st Edition, © Pearson Education Limited 2008. (Kitap sunumundan uyarlandı.)

4 Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008  XML dokümanlarının içeriğini ve yapısını tanımlayan bir dokümandır.  Şema genel olarak, veritabanı sistemlerinde, mantıksal yapıyı ifade etmek için kullanılır.  Şemalar, yapısal ilişkiler, setteki eleman sayısı, geçerli değerler ve verinin tipleri gibi ilave (metadata) veri özellikleri sağlarlar.  Şema içindeki her bir tip, referans verilen XML dokümanı için, veri özelliklerini tanımlayan, kuralları ve kısıtları uygulayan bir metod gibi davranır.  XML şema, şema içindeki elemanları ve öznitelikleri tanımlar ve elemanların doküman yapısı içindeki düzenlenme yöntemlerini belirler.

5 Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008 Sophie Jones 34 “Person.xml” Dosyası <xs:element name="Last“ type="xs:string"/> “Person.xsd” dosyası

6 Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008  Açıklama yazma (Annotation)  Eleman adı, tipi  Basit tipler (Int, String)  Karmaşık tipler  Minimum ve Maximum değerler (MinOccurs,MaxOccurs)  Öznitelik adı,tipi  Elemanların sırası önemli (Sequence)  Herhangi bir eleman seçilebilir (Choice)  Tüm elemanlar gerekli, sıra önemli değil (All)  Genişletme (Extension), Sınırlama (Restriction)

7 Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008 One item of a purchase order with its details Needs to be specified in US$ Elemanlar ve içerikleriElemanlar ve içerikleri

8 Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008 Öznitelikler ve öznitelik grupları

9 Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008

10 < xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:PO="http://www.plastics_supply.com/PurchaseOrder" targetNamespace="http://www.plastics_supply.com/PurchaseOrder"> Michael P. Papazoglo u, Web Services, 1 st Edition, © Pearson Education Limited 2008

11

12 Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008 <xsd:element name="shippingAddress" type="PO:Address" minOccurs= "1" maxOccurs="1"/> <xsd:element name="billingAddress" type="PO:Address" minOccurs= "1" maxOccurs="1"/> </xsd:complexType BillingAdress ve shippingAdress için, temel Adress tipinin kullanıldığı PurchaseOrder. (Değişik bir tip)

13 Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008 Plastic Products 459 Wickham st. Fortitude Valley QLD 4006 Australia 158 Edward st. QLD 4000 Australia 2002-09-15 Herhangi bir örnek XML dokümanı, temel “Adress” tipinden türetilmiş herhangi bir tipi, “billingAddress” ve “shippingAddress” tipleri için kullanabilir. “billingAddress” için “AustralianPostalAddress” tipi, “shippingAddress” için “AustralianAddress” tipi kullanılmıştır.

14  XML Şema  Doküman içinde gezinme (Xpath)  Doküman dönüştürme (XSLT)

15  XML dokümanı içinde bazı bölümleri bulmak için yazılan ifadelerin geliştirme (yazma) standardıdır.  Xpath, XML dokümanının bir ağaç yapısında sorgulanmasını sağlayan bir dildir.  XML dokümanı içinde nodların seçilmesi Michael P. Papazoglou, Web Services, 1 st Edition, © Pearson Education Limited 2008

16 Kenneth M.Anderson, CSCI 7818 Lecture

17  Örnek Xpath ifadeleri  gradebook/student/grade  Tüm “grade” nodlarını seçer.  XPath ile özniteliklerde seçilebilir.  gradebook/student/grade[@name=“hw3”]  Ek örnekler  //grade “Kök noddan başlarak “grade” nodlarını seçer.”  gradebook/student[2] “2. “student” nodunu seçer.” Kenneth M.Anderson, CSCI 7818 Lecture

18  XML Şema  Doküman içinde gezinme (Xpath)  Doküman dönüştürme (XSLT)

19  XSLT – XML stil dilidir. Başka biçimlere dönüştürmek için kullanılır. (XML Stylesheet Language, Transformations)  XML veriyi tanımlamak için kullanılır. Aynı zamanda veriyi de içerir. XSLT, XML içeriğini formatlamak ve dönüştürmek için kullanılır. (HTML veya diğer istenen biçimlere. Bu dönüşüm sonucunda, yine XML elde edilebilir.)  XSLT, Xpath ifadelerini kullanarak, XML dokümanın bölümleri seçer. Michael P. Papazoglou, Web Services, 1st Edition, © Pearson Education Limited 2008

20  XSLT XML stilleri çalışması kapsamında geliştirilmiştir.  Stil (Stylesheet) nedir ?  Stil, sunum bilgilerini, içerikten bağımsız olarak belirlemek için kullanılan bir araçtır.  HTML’ de stil  Web’te CCS (Cascading stylesheets) adında bir stil dili var.  XML’in diğer tiplere dönüştürülmesini sağlayan mekanizmaları belirler.  XML->XML  XML->HTML  XML->PDF Kenneth M.Anderson, CSCI 7818 Lecture

21  XSLT’nin anlaşılması için, XML dokümanları ağaç yapısında görülmelidir.  XSLT, bir ağaç yapısının, başka bir ağaç yapısına dönüştürülmesini sağlayan kuralları sağlar.  Stil dokümanında belirtildiği gibi kaynak ağaç gezilir ve stil dokümanı içindeki kurallara göre hedef ağaç üretilir. Kenneth M.Anderson, CSCI 7818 Lecture

22  XSLT, stil dokümanlarını kullanarak dönüştürme işlemini yapar. Stil dokümanları da, XML dokümanlarıdır.  Tüm XSLT stil dokümanları, aşağıdaki formdadır : <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> Şablonlar ve dönüştürme kuralları buraya yazılır. Kenneth M.Anderson, CSCI 7818 Lecture

23  Stil dokümanında, kaynak XML’in nodlarının “match” edildiği şablonlar vardır.  Her bir şablon, hedef ağaç yapısında ne üretileceğini belirler.  Match="/" Şablonu, XML dokümanın Kök elemanı ile ilişkilendirir.  Bir şablon aşağıdaki gibidir : Grade Book Kenneth M.Anderson, CSCI 7818 Lecture

24 Aynı XML dokümanı, farklı stil dokümanları kullanılarak XML,HTML,PDF e dönüştürülebilir.

25  XSLT işlemcisi, XML dokümanı ve stil dokümanını alır.  Kaynak ağaç üzerinde, gezinmeye kök noddan başlar ve uyan bir şablon olup olmadığı kontrol edilir :  Varsa, şablon uygulanır ve “xsl:apply-templates” elemanı aranır : Böyle bir eleman varsa, gezinmeye devam eder. Böyle bir eleman yoksa, gezinme durur.  Uygun şablon yoksa, uygun bir şablon için ağaç içinde aşağı doğru gezinmeye devam eder. Kenneth M.Anderson, CSCI 7818 Lecture

26  “apply-templates” işaretleme elemanı, XSLT işlemcisinin, uygun bir şablon bulunduktan sonra, gezinmeye devamını belirler.  “apply-templates” elemanı, “select” özniteliği içerebilir. Bu öznitelikte, yer alan Xpath ifadesi ile, belli çocuk elemanlara gezinme devam eder.  Tüm çocuklar gezilir.  “name” özniteliği “HW4” değerine eşit olan tüm “grade” nodları gezilir. Kenneth M.Anderson, CSCI 7818 Lecture

27 Do something here...  “Select” özniteliği, döngü içinde gezilecek nodları seçen, bir Xpath ifadesidir. Kenneth M.Anderson, CSCI 7818 Lecture

28 Grade Book Grade: Kenneth M.Anderson, CSCI 7818 Lecture

29 Grade Book Grade: 10 Grade: 7 Grade: 6 Grade: 10 … more grades here... Kenneth M.Anderson, CSCI 7818 Lecture Grade Book  Grade: 10  Grade: 7  Grade: 6  Grade: 10 HTML Result

30 Kenneth M.Anderson, CSCI 7818 Lecture  <xsl:when test = “position()=last()”> Son eleman için işlem... <xsl:when test = “position()=first()”> Do something for first element Diğer elemanları için işlem...

31 Kenneth M.Anderson, CSCI 7818 Lecture  Tüm “student” nodları seçilir, “name” kolonuna göre sıralanır ve tümüne şablon uygulanır.

32  Standartlar geniş – Genel bir giriş sunuldu. –  Xpath Standard http://www.w3.org/TR/xpath  XSLT Standard Referans http://www.w3.org/TR/xslt/  XSLT Genel http://www.xslt.com/  XSLT örnek http://www.w3schools.com/xsl/tryxslt.asp?xmlfile=cdc atalog&xsltfile=cdcatalog http://www.w3schools.com/xsl/tryxslt.asp?xmlfile=cdc atalog&xsltfile=cdcatalog  XSLT Referans http://www.zvon.org/xxl/XSLTreference/Output/index. html Kenneth M.Anderson, CSCI 7818 Lecture

33  Michael P. Papazoglou, Web Services, 1st Edition, © Pearson Education Limited 2008. (Book Slides)  Kenneth M.Anderson, CSCI 7818 – XSLT Overview http://www.cs.colorado.edu/~kena/classes/7818/f08/lectures/lecture_2_xslt_ overview.pdf http://www.cs.colorado.edu/~kena/classes/7818/f08/lectures/lecture_2_xslt_ overview.pdf  XSLT ve Xpath resources http://www.w3schools.com .NET XML Tools Tutorial .NET Xpath Sample (Code Project) http://www.codeproject.com/KB/XML/gsxpathtutorial.aspx

34 İlginize teşekkürler...


"Ertan Deniz Öğretim Görevlisi." indir ppt

Benzer bir sunumlar


Google Reklamları