add template files

This commit is contained in:
2024-06-03 15:51:58 +02:00
commit b5895194d9
55 changed files with 1365 additions and 0 deletions

28
.gitignore vendored Normal file
View File

@@ -0,0 +1,28 @@
### Java ###
# Compiled class file
*.class
# Log file
*.log
# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
### Maven ###
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.idea

49
README.md Normal file
View File

@@ -0,0 +1,49 @@
# XSLT-repository-tasks:
## Use http://tools.release11.com/xml/xslt to transform xml and copy result from the site to corresponding file in solutions directory.
### 1. Take XML with books and calculate number of all books available. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/book.xml as input.
2. The output resulting from the transformation should look like this file src/main/resources/output/1-available-books.xml.
### 2. Take XML with books data and generate HTML web page with table of books. Sort books based on book name. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/book.xml as input.
2. The output resulting from the transformation should look like this file src/main/resources/output/2-table-of-books.html.
### 3. Take XML file with authors data and change original namespace to “http://marklogicacademy.ml/library/authors/v2”. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/author.xml as input.
2. The output resulting from the transformation should look like this file src/main/resources/output/3-authors-namespace.xml.
### 4. Take XML file with authors and generate file with dead authors. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/author.xml as input.
2. The output resulting from the transformation should look like this file src/main/resources/output/4-death-authors.xml.
### 5. Take XML file with authors and calculate the average age in which authors wrote their first book. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/author.xml as input.
2. To use the src/main/resources/xml/book.xml file in the transformation load it to a variable in XSLT.
3. The returned value must be of type Duration.
4. The output resulting from the transformation should look like this file src/main/resources/output/5-average-authors-age.xml.
### 6. Take XML file with books and generate file with not available books. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/book.xml as input.
2. The output resulting from the transformation should look like this file src/main/resources/output/6-not-available-books.xml.
### 7. Take XML with authors, join XML with books data and save the data in single file. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/author.xml as input.
2. To use the src/main/resources/xml/book.xml file in the transformation load it to a variable in XSLT.
3. The output resulting from the transformation should look like this file src/main/resources/output/7-authors-with-books.xml.
### 8. Take XML file with authors data and books data and generate new file with authors who wrote more than 3 books. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/author.xml as input.
2. To use the src/main/resources/xml/book.xml file in the transformation load it to a variable in XSLT.
3. The output resulting from the transformation should look like this file src/main/resources/output/8-who-wrote-more-than-3-books.xml.
### 9. Take XML with authors data and transform all attributes into elements. New elements should inherit namespace of parent element. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/author.xml as input.
2. The output resulting from the transformation should look like this file src/main/resources/output/9-attributes-into-elements.xml.
### 10. Take XML with history of book borrows and generate file with top 3 most popular books. By following the guidelines below:
1. The XSLT file during transformation will receive src/main/resources/xml/book.xml as input.
2. To use the src/main/resources/xml/author.xml file in the transformation load it to a variable in XSLT.
3. The output resulting from the transformation should look like this file src/main/resources/output/10-most-popular-books.xml.

96
pom.xml Normal file
View File

@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.r11.xsd</groupId>
<artifactId>xsd</artifactId>
<version>1.0</version>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.9.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.9.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit</artifactId>
<version>6.3.0.202209071007-r</version>
</dependency>
<!-- Jsch from jgit dependency is not supported [RSA 2048] so we need use mwiede fork. -->
<dependency>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit.ssh.jsch</artifactId>
<version>6.3.0.202209071007-r</version>
<exclusions>
<exclusion>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.github.mwiede</groupId>
<artifactId>jsch</artifactId>
<version>0.2.4</version>
</dependency>
<dependency>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit.ssh.apache</artifactId>
<version>6.3.0.202209071007-r</version>
</dependency>
<dependency>
<groupId>jaxb</groupId>
<artifactId>activation</artifactId>
<version>1.0.2</version>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-core</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.3.0</version>
</dependency>
<dependency>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
<version>1.2.0</version>
</dependency>
<dependency>
<groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId>
<version>11.4</version>
</dependency>
<dependency>
<groupId>xml-resolver</groupId>
<artifactId>xml-resolver</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
</project>

