SlideServe
Menu
Préférences
© SlideServe · v2026

Recursive Data Models in XML: Building Relationship Structures

stephen-navarro avatar
8 diapositives · 218 Views · Nov 29, 2014

Explore XML schemas for creating recursive relationships in data models. Learn how to define complex relationships between entities using XSD elements and types.

Recursive Data Models in XML: Building Relationship Structures - slide 1
01 / 8Recursive Data Models in XML: Building Relationship Structures
1 / 17

Télécharger la présentation

Recursive Data Models in XML: Building Relationship Structures
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Recursive relationship

  2. Data model

  3. <?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xsd:element name="monarchs"> <xsd:complexType> <xsd:sequence> <xsd:element name="monarch" type="monarchType" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:complexType name="monarchType"> <xsd:sequence> <xsd:element name="monarchID" type="xsd:ID"/> <xsd:element name="monarchName" type="xsd:string"/> <xsd:element name="monarchNumber" type="xsd:string"/> <xsd:element name="monarchType" type="xsd:string"/> <xsd:element name="monarchBegin" type="xsd:date"/> <xsd:element name="predecessor" type="xsd:IDREF" minOccurs="0" maxOccurs="1"/> </xsd:sequence> </xsd:complexType> </xsd:schema>

  4. <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="president.xsl"?> <monarchs xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="monarch.xsd"> <monarch> <monarchID>m1</monarchID> <monarchName>William</monarchName> <monarchNumber>IV</monarchNumber> <monarchType>King</monarchType> <monarchBegin>1830-06-26</monarchBegin> </monarch> <monarch> <monarchID>m2</monarchID> <monarchName>Victoria</monarchName> <monarchNumber>I</monarchNumber> <monarchType>Queen</monarchType> <monarchBegin>1837-06-20</monarchBegin> <predecessor>m1</predecessor> </monarch> </monarchs>

  5. <?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified"> <xsd:element name="employees"> <xsd:complexType> <xsd:sequence> <xsd:element name="employee" type="empType" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:complexType name="empType"> <xsd:sequence> <xsd:element name="empID" type="xsd:ID"/> <xsd:element name="empFirstName" type="xsd:string"/> <xsd:element name="empSalary" type="xsd:integer"/> <xsd:element name="subordinates" type="subType" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="subType"> <xsd:sequence> <xsd:element name="subordinate" type="xsd:IDREF"/> </xsd:sequence> </xsd:complexType> </xsd:schema>

  6. <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="employee.xsl"?> <employees xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="employee.xsd"> <employee> <empID>e1</empID> <empFirstName>Alice</empFirstName> <empSalary>75000</empSalary> <subordinates> <subordinate>e2</subordinate> </subordinates> </employee> <employee> <empID>e2</empID> <empFirstName>Ned</empFirstName> <empSalary>45000</empSalary> <subordinates> <subordinate>e3</subordinate> </subordinates> <subordinates> <subordinate>e4</subordinate> </subordinates> </employee> <employee> <empID>e3</empID> <empFirstName>Andrew</empFirstName> <empSalary>25000</empSalary> </employee> <employee> <empID>e4</empID> <empFirstName>Clare</empFirstName> <empSalary>25000</empSalary> </employee> </employees>

  7. <?xml version="1.0" encoding="UTF-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified"> <xsd:element name="products"> <xsd:complexType> <xsd:sequence> <xsd:element name="product" type="prodType" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:complexType name="prodType"> <xsd:sequence> <xsd:element name="prodID" type="xsd:ID"/> <xsd:element name="prodName" type="xsd:string"/> <xsd:element name="prodCost" type="xsd:decimal" minOccurs="0"/> <xsd:element name="prodPrice" type="xsd:decimal"/> <xsd:element name="components" type="componentsType" minOccurs="0" maxOccurs="1"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="componentsType"> <xsd:sequence> <xsd:element name="component" type="xsd:IDREF"/> <xsd:element name="componentqty" type="xsd:integer"/> </xsd:sequence> </xsd:complexType> </xsd:schema>

  8. <?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="product.xsl"?> <products xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="product.xsd"> <product> <prodID>p1000</prodID> <prodName>Animal photography kit</prodName> <prodPrice>725</prodPrice> <components> <component>p101</component> <componentqty>1</componentqty> </components> </product> <product> <prodID>p101</prodID> <prodName>Camera case</prodName> <prodCost>150</prodCost> <prodPrice>300</prodPrice> </product> </products>