SlideShare a Scribd company logo
Date: 11.07.2019
Recap
• DTD attributes
• Attributes type
• Default attribute value
• DTD Entities
• Internal entities
• External entities
• Pre-defined entities
• External Entities
• Parameter entities
XML schema
• An XML schema is used to define the structure
of an XML document.
• It is like DTD but provides more control on XML
structure.
• The XML Schema language is referred to as XML
Schema Definition (XSD)
• XML Schema Definition Language at
http://www.w3c.org/XML/Schema.
Contactlist.xsd
• <?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name=“contactlist">
<xs:complexType>
<xs:sequence>
<xs:element name=“fullname" type="xs:string"/>
<xs:element name=“address" type="xs:string"/>
<xs:element name=“phone" type="xs:string"/>
<xs:element name=“email" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
PurchaseOrder.xml Contains a Sample Purchase Order
for Common Items found in a Grocery Store
<PurchaseOrder Tax=”5.76” Total=”75.77”>
<ShippingInformation>
<Name>Dillon Larsen</Name>
<Address>
<Street>123 Jones Rd.</Street>
<City>Houston</City>
<State>TX</State>
<Zip>77381</Zip>
</Address>
<Method>USPS</Method>
<DeliveryDate>2001-08-12</DeliveryDate>
</ShippingInformation>
PurchaseOrder.xml
<BillingInformation>
<Name>Madi Larsen</Name>
<Address>
<Street>123 Jones Rd.</Street>
<City>Houston</City>
<State>TX</State>
<Zip>77381</Zip>
</Address>
<PaymentMethod>Credit card</PaymentMethod>
<BillingDate>2001-08-09</BillingDate>
</BillingInformation>
<Order SubTotal=”70.01” ItemsSold=”17”>
<Product Name=”Baby Swiss” Id=”702890”
Price=”2.89” Quantity=”1”/>
<Product Name=”Hard Salami” Id=”302340”
Price=”2.34” Quantity=”1”/>
</Order>
</PurchaseOrder>
• Declaring Attributes
– Attributes provide additional information to
elements.
– To indicate that a complex element has an
attribute, use the <attribute> element of the XML
Schema Definition Language.
<xs:element name=“fullname" type="xs:string"/>
<xsd:complexType name=”ProductType”>
<xsd:attribute name=”Name” type=”xsd:string”/>
<xsd:attribute name=”Id” type=”xsd:positiveInteger”/>
<xsd:attribute name=”Price”>
<xsd:simpleType>
<xsd:restriction base=”xsd:decimal”>
<xsd:fractionDigits value=”2”/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name=”Quantity” type=”xsd:positiveInteger”/>
</xsd:complexType>
primitive data type• anyURI
• base64Binary
• Boolean
• date
• dateTime
• decimal
• double
• duration
• Float
• gDay
• gMonth
• gMonthDay
• gYear
• gYearMonth
• hexBinary
• NOTATION
• Qname
• string
• time
Derived data type
• Byte
• ENTITIES
• ENTITY
• ID
• IDREF
• IDREFS
• int
• integer
• language
• long
• Name
• Declaring Elements
– Elements within an XML schema can be declared using the
<element> element from the XML Schema Definition
Language.
• Syntax
<element name=”” [type=””] [abstract=””] [block=””]
[default=””] [final=””] [fixed=””] [minOccurs=””]
[maxOccurs=””] [nillable=””] [ref=””] [substitutionGroup=””]/
– The abstract attribute indicates whether the element
being declared may show up directly within the XML
document
– this element must be referenced by another element using
the substitutionGroup attribute.
<xsd:element name=’PurchaseOrder’
type=’PurchaseOrderType’/>
<xsd:complexType name=”PurchaseOrderType”>
<xsd:all>
<xsd:element name=”ShippingInformation”
type=”InfoType” minOccurs=”1” maxOccurs=”1”/>
<xsd:element name=”BillingInformation”
type=”InfoType” minOccurs=”1” maxOccurs=”1”/>
<xsd:element name=”Order” type=”OrderType”
minOccurs=”1” maxOccurs=”1”/>
</xsd:all>
the child elements can appear in any order
• Declaring Complex Elements
– <complexType> element is used to define an element that contain
child elements and/or attributes.
<xsd:complexType name=’’ [abstract=’’] [base=’’] [block=’’] [final=’’]
[mixed=’’]/>
• The abstract attribute indicates whether an element may define its content
directly from this type definition
– If this attribute is true, an element must define its content from a
derived type definition.
– If this attribute is omitted or its value is false, an element may define its
content directly based on this type definition.
• The base attribute specifies the data type for the element.
• The block attribute indicates what types of derivation are prevented for this
element definition. This attribute can contain any of the following values:
– all
– extension
– restriction
Ex:Complex Elements
<xsd:element name=’PurchaseOrder’
type=’PurchaseOrderType’/>
<xsd:complexType name=”PurchaseOrderType”>
<xsd:all>
<xsd:element name=”ShippingInformation”
type=”InfoType” minOccurs=”1” maxOccurs=”1”/>
<xsd:element name=”BillingInformation”
type=”InfoType” minOccurs=”1” maxOccurs=”1”/>
<xsd:element name=”Order” type=”OrderType”
minOccurs=”1” maxOccurs=”1”/>
</xsd:all>
• Declaring Simple Types
– It is used to define single element in an XML
scheme
– Syntax
<xsd:simpleType name=’’>
<xsd:restriction base=’’/>
</xsd:simpleType>
<xsd:attribute name=”Price”>
<xsd:simpleType>
<xsd:restriction base=”xsd:decimal”>
<xsd:fractionDigits value=”2”/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
• Refining Simple Types Using Facets
– Facets give greater control over the definition of elements
and attributes.
– A facet can only be specified for a <simpleType> element,
and it helps determine the set of values for a <simpleType>
element.
• enumeration
• fractionDigits
• length
• maxExclusive
• maxInclusive
• maxLength
• minExclusive
• minInclusive
• minLength
• pattern
<xsd:simpleType name=”PaymentMethodType”>
<xsd:restriction base=”xsd:string”>
<xsd:enumeration value=”Check”/>
<xsd:enumeration value=”Cash”/>
<xsd:enumeration value=”Credit Card”/>
<xsd:enumeration value=”Debit Card”/>
<xsd:enumeration value=”Other”/>
</xsd:restriction>
</xsd:simpleType>
< xsd:enumeration > facet
The <fractionDigits> facet specifies the maximum number of
decimal digits in the fractional part.
<xsd:attribute name=”SubTotal”>
<xsd:simpleType>
<xsd:restriction base=”xsd:decimal”>
<xsd:fractionDigits value=”2”/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
The <length> facet determines the number of
units of length for the specified data type
<xsd:simpleType name=”StateType”>
<xsd:restriction base=”xsd:string”>
<xsd:length value=”2”/>
<xsd:enumeration value=”AR”/>
<xsd:enumeration value=”LA”/>
<xsd:enumeration value=”MS”/>
<xsd:enumeration value=”OK”/>
<xsd:enumeration value=”TX”/>
</xsd:restriction>
</xsd:simpleType>
• The <maxLength> and <minLength> facets specify
the maximum and minimum lengths for values in the
type definition.
• The <pattern> facet applies a specific pattern that
the type definition’s value must match.
<xsd:simpleType name=”ZipType”>
<xsd:restriction base=”xsd:string”>
<xsd:minLength value=”5”/>
<xsd:maxLength value=”10”/>
<xsd:pattern value=”[0-9]{5}(-[0-9]{4})?”/>
</xsd:restriction>
</xsd:simpleType>
• Anonymous Type Declarations
– Sometimes within an XML schema it may not be
necessary to create a separate type definition for
an element or attribute. In such cases, you may
use “anonymous” type declarations.
<xsd:complexType name=”InfoType”>
<xsd:sequence>
<xsd:element name=”Name” minOccurs=”1” maxOccurs=”1”>
<xsd:simpleType>
<xsd:restriction base=”xsd:string”/>
</xsd:simpleType>
</xsd:element>
<xsd:element name=”Address” type=”AddressType”
minOccurs=”1” maxOccurs=”1”/>
• Targeting namespace
• Inheriting from others
Class poll
1. Schema is an _____ based alternative
XHTML
XML
XSL
XSLT
Answer
1. Schema is an _____ based alternative
XHTML
XML
XSL
XSLT
2. XSD is:
XHTML Schema Definition
XSL Schema Definition
XML Schema Definition
XSLT Schema Definition
Answer
2. XSD is:
XHTML Schema Definition
XSL Schema Definition
XML Schema Definition
XSLT Schema Definition
3.XML Schemas are the Successors of
DTD
XML
XSL
XSLT
Answer
3.XML Schemas are the Successors of
DTD
XML
XSL
XSLT
4.One of the greatest strength of XML Schemas is the support
for
images
data types
graphics
functions
Answer
4.One of the greatest strength of XML Schemas is the support
for
images
data types
graphics
functions
05. The syntax for defining an attribute is:
<xs:attribute name="xxx" type="yyy"/>
<xs:attribute name="xxx" />
<attribute name="xxx" type="yyy"/>
<xs:attribute name=xxx type=yyy/>
Answer
05. The syntax for defining an attribute is:
<xs:attribute name="xxx" type="yyy"/>
<xs:attribute name="xxx" />
<attribute name="xxx" type="yyy"/>
<xs:attribute name=xxx type=yyy/>
Exercise
Create a PurchaseOrder2.xsd that Contains the
Schema Definition for PurchaseOrder.xml with
a Target Namespace and Qualified Elements
and Attributes
<xsd:complexType name=”PurchaseOrderType”>
<xsd:all>
<xsd:element name=”ShippingInformation” type=”InfoType” minOccurs=”1”
maxOccurs=”1”/>
<xsd:element name=”BillingInformation” type=”InfoType” minOccurs=”1”
maxOccurs=”1”/>
<xsd:element name=”Order” type=”OrderType” minOccurs=”1” maxOccurs=”1”/>
</xsd:all>
<xsd:attribute name=”Tax”>
<xsd:simpleType>
<xsd:restriction base=”xsd:decimal”>
<xsd:fractionDigits value=”2”/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
<xsd:attribute name=”Total”>
<xsd:simpleType>
<xsd:restriction base=”xsd:decimal”>
<xsd:fractionDigits value=”2”/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
</xsd:complexType>