View File

View File

@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<count>9</count>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<popularity>
<book position="1">
<bookId>1</bookId>
<borrowCount>3</borrowCount>
<name>Hamlet</name>
</book>
<book position="2">
<bookId>3</bookId>
<borrowCount>2</borrowCount>
<name>Harry Potter and the Sorcerer's Stone</name>
</book>
<book position="3">
<bookId>2</bookId>
<borrowCount>1</borrowCount>
<name>Macbeth</name>
</book>
</popularity>

View File

@@ -0,0 +1,99 @@
<!DOCTYPE html
PUBLIC "XSLT-compat">
<html xmlns:b="http://www.demo.com">
<body>
<h1>Books</h1>
<table>
<tr>
<th>Book</th>
<th>Date</th>
<th>Availability</th>
</tr>
<tr>
<td>Hamlet</td>
<td>2001-05-04</td>
<td>false</td>
</tr>
<tr>
<td>Macbeth</td>
<td>2000-12-13</td>
<td>false</td>
</tr>
<tr>
<td>Harry Potter and the Sorcerer's Stone</td>
<td>2005-04-29</td>
<td>true</td>
</tr>
<tr>
<td>The Long Walk</td>
<td>2018-07-01</td>
<td>true</td>
</tr>
<tr>
<td>Misery</td>
<td>2018-01-31</td>
<td>true</td>
</tr>
<tr>
<td>Think and Grow Rich</td>
<td>2004-09-10</td>
<td>true</td>
</tr>
<tr>
<td>The Law of Success</td>
<td>1982-05-09</td>
<td>false</td>
</tr>
<tr>
<td>Patriot Games</td>
<td>1995-10-21</td>
<td>false</td>
</tr>
<tr>
<td>The Sum of All Fears</td>
<td>1992-09-19</td>
<td>false</td>
</tr>
<tr>
<td>The Alchemist</td>
<td>2017-02-20</td>
<td>false</td>
</tr>
<tr>
<td>Hamlet</td>
<td>1994-06-01</td>
<td>false</td>
</tr>
<tr>
<td>Measure for Measure</td>
<td>1990-03-23</td>
<td>false</td>
</tr>
<tr>
<td>Hamlet</td>
<td>1989-05-05</td>
<td>true</td>
</tr>
<tr>
<td>Hamlet</td>
<td>1999-05-30</td>
<td>true</td>
</tr>
<tr>
<td>The Law of Success</td>
<td>2004-11-26</td>
<td>true</td>
</tr>
<tr>
<td>Romeo and Juliet</td>
<td>1997-02-08</td>
<td>true</td>
</tr>
<tr>
<td>The Alchemist</td>
<td>2009-08-21</td>
<td>true</td>
</tr>
</table>
</body>
</html>

View File

