-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.xsd
47 lines (44 loc) · 2.32 KB
/
main.xsd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="NFOStandard"
xmlns="NFOStandard"
elementFormDefault="qualified">
<!-- Import the common XSDs -->
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/common.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/person.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/library.xsd"/>
<!-- Import specific XSDs for different types of content -->
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/movie.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/tvshow.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/adult.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/anime.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/video.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/music.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/audiobook.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/podcast.xsd"/>
<xs:include schemaLocation="https://xsd.nfostandard.com/Schemas/musicvideo.xsd"/>
<!-- Define the root element and specify type based on content -->
<xs:element name="root" xmlns="NFOStandard">
<xs:complexType>
<xs:sequence>
<xs:element name="media" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:choice>
<xs:element name="movie" type="movieType"/>
<xs:element name="tvshow" type="tvshowType"/>
<xs:element name="adult" type="adultType"/>
<xs:element name="anime" type="animeType"/>
<xs:element name="video" type="videoType"/>
<xs:element name="music" type="musicType"/>
<xs:element name="audiobook" type="audiobookType"/>
<xs:element name="podcast" type="podcastType" />
<xs:element name="musicvideo" type="musicVideoType"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="library" type="metadataType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="stats" type="statsType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>