More Related Content

PDF
Schemas and soap_prt
PPTX
PPTX
PPTX
Xml schema
PPTX
Xsd restrictions, xsl elements, dhtml
PDF
Xsd tutorial
PDF
Xml schema
PPTX
XML Schema
Schemas and soap_prt
Xml schema
Xsd restrictions, xsl elements, dhtml
Xsd tutorial
Xml schema
XML Schema

What's hot (20)

PPTX
Informasjonsintegrasjon – hva er utfordringene
PDF
XStream
PPTX
XML Schemas
PPT
Xml schema
PPT
Xml Schema
PPTX
Xml part5
PPTX
Css Selectors
PPT
Java Script Basics
PPT
Xsd examples
DOCX
Introduction to xml schema
PPT
02 xml schema
PPTX
XML DTD and Schema
PDF
XSD Incomplete Overview Draft
PDF
Native XML processing in C++ (BoostCon'11)
PDF
SXML: S-expression eXtensible Markup Language
PDF
JSON in MySQL and MariaDB Databases
PPTX
PDF
[2019] Spring JPA의 사실과 오해
ODP
SCDJWS 1. xml schema
Informasjonsintegrasjon – hva er utfordringene
XStream
XML Schemas
Xml schema
Xml Schema
Xml part5
Css Selectors
Java Script Basics
Xsd examples
Introduction to xml schema
02 xml schema
XML DTD and Schema
XSD Incomplete Overview Draft
Native XML processing in C++ (BoostCon'11)
SXML: S-expression eXtensible Markup Language
JSON in MySQL and MariaDB Databases
[2019] Spring JPA의 사실과 오해
SCDJWS 1. xml schema
Ad

Similar to Service Oriented Architecture-Unit-1-XML Schema (20)

PPTX
XML, DTD & XSD Overview
PDF
3-SchemaExamples.pdf
PPT
XML Schema
PPT
Xml Session No 1
PPTX
XML-Schema-Elements_Types_Attributes.pptx
PPTX
XSD Schema Presentation on basic of the schema 2
PPTX
Web Service Workshop - 3 days
PPTX
XML Schema.pptx
PPT
basic knowledge on the xsd schema and much more
PPSX
Xsd Basics R&D with ORACLE SOA
PPSX
Xsd basics
PPTX
Xml part4
PDF
Xml Schema Essentials First Edition R Allen Wyke Andrew Watt
PPTX
XML_Schema_in_Web_Technology_Styled.pptx
PPTX
PPT
basic knowledge on the xsd schema and much more
PDF
Xml Schema Essentials R Allen Wyke Andrew Watt
DOC
PPTX
XSD Schema Presentation on basic of the schema
PPT
XML - EXtensible Markup Language
XML, DTD & XSD Overview
3-SchemaExamples.pdf
XML Schema
Xml Session No 1
XML-Schema-Elements_Types_Attributes.pptx
XSD Schema Presentation on basic of the schema 2
Web Service Workshop - 3 days
XML Schema.pptx
basic knowledge on the xsd schema and much more
Xsd Basics R&D with ORACLE SOA
Xsd basics
Xml part4
Xml Schema Essentials First Edition R Allen Wyke Andrew Watt
XML_Schema_in_Web_Technology_Styled.pptx
basic knowledge on the xsd schema and much more
Xml Schema Essentials R Allen Wyke Andrew Watt
XSD Schema Presentation on basic of the schema
XML - EXtensible Markup Language
Ad

More from Ramco Institute of Technology, Rajapalayam, Tamilnadu, India (20)

PDF
AD3251-Data Structures Design-Notes-Tree.pdf
PDF
AD3251-Data Structures Design-Notes-Searching-Hashing.pdf
PDF
Neural networks using tensor flow in amazon deep learning server
PDF
Mobile Computing-Unit-V-Mobile Platforms and Applications
PDF
CS8601 mobile computing Two marks Questions and Answer
PDF
PDF
Unit II -Mobile telecommunication systems
PDF
Mobile computing unit-I-notes 07.01.2020
PDF
Virtual lab - Routing in Mobile Adhoc Networks
PDF
Flipped class collaborative learning-kaliappan-rit
PDF
Building Service Oriented Architecture based applications
PDF
SOA unit-3-notes-Introduction to Service Oriented Architecture
PDF
Innovative practice -Three step interview-Dr.M.Kaliappan
PDF
IT6801-Service Oriented Architecture-Unit-2-notes
PDF
Innovative Practice-Think-pair-share-Topic: DTD for TV schedule
PDF
IT6801-Service Oriented Architecture- UNIT-I notes
PPTX
Soa unit-1-well formed and valid document08.07.2019
AD3251-Data Structures Design-Notes-Tree.pdf
AD3251-Data Structures Design-Notes-Searching-Hashing.pdf
Neural networks using tensor flow in amazon deep learning server
Mobile Computing-Unit-V-Mobile Platforms and Applications
CS8601 mobile computing Two marks Questions and Answer
Unit II -Mobile telecommunication systems
Mobile computing unit-I-notes 07.01.2020
Virtual lab - Routing in Mobile Adhoc Networks
Flipped class collaborative learning-kaliappan-rit
Building Service Oriented Architecture based applications
SOA unit-3-notes-Introduction to Service Oriented Architecture
Innovative practice -Three step interview-Dr.M.Kaliappan
IT6801-Service Oriented Architecture-Unit-2-notes
Innovative Practice-Think-pair-share-Topic: DTD for TV schedule
IT6801-Service Oriented Architecture- UNIT-I notes
Soa unit-1-well formed and valid document08.07.2019

Recently uploaded (20)

PPTX
Welding lecture in detail for understanding
PDF
composite construction of structures.pdf
PPTX
CH1 Production IntroductoryConcepts.pptx
PPTX
Internet of Things (IOT) - A guide to understanding
DOCX
573137875-Attendance-Management-System-original
PPTX
OOP with Java - Java Introduction (Basics)
PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PDF
Arduino robotics embedded978-1-4302-3184-4.pdf
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPTX
Sustainable Sites - Green Building Construction
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PDF
Structs to JSON How Go Powers REST APIs.pdf
PPTX
Strings in CPP - Strings in C++ are sequences of characters used to store and...
PPTX
Geodesy 1.pptx...............................................
PPTX
additive manufacturing of ss316l using mig welding
PPT
Project quality management in manufacturing
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
PPT on Performance Review to get promotions
Welding lecture in detail for understanding
composite construction of structures.pdf
CH1 Production IntroductoryConcepts.pptx
Internet of Things (IOT) - A guide to understanding
573137875-Attendance-Management-System-original
OOP with Java - Java Introduction (Basics)
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
Arduino robotics embedded978-1-4302-3184-4.pdf
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
Sustainable Sites - Green Building Construction
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Model Code of Practice - Construction Work - 21102022 .pdf
Structs to JSON How Go Powers REST APIs.pdf
Strings in CPP - Strings in C++ are sequences of characters used to store and...
Geodesy 1.pptx...............................................
additive manufacturing of ss316l using mig welding
Project quality management in manufacturing
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPT on Performance Review to get promotions

Service Oriented Architecture-Unit-1-XML Schema

  • 1. Date: 11.07.2019 Recap • DTD attributes • Attributes type • Default attribute value • DTD Entities • Internal entities • External entities • Pre-defined entities • External Entities • Parameter entities
  • 2. XML schema • An XML schema is used to define the structure of an XML document. • It is like DTD but provides more control on XML structure. • The XML Schema language is referred to as XML Schema Definition (XSD) • XML Schema Definition Language at http://www.w3c.org/XML/Schema.
  • 3. Contactlist.xsd • <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name=“contactlist"> <xs:complexType> <xs:sequence> <xs:element name=“fullname" type="xs:string"/> <xs:element name=“address" type="xs:string"/> <xs:element name=“phone" type="xs:string"/> <xs:element name=“email" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
  • 4. PurchaseOrder.xml Contains a Sample Purchase Order for Common Items found in a Grocery Store <PurchaseOrder Tax=”5.76” Total=”75.77”> <ShippingInformation> <Name>Dillon Larsen</Name> <Address> <Street>123 Jones Rd.</Street> <City>Houston</City> <State>TX</State> <Zip>77381</Zip> </Address> <Method>USPS</Method> <DeliveryDate>2001-08-12</DeliveryDate> </ShippingInformation> PurchaseOrder.xml
  • 5. <BillingInformation> <Name>Madi Larsen</Name> <Address> <Street>123 Jones Rd.</Street> <City>Houston</City> <State>TX</State> <Zip>77381</Zip> </Address> <PaymentMethod>Credit card</PaymentMethod> <BillingDate>2001-08-09</BillingDate> </BillingInformation>
  • 6. <Order SubTotal=”70.01” ItemsSold=”17”> <Product Name=”Baby Swiss” Id=”702890” Price=”2.89” Quantity=”1”/> <Product Name=”Hard Salami” Id=”302340” Price=”2.34” Quantity=”1”/> </Order> </PurchaseOrder>
  • 7. • Declaring Attributes – Attributes provide additional information to elements. – To indicate that a complex element has an attribute, use the <attribute> element of the XML Schema Definition Language.
  • 8. <xs:element name=“fullname" type="xs:string"/> <xsd:complexType name=”ProductType”> <xsd:attribute name=”Name” type=”xsd:string”/> <xsd:attribute name=”Id” type=”xsd:positiveInteger”/> <xsd:attribute name=”Price”> <xsd:simpleType> <xsd:restriction base=”xsd:decimal”> <xsd:fractionDigits value=”2”/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> <xsd:attribute name=”Quantity” type=”xsd:positiveInteger”/> </xsd:complexType>
  • 9. primitive data type• anyURI • base64Binary • Boolean • date • dateTime • decimal • double • duration • Float • gDay • gMonth • gMonthDay • gYear • gYearMonth • hexBinary • NOTATION • Qname • string • time
  • 10. Derived data type • Byte • ENTITIES • ENTITY • ID • IDREF • IDREFS • int • integer • language • long • Name
  • 11. • Declaring Elements – Elements within an XML schema can be declared using the <element> element from the XML Schema Definition Language. • Syntax <element name=”” [type=””] [abstract=””] [block=””] [default=””] [final=””] [fixed=””] [minOccurs=””] [maxOccurs=””] [nillable=””] [ref=””] [substitutionGroup=””]/ – The abstract attribute indicates whether the element being declared may show up directly within the XML document – this element must be referenced by another element using the substitutionGroup attribute.
  • 12. <xsd:element name=’PurchaseOrder’ type=’PurchaseOrderType’/> <xsd:complexType name=”PurchaseOrderType”> <xsd:all> <xsd:element name=”ShippingInformation” type=”InfoType” minOccurs=”1” maxOccurs=”1”/> <xsd:element name=”BillingInformation” type=”InfoType” minOccurs=”1” maxOccurs=”1”/> <xsd:element name=”Order” type=”OrderType” minOccurs=”1” maxOccurs=”1”/> </xsd:all> the child elements can appear in any order
  • 13. • Declaring Complex Elements – <complexType> element is used to define an element that contain child elements and/or attributes. <xsd:complexType name=’’ [abstract=’’] [base=’’] [block=’’] [final=’’] [mixed=’’]/> • The abstract attribute indicates whether an element may define its content directly from this type definition – If this attribute is true, an element must define its content from a derived type definition. – If this attribute is omitted or its value is false, an element may define its content directly based on this type definition. • The base attribute specifies the data type for the element. • The block attribute indicates what types of derivation are prevented for this element definition. This attribute can contain any of the following values: – all – extension – restriction
  • 14. Ex:Complex Elements <xsd:element name=’PurchaseOrder’ type=’PurchaseOrderType’/> <xsd:complexType name=”PurchaseOrderType”> <xsd:all> <xsd:element name=”ShippingInformation” type=”InfoType” minOccurs=”1” maxOccurs=”1”/> <xsd:element name=”BillingInformation” type=”InfoType” minOccurs=”1” maxOccurs=”1”/> <xsd:element name=”Order” type=”OrderType” minOccurs=”1” maxOccurs=”1”/> </xsd:all>
  • 15. • Declaring Simple Types – It is used to define single element in an XML scheme – Syntax <xsd:simpleType name=’’> <xsd:restriction base=’’/> </xsd:simpleType>
  • 16. <xsd:attribute name=”Price”> <xsd:simpleType> <xsd:restriction base=”xsd:decimal”> <xsd:fractionDigits value=”2”/> </xsd:restriction> </xsd:simpleType> </xsd:attribute>
  • 17. • Refining Simple Types Using Facets – Facets give greater control over the definition of elements and attributes. – A facet can only be specified for a <simpleType> element, and it helps determine the set of values for a <simpleType> element. • enumeration • fractionDigits • length • maxExclusive • maxInclusive • maxLength • minExclusive • minInclusive • minLength • pattern
  • 18. <xsd:simpleType name=”PaymentMethodType”> <xsd:restriction base=”xsd:string”> <xsd:enumeration value=”Check”/> <xsd:enumeration value=”Cash”/> <xsd:enumeration value=”Credit Card”/> <xsd:enumeration value=”Debit Card”/> <xsd:enumeration value=”Other”/> </xsd:restriction> </xsd:simpleType> < xsd:enumeration > facet
  • 19. The <fractionDigits> facet specifies the maximum number of decimal digits in the fractional part. <xsd:attribute name=”SubTotal”> <xsd:simpleType> <xsd:restriction base=”xsd:decimal”> <xsd:fractionDigits value=”2”/> </xsd:restriction> </xsd:simpleType> </xsd:attribute>
  • 20. The <length> facet determines the number of units of length for the specified data type <xsd:simpleType name=”StateType”> <xsd:restriction base=”xsd:string”> <xsd:length value=”2”/> <xsd:enumeration value=”AR”/> <xsd:enumeration value=”LA”/> <xsd:enumeration value=”MS”/> <xsd:enumeration value=”OK”/> <xsd:enumeration value=”TX”/> </xsd:restriction> </xsd:simpleType>
  • 21. • The <maxLength> and <minLength> facets specify the maximum and minimum lengths for values in the type definition. • The <pattern> facet applies a specific pattern that the type definition’s value must match. <xsd:simpleType name=”ZipType”> <xsd:restriction base=”xsd:string”> <xsd:minLength value=”5”/> <xsd:maxLength value=”10”/> <xsd:pattern value=”[0-9]{5}(-[0-9]{4})?”/> </xsd:restriction> </xsd:simpleType>
  • 22. • Anonymous Type Declarations – Sometimes within an XML schema it may not be necessary to create a separate type definition for an element or attribute. In such cases, you may use “anonymous” type declarations. <xsd:complexType name=”InfoType”> <xsd:sequence> <xsd:element name=”Name” minOccurs=”1” maxOccurs=”1”> <xsd:simpleType> <xsd:restriction base=”xsd:string”/> </xsd:simpleType> </xsd:element> <xsd:element name=”Address” type=”AddressType” minOccurs=”1” maxOccurs=”1”/>
  • 23. • Targeting namespace • Inheriting from others
  • 24. Class poll 1. Schema is an _____ based alternative XHTML XML XSL XSLT
  • 25. Answer 1. Schema is an _____ based alternative XHTML XML XSL XSLT
  • 26. 2. XSD is: XHTML Schema Definition XSL Schema Definition XML Schema Definition XSLT Schema Definition
  • 27. Answer 2. XSD is: XHTML Schema Definition XSL Schema Definition XML Schema Definition XSLT Schema Definition
  • 28. 3.XML Schemas are the Successors of DTD XML XSL XSLT
  • 29. Answer 3.XML Schemas are the Successors of DTD XML XSL XSLT
  • 30. 4.One of the greatest strength of XML Schemas is the support for images data types graphics functions
  • 31. Answer 4.One of the greatest strength of XML Schemas is the support for images data types graphics functions
  • 32. 05. The syntax for defining an attribute is: <xs:attribute name="xxx" type="yyy"/> <xs:attribute name="xxx" /> <attribute name="xxx" type="yyy"/> <xs:attribute name=xxx type=yyy/>
  • 33. Answer 05. The syntax for defining an attribute is: <xs:attribute name="xxx" type="yyy"/> <xs:attribute name="xxx" /> <attribute name="xxx" type="yyy"/> <xs:attribute name=xxx type=yyy/>
  • 34. Exercise Create a PurchaseOrder2.xsd that Contains the Schema Definition for PurchaseOrder.xml with a Target Namespace and Qualified Elements and Attributes
  • 35. <xsd:complexType name=”PurchaseOrderType”> <xsd:all> <xsd:element name=”ShippingInformation” type=”InfoType” minOccurs=”1” maxOccurs=”1”/> <xsd:element name=”BillingInformation” type=”InfoType” minOccurs=”1” maxOccurs=”1”/> <xsd:element name=”Order” type=”OrderType” minOccurs=”1” maxOccurs=”1”/> </xsd:all> <xsd:attribute name=”Tax”> <xsd:simpleType> <xsd:restriction base=”xsd:decimal”> <xsd:fractionDigits value=”2”/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> <xsd:attribute name=”Total”> <xsd:simpleType> <xsd:restriction base=”xsd:decimal”> <xsd:fractionDigits value=”2”/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> </xsd:complexType>