@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<a:authors xmlns:a="http://marklogicacademy.ml/library/authors/v2">
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="1">
<p:firstName>William</p:firstName>
<p:lastName>Shakespeare</p:lastName>
<a:dateOfBirth>1564-04-23</a:dateOfBirth>
<a:dateOfDeath>1616-04-23</a:dateOfDeath>
</a:author>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="2">
<p:firstName>J.K.</p:firstName>
<p:lastName>Rowling</p:lastName>
<a:dateOfBirth>1965-07-31</a:dateOfBirth>
</a:author>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="3">
<p:firstName>Paulo</p:firstName>
<p:lastName>Coelho</p:lastName>
<a:dateOfBirth>1947-08-24</a:dateOfBirth>
</a:author>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="4">
<p:firstName>Stephen</p:firstName>
<p:lastName>King</p:lastName>
<a:dateOfBirth>1947-09-21</a:dateOfBirth>
</a:author>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="5">
<p:firstName>Tom</p:firstName>
<p:lastName>Clancy</p:lastName>
<a:dateOfBirth>1947-04-12</a:dateOfBirth>
<a:dateOfDeath>2013-10-01</a:dateOfDeath>
</a:author>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="6">
<p:firstName>Napoleon</p:firstName>
<p:lastName>Hill</p:lastName>
<a:dateOfBirth>1883-09-26</a:dateOfBirth>
<a:dateOfDeath>1970-11-08</a:dateOfDeath>
</a:author>
</a:authors>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<a:authors xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.demo.com/author author.xsd">
<a:author id="1">
<p:firstName>William</p:firstName>
<p:lastName>Shakespeare</p:lastName>
<a:dateOfBirth>1564-04-23</a:dateOfBirth>
<a:dateOfDeath>1616-04-23</a:dateOfDeath>
</a:author>
<a:author id="5">
<p:firstName>Tom</p:firstName>
<p:lastName>Clancy</p:lastName>
<a:dateOfBirth>1947-04-12</a:dateOfBirth>
<a:dateOfDeath>2013-10-01</a:dateOfDeath>
</a:author>
<a:author id="6">
<p:firstName>Napoleon</p:firstName>
<p:lastName>Hill</p:lastName>
<a:dateOfBirth>1883-09-26</a:dateOfBirth>
<a:dateOfDeath>1970-11-08</a:dateOfDeath>
</a:author>
</a:authors>

View File

@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<average_age>P45119DT8H</average_age>

View File

@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<b:books xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.demo.com book.xsd">
<b:book id="1">
<name>Hamlet</name>
<date>2001-05-04</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book id="2">
<name>Macbeth</name>
<date>2000-12-13</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book id="7">
<name>The Law of Success</name>
<date>1982-05-09</date>
<authorId>6</authorId>
<availability>false</availability>
</b:book>
<b:book id="8">
<name>Patriot Games</name>
<date>1995-10-21</date>
<authorId>5</authorId>
<availability>false</availability>
</b:book>
<b:book id="9">
<name>The Sum of All Fears</name>
<date>1992-09-19</date>
<authorId>5</authorId>
<availability>false</availability>
</b:book>
<b:book id="10">
<name>The Alchemist</name>
<date>2017-02-20</date>
<authorId>3</authorId>
<availability>false</availability>
</b:book>
<b:book id="11">
<name>Hamlet</name>
<date>1994-06-01</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book id="12">
<name>Measure for Measure</name>
<date>1990-03-23</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
</b:books>

View File

