120 likes | 258 Views
Bölüm 5 – Şemalar. İçindekiler 5 .1 Neden Şema? 5 .2 Şemaların Yapısı 5 .3 Basit Tip Element Tanımı 5 .4 Kendi Tiplerimizi Tanımlama 5.5 Önceden Belirlenmiş İçeriklerden Bir tanesini Kullanmak 5.6 Alt Üst Limit Değerlerini Belirlemek 5.7 İçerik Uzunlıklarını Belirlemek
E N D
Bölüm5 –Şemalar İçindekiler5.1 Neden Şema?5.2 Şemaların Yapısı5.3 Basit Tip Element Tanımı5.4 Kendi Tiplerimizi Tanımlama 5.5 Önceden Belirlenmiş İçeriklerden Bir tanesini Kullanmak 5.6 Alt Üst Limit Değerlerini Belirlemek 5.7 İçerik Uzunlıklarını Belirlemek 5.8 Element İçeriğine Default Değer Atama
Şemaların Yapısı sema1.xsd <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> ...... </xs:schema> testsema1.xsd <?xml version="1.0" encoding="ISO-8859-9" ?> <root-element-ismi xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNameSpaceSchemaLocation="sema1.xsd"> ...... </root-element-ismi>
Basit Tip Element Tanımı • <xs:element name="sicaklik" type="xs:decimal"/> • <xs:element name=“tur-adi" type="xs:string"/> • <xs:element name="sicaklik" type="xs:integer"/> • <xs:element name="sicaklik" type="xs:positiveInteger"/> • <xs:element name="sicaklik" type="xs:negativeInteger"/> • <xs:element name=“baslangic-tarihi" type="xs:date"/> • <xs:element name=“baslangic-yili" type="xs:gYear"/> • <xs:element name=“baslangic-tarihi" type="xs:gYearMonth"/> • <xs:element name=“baslangic-tarihi" type="xs:gMonthDay"/> • <xs:element name=“baslangic-tarihi" type="xs:gMonth"/> • <xs:element name=“baslangic-tarihi" type="xs:gDay"/>
Kendi Tip Tanımlamalarımızı Geliştirmek • Bir element içinde kendi tipimizi tanımlamak <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=“kayıt-no”> <xs:simpleType> <xs:restriction base=“xs:string”> <xs:pattern value=“\d{4}-\c{4}”/> < /xs:restriction > </xs:simpleType> </xs:element> </xs:schema>
Kendi Tip Tanımlamalarımızı Geliştirmek • Bir element içinde kendi tipimizi tanımlamak <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=“kayıt-no”> <xs:simpleType> <xs:restriction base=“xs:string”> <xs:pattern value=“\d{4}-(\c{4})+”/> < /xs:restriction > </xs:simpleType> </xs:element> </xs:schema>
Kendi Tip Tanımlamalarımızı Geliştirmek • Bir element içinde kendi tipimizi tanımlamak <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=“kayıt-no”> <xs:simpleType> <xs:restriction base=“xs:string”> <xs:pattern value=“KYT-NO:\d{4}”/> < /xs:restriction > </xs:simpleType> </xs:element> </xs:schema>
Kendi Tip Tanımlamalarımızı Geliştirmek • Elementten bağımsız kendi tipimizi tanımlamak <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:simpleType name=“kayıt-no”> <xs:restriction base=“xs:string”> <xs:pattern value=“KYT-NO:\d{4}”/> < /xs:restriction > </xs:simpleType> <xs:element name=“ogr-no” type=“kayıt-no”> <xs:element name=“sicil-no” type=“kayıt-no”>
Önceden Belirlenmiş İçerikleriden Bir Tanesini Kullanmak sema2.xsd <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=“tur-adi”> <xs:simpleType> <xs:restriction base=“xs:string”> <xs:enumeration value=“Ege Turu”/> <xs:enumeration value=“Karadeniz Turu”/> <xs:enumeration value=“Akdeniz Turu”/> <xs:enumeration value=“Güneydoğu Turu”/> < /xs:restriction > </xs:simpleType> </xs:element> </xs:schema>
Önceden Belirlenmiş İçerikleriden Bir Tanesini Kullanmak sema3.xsd <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=“tur-adi”> <xs:simpleType> <xs:restriction base=“xs:string”> <xs:pattern value=“Ege Turu | Karadeniz Turu | Akdeniz Turu | Güneydoğu Turu ”/> < /xs:restriction > </xs:simpleType> </xs:element> </xs:schema>
Alt ve Üst Değerlerini Belirlemek sema4.xsd <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=“kontenjan”> <xs:simpleType> <xs:restriction base=“xs:integer”> <xs:maxInclusive value=“170”/> (170 dahil) <xs:maxExclusive value=“170”/> (170 hariç) <xs:minExclusive value=“170”/> (170 hariç) <xs:minInclusive value=“170”/> (170 dahil) < /xs:restriction > </xs:simpleType> </xs:element> </xs:schema> Dördünden biri kullanılabilir
İçerik Uzunluklarını Belirlemek sema5.xsd <?xml version="1.0" encoding="ISO-8859-9" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=“konaklama”> <xs:simpleType> <xs:restriction base=“xs:string”> <xs:length value=“20 ”/> <xs:maxLength value=“20 ”/> <xs:minLength value=“20 ”/> < /xs:restriction > </xs:simpleType> </xs:element> </xs:schema> Üçünden biri kullanılabilir
Element İçeriğine Default Değer Atama • <xs:element name=“ulaşım” type=“xs:string” fixed=“otobüs”/> • <xs:element name=“ulaşım” type=“xs:string” default=“otobüs”/> • fixed: element içeriğini belirtilen değerden faklı atama yapamazsınız • default: içerik farklı olabilir.