@@ -0,0 +1,237 @@
<?xml version="1.0" encoding="UTF-8"?>
<connections>
<connection>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="1">
<p:firstname>William</p:firstname>
<p:lastname>Shakespeare</p:lastname>
<a:date-of-birth>1564-04-23</a:date-of-birth>
<a:date-of-death>1616-04-23</a:date-of-death>
</a:author>
<books>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="1">
<name>Hamlet</name>
<date>2001-05-04</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="2">
<name>Macbeth</name>
<date>2000-12-13</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="11">
<name>Hamlet</name>
<date>1994-06-01</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="12">
<name>Measure for Measure</name>
<date>1990-03-23</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="13">
<name>Hamlet</name>
<date>1989-05-05</date>
<authorId>1</authorId>
<availability>true</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="14">
<name>Hamlet</name>
<date>1999-05-30</date>
<authorId>1</authorId>
<availability>true</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="16">
<name>Romeo and Juliet</name>
<date>1997-02-08</date>
<authorId>1</authorId>
<availability>true</availability>
</b:book>
</books>
</connection>
<connection>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="2">
<p:firstname>J.K.</p:firstname>
<p:lastname>Rowling</p:lastname>
<a:date-of-birth>1965-07-31</a:date-of-birth>
</a:author>
<books>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="3">
<name>Harry Potter and the Sorcerer's Stone</name>
<date>2005-04-29</date>
<authorId>2</authorId>
<availability>true</availability>
</b:book>
</books>
</connection>
<connection>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="3">
<p:firstname>Paulo</p:firstname>
<p:lastname>Coelho</p:lastname>
<a:date-of-birth>1947-08-24</a:date-of-birth>
</a:author>
<books>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="10">
<name>The Alchemist</name>
<date>2017-02-20</date>
<authorId>3</authorId>
<availability>false</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="17">
<name>The Alchemist</name>
<date>2009-08-21</date>
<authorId>3</authorId>
<availability>true</availability>
</b:book>
</books>
</connection>
<connection>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="4">
<p:firstname>Stephen</p:firstname>
<p:lastname>King</p:lastname>
<a:date-of-birth>1947-09-21</a:date-of-birth>
</a:author>
<books>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="4">
<name>The Long Walk</name>
<date>2018-07-01</date>
<authorId>4</authorId>
<availability>true</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="5">
<name>Misery</name>
<date>2018-01-31</date>
<authorId>4</authorId>
<availability>true</availability>
</b:book>
</books>
</connection>
<connection>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="5">
<p:firstname>Tom</p:firstname>
<p:lastname>Clancy</p:lastname>
<a:date-of-birth>1947-04-12</a:date-of-birth>
<a:date-of-death>2013-10-01</a:date-of-death>
</a:author>
<books>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="8">
<name>Patriot Games</name>
<date>1995-10-21</date>
<authorId>5</authorId>
<availability>false</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="9">
<name>The Sum of All Fears</name>
<date>1992-09-19</date>
<authorId>5</authorId>
<availability>false</availability>
</b:book>
</books>
</connection>
<connection>
<a:author xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="6">
<p:firstname>Napoleon</p:firstname>
<p:lastname>Hill</p:lastname>
<a:date-of-birth>1883-09-26</a:date-of-birth>
<a:date-of-death>1970-11-08</a:date-of-death>
</a:author>
<books>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="6">
<name>Think and Grow Rich</name>
<date>2004-09-10</date>
<authorId>6</authorId>
<availability>true</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="7">
<name>The Law of Success</name>
<date>1982-05-09</date>
<authorId>6</authorId>
<availability>false</availability>
</b:book>
<b:book xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
id="15">
<name>The Law of Success</name>
<date>2004-11-26</date>
<authorId>6</authorId>
<availability>true</availability>
</b:book>
</books>
</connection>
</connections>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<authors>
<author id="1">
<firstName>William</firstName>
<lastName>Shakespeare</lastName>
<writtenBooks>7</writtenBooks>
</author>
</authors>

View File

@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<a:authors xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.demo.com/author author.xsd">
<a:author>
<a:id>1</a:id>
<p:firstName>William</p:firstName>
<p:lastName>Shakespeare</p:lastName>
<a:dateOfBirth>1564-04-23</a:dateOfBirth>
<a:dateOfDeath>1616-04-23</a:dateOfDeath>
</a:author>
<a:author>
<a:id>2</a:id>
<p:firstName>J.K.</p:firstName>
<p:lastName>Rowling</p:lastName>
<a:dateOfBirth>1965-07-31</a:dateOfBirth>
</a:author>
<a:author>
<a:id>3</a:id>
<p:firstName>Paulo</p:firstName>
<p:lastName>Coelho</p:lastName>
<a:dateOfBirth>1947-08-24</a:dateOfBirth>
</a:author>
<a:author>
<a:id>4</a:id>
<p:firstName>Stephen</p:firstName>
<p:lastName>King</p:lastName>
<a:dateOfBirth>1947-09-21</a:dateOfBirth>
</a:author>
<a:author>
<a:id>5</a:id>
<p:firstName>Tom</p:firstName>
<p:lastName>Clancy</p:lastName>
<a:dateOfBirth>1947-04-12</a:dateOfBirth>
<a:dateOfDeath>2013-10-01</a:dateOfDeath>
</a:author>
<a:author>
<a:id>6</a:id>
<p:firstName>Napoleon</p:firstName>
<p:lastName>Hill</p:lastName>
<a:dateOfBirth>1883-09-26</a:dateOfBirth>
<a:dateOfDeath>1970-11-08</a:dateOfDeath>
</a:author>
</a:authors>

View File

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

@@ -0,0 +1 @@
<!-- add your results here -->

View File

View File

@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<a:authors xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.demo.com/author"
xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xsi:schemaLocation="http://www.demo.com/author author.xsd">
<a:author id="1">
<p:firstname>William</p:firstname>
<p:lastname>Shakespeare</p:lastname>
<a:date-of-birth>1564-04-23</a:date-of-birth>
<a:date-of-death>1616-04-23</a:date-of-death>
</a:author>
<a:author id="2">
<p:firstname>J.K.</p:firstname>
<p:lastname>Rowling</p:lastname>
<a:date-of-birth>1965-07-31</a:date-of-birth>
</a:author>
<a:author id="3">
<p:firstname>Paulo</p:firstname>
<p:lastname>Coelho</p:lastname>
<a:date-of-birth>1947-08-24</a:date-of-birth>
</a:author>
<a:author id="4">
<p:firstname>Stephen</p:firstname>
<p:lastname>King</p:lastname>
<a:date-of-birth>1947-09-21</a:date-of-birth>
</a:author>
<a:author id="5">
<p:firstname>Tom</p:firstname>
<p:lastname>Clancy</p:lastname>
<a:date-of-birth>1947-04-12</a:date-of-birth>
<a:date-of-death>2013-10-01</a:date-of-death>
</a:author>
<a:author id="6">
<p:firstname>Napoleon</p:firstname>
<p:lastname>Hill</p:lastname>
<a:date-of-birth>1883-09-26</a:date-of-birth>
<a:date-of-death>1970-11-08</a:date-of-death>
</a:author>
</a:authors>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.demo.com/author"
elementFormDefault="qualified">
<xs:import namespace="http://www.demo.com/person" schemaLocation="person.xsd"/>
<xs:complexType name="AuthorType">
<xs:complexContent>
<xs:extension base="p:PersonType">
<xs:sequence>
<xs:element name="dateOfBirth" type="xs:date"/>
<xs:element name="dateOfDeath" type="xs:date" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="author" type="a:AuthorType"/>
<xs:complexType name="AuthorsType">
<xs:sequence>
<xs:element ref="a:author" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="authors" type="a:AuthorsType"/>
</xs:schema>

View File

@@ -0,0 +1,108 @@
<?xml version="1.0" encoding="utf-8"?>
<b:books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.demo.com"
xmlns:b="http://www.demo.com"
xsi:schemaLocation="http://www.demo.com book.xsd">
<b:book id="1">
<name>Hamlet</name>
<date>2001-05-04</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book id="2">
<name>Macbeth</name>
<date>2000-12-13</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book id="3">
<name>Harry Potter and the Sorcerer's Stone</name>
<date>2005-04-29</date>
<authorId>2</authorId>
<availability>true</availability>
</b:book>
<b:book id="4">
<name>The Long Walk</name>
<date>2018-07-01</date>
<authorId>4</authorId>
<availability>true</availability>
</b:book>
<b:book id="5">
<name>Misery</name>
<date>2018-01-31</date>
<authorId>4</authorId>
<availability>true</availability>
</b:book>
<b:book id="6">
<name>Think and Grow Rich</name>
<date>2004-09-10</date>
<authorId>6</authorId>
<availability>true</availability>
</b:book>
<b:book id="7">
<name>The Law of Success</name>
<date>1982-05-09</date>
<authorId>6</authorId>
<availability>false</availability>
</b:book>
<b:book id="8">
<name>Patriot Games</name>
<date>1995-10-21</date>
<authorId>5</authorId>
<availability>false</availability>
</b:book>
<b:book id="9">
<name>The Sum of All Fears</name>
<date>1992-09-19</date>
<authorId>5</authorId>
<availability>false</availability>
</b:book>
<b:book id="10">
<name>The Alchemist</name>
<date>2017-02-20</date>
<authorId>3</authorId>
<availability>false</availability>
</b:book>
<b:book id="11">
<name>Hamlet</name>
<date>1994-06-01</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book id="12">
<name>Measure for Measure</name>
<date>1990-03-23</date>
<authorId>1</authorId>
<availability>false</availability>
</b:book>
<b:book id="13">
<name>Hamlet</name>
<date>1989-05-05</date>
<authorId>1</authorId>
<availability>true</availability>
</b:book>
<b:book id="14">
<name>Hamlet</name>
<date>1999-05-30</date>
<authorId>1</authorId>
<availability>true</availability>
</b:book>
<b:book id="15">
<name>The Law of Success</name>
<date>2004-11-26</date>
<authorId>6</authorId>
<availability>true</availability>
</b:book>
<b:book id="16">
<name>Romeo and Juliet</name>
<date>1997-02-08</date>
<authorId>1</authorId>
<availability>true</availability>
</b:book>
<b:book id="17">
<name>The Alchemist</name>
<date>2009-08-21</date>
<authorId>3</authorId>
<availability>true</availability>
</b:book>
</b:books>

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:b="http://www.demo.com"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.demo.com"
elementFormDefault="qualified">
<xs:complexType name="BookType">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="authorId" type="xs:int"/>
<xs:element name="availability" type="xs:boolean"/>
</xs:sequence>
<xs:attribute name="id" type="xs:int"/>
</xs:complexType>
<xs:element name="book" type="b:BookType"/>
<xs:complexType name="BooksType">
<xs:sequence>
<xs:element ref="b:book" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="books" type="b:BooksType"/>
</xs:schema>

View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<bb:borrows xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.demo.com/borrow"
xmlns:bb="http://www.demo.com/borrow"
xsi:schemaLocation="http://www.demo.com/borrow">
<bb:borrow id="1">
<bb:bookId>3</bb:bookId>
<bb:readerId>2</bb:readerId>
</bb:borrow>
<bb:borrow id="2">
<bb:bookId>3</bb:bookId>
<bb:readerId>14</bb:readerId>
</bb:borrow>
<bb:borrow id="3">
<bb:bookId>1</bb:bookId>
<bb:readerId>10</bb:readerId>
</bb:borrow>
<bb:borrow id="4">
<bb:bookId>2</bb:bookId>
<bb:readerId>1</bb:readerId>
</bb:borrow>
<bb:borrow id="5">
<bb:bookId>1</bb:bookId>
<bb:readerId>9</bb:readerId>
</bb:borrow>
<bb:borrow id="6">
<bb:bookId>6</bb:bookId>
<bb:readerId>5</bb:readerId>
</bb:borrow>
<bb:borrow id="7">
<bb:bookId>1</bb:bookId>
<bb:readerId>15</bb:readerId>
</bb:borrow>
<bb:borrow id="8">
<bb:bookId>5</bb:bookId>
<bb:readerId>9</bb:readerId>
</bb:borrow>
<bb:borrow id="9">
<bb:bookId>16</bb:bookId>
<bb:readerId>8</bb:readerId>
</bb:borrow>
</bb:borrows>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema elementFormDefault="qualified"
xmlns:p="http://www.demo.com/person"
targetNamespace="http://www.demo.com/person"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="PersonType">
<xs:sequence>
<xs:element name="firstName" type="xs:string"/>
<xs:element name="lastName" type="xs:string"/>
<xs:element name="age" type="xs:int" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="id" type="xs:int"/>
</xs:complexType>
<xs:element name="person" type="p:PersonType"/>
</xs:schema>

View File

@@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<r:readers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.demo.com/reader"
xmlns:r="http://www.demo.com/reader"
xmlns:p="http://www.demo.com/person"
xsi:schemaLocation="http://www.demo.com/reader reader.xsd">
<r:reader id="1">
<p:firstname>John</p:firstname>
<p:lastname>Burg</p:lastname>
<p:age>45</p:age>
<r:bookId>32</r:bookId>
<r:bookId>57</r:bookId>
</r:reader>
<r:reader id="2">
<p:firstname>Steven</p:firstname>
<p:lastname>Pick</p:lastname>
<p:age>29</p:age>
<r:bookId>27</r:bookId>
<r:bookId>12</r:bookId>
<r:bookId>91</r:bookId>
</r:reader>
<r:reader id="3">
<!--warning-->
<p:firstname>Peter</p:firstname>
<p:lastname>Stock</p:lastname>
<p:age>21</p:age>
<r:bookId>42</r:bookId>
<r:bookId>1</r:bookId>
<r:bookId>9</r:bookId>
<r:bookId>98</r:bookId>
<r:bookId>60</r:bookId>
</r:reader>
<r:reader id="4">
<p:firstname>Robert</p:firstname>
<p:lastname>Neat</p:lastname>
<p:age>32</p:age>
<r:bookId>87</r:bookId>
<r:bookId>23</r:bookId>
<r:bookId>11</r:bookId>
<r:bookId>7</r:bookId>
<r:bookId>55</r:bookId>
</r:reader>
<r:reader id="5">
<p:firstname>John</p:firstname>
<p:lastname>Pale</p:lastname>
<p:age>36</p:age>
<r:bookId>81</r:bookId>
</r:reader>
<r:reader id="6">
<p:firstname>Josh</p:firstname>
<p:lastname>Ericson</p:lastname>
<p:age>46</p:age>
<r:bookId>8</r:bookId>
</r:reader>
<r:reader id="7">
<p:firstname>Patrick</p:firstname>
<p:lastname>Evans</p:lastname>
<p:age>50</p:age>
</r:reader>
<r:reader id="8">
<p:firstname>Paul</p:firstname>
<p:lastname>Navy</p:lastname>
<p:age>23</p:age>
<r:bookId>69</r:bookId>
<r:bookId>78</r:bookId>
</r:reader>
<r:reader id="9">
<p:firstname>Rob</p:firstname>
<p:lastname>Rockwell</p:lastname>
<p:age>30</p:age>
<r:bookId>47</r:bookId>
</r:reader>
<r:reader id="10">
<p:firstname>Luis</p:firstname>
<p:lastname>Pocket</p:lastname>
<p:age>52</p:age>
<r:bookId>10</r:bookId>
<r:bookId>83</r:bookId>
<r:bookId>2</r:bookId>
</r:reader>
</r:readers>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- edited with XMLSpy v2018 rel. 2 sp1 (x64) (http://www.altova.com) by Kacper Makuch (Kacper Makuch) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:r="http://www.demo.com/reader"
xmlns:p="http://www.demo.com/person"
targetNamespace="http://www.demo.com/reader"
elementFormDefault="qualified">
<xs:import namespace="http://www.demo.com/person" schemaLocation="person.xsd"/>
<xs:complexType name="ReaderType">
<xs:complexContent>
<xs:extension base="p:PersonType">
<xs:sequence>
<xs:element name="bookId" type="xs:int" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="reader" type="r:ReaderType"/>
<xs:complexType name="ReadersType">
<xs:sequence>
<xs:element ref="r:reader" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="readers" type="r:ReadersType"/>
</xs:schema>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xs:element name="count" type="xs:int"/>
</xs:schema>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xs:element name="popularity">
<xs:complexType>
<xs:sequence>
<xs:element name="book" minOccurs="3" maxOccurs="3">
<xs:complexType>
<xs:sequence>
<xs:element name="bookId" type="xs:int"/>
<xs:element name="borrowCount" type="xs:int"/>
<xs:element name="name" type="xs:string"/>
</xs:sequence>
<xs:attribute name="position" type="xs:int"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://www.demo.com/author" xmlns:p="http://www.demo.com/person" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified">
<xs:complexType name="tableType">
<xs:sequence>
<xs:element name="body">
<xs:complexType>
<xs:sequence>
<xs:element name="h1"/>
<xs:element name="table">
<xs:complexType>
<xs:sequence>
<xs:element name="tr" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="th" minOccurs="0" maxOccurs="3"/>
<xs:element name="td" minOccurs="0" maxOccurs="3"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="html" type="tableType"/>
</xs:schema>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://marklogicacademy.ml/library/authors/v2"
xmlns:p="http://www.demo.com/person"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://marklogicacademy.ml/library/authors/v2"
elementFormDefault="qualified">
<xs:import namespace="http://www.demo.com/person" schemaLocation="person.xsd"/>
<xs:complexType name="AuthorType">
<xs:complexContent>
<xs:extension base="p:PersonType">
<xs:sequence>
<xs:element name="dateOfBirth" type="xs:date"/>
<xs:element name="dateOfDeath" type="xs:date" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="author" type="a:AuthorType"/>
<xs:complexType name="AuthorsType">
<xs:sequence>
<xs:element ref="a:author" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="authors" type="a:AuthorsType"/>
</xs:schema>

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.demo.com/author"
elementFormDefault="qualified">
<xs:import namespace="http://www.demo.com/person" schemaLocation="person.xsd"/>
<xs:complexType name="AuthorType">
<xs:complexContent>
<xs:extension base="p:PersonType">
<xs:sequence>
<xs:element name="dateOfBirth" type="xs:date"/>
<xs:element name="dateOfDeath" type="xs:date" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="author" type="a:AuthorType"/>
<xs:complexType name="AuthorsType">
<xs:sequence>
<xs:element ref="a:author" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="authors" type="a:AuthorsType"/>
</xs:schema>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xs:element name="average_age" type="xs:duration"/>
</xs:schema>

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:b="http://www.demo.com"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.demo.com"
elementFormDefault="qualified">
<xs:complexType name="BookType">
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="date" type="xs:date"/>
<xs:element name="authorId" type="xs:int"/>
<xs:element name="availability" type="xs:boolean" fixed="false"/>
</xs:sequence>
<xs:attribute name="id" type="xs:int"/>
</xs:complexType>
<xs:element name="book" type="b:BookType"/>
<xs:complexType name="BooksType">
<xs:sequence>
<xs:element ref="b:book" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="books" type="b:BooksType"/>
</xs:schema>

View File

@@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:b="http://www.demo.com"
xmlns="http://www.demo.com/author"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="unqualified">
<xs:import namespace="http://www.demo.com/person" schemaLocation="/home/patryk/XML-XSD/xml-repository-template/src/main/resources/xml/person.xsd"/>
<xs:import namespace="http://www.demo.com" schemaLocation="/home/patryk/XML-XSD/xml-repository-template/src/main/resources/xml/book.xsd"/>
<xs:import namespace="http://www.demo.com/author" schemaLocation="/home/patryk/XML-XSD/xml-repository-template/src/main/resources/xml/author.xsd"/>
<xs:element name="connections">
<xs:complexType>
<xs:sequence>
<xs:element name="connection" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="author" type="a:AuthorType" />
<xs:element name="books">
<xs:complexType>
<xs:sequence>
<xs:element name="book" type="b:BookType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:b="http://www.demo.com"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<xs:element name="authors">
<xs:complexType>
<xs:sequence>
<xs:element name="author" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="firstName" type="xs:string"/>
<xs:element name="lastName" type="xs:string"/>
<xs:element name="writtenBooks" type="xs:int"/>
</xs:sequence>
<xs:attribute name="id" type="xs:int"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Created with Liquid Studio 2018 (https://www.liquid-technologies.com) -->
<xs:schema xmlns:a="http://www.demo.com/author"
xmlns:p="http://www.demo.com/person"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.demo.com/author"
elementFormDefault="unqualified">
<xs:import namespace="http://www.demo.com/person" schemaLocation="person.xsd"/>
<xs:complexType name="AuthorType">
<xs:complexContent>
<xs:extension base="p:PersonType">
<xs:sequence>
<xs:element name="age" type=""
<xs:element name="dateOfBirth" type="xs:date"/>
<xs:element name="dateOfDeath" type="xs:date" minOccurs="0" maxOccurs="1"/>
<xs:element name="id" type="xs:int"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="author" type="a:AuthorType"/>
<xs:complexType name="AuthorsType">
<xs:sequence>
<xs:element ref="a:author" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:element name="authors" type="a:AuthorsType"/>
</xs:schema>

View File

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="UTF-8"?>