gem-graph-server/debian/var/models/schemas/example.xmls

195 lines
6.1 KiB
Plaintext
Raw Normal View History

<?xml version="1.0" encoding="UTF-8"?>
2021-09-18 16:44:10 +02:00
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
2021-09-19 22:39:47 +02:00
<xs:attribute name="id" type="xs:string"/>
<xs:attribute name="date" type="xs:integer"/>
2021-09-20 18:21:31 +02:00
<xs:attribute name="name" type="xs:string"/>
<xs:attribute name="lang" type="xs:string"/>
<xs:attribute name="owner" type="xs:string"/>
<xs:attribute name="owner_id" type="xs:integer"/>
2021-09-19 22:39:47 +02:00
<xs:attribute name="author" type="xs:string"/>
<xs:attribute name="version" type="xs:float"/>
<xs:attribute name="sequence" type="xs:integer"/>
<xs:attribute name="probability" type="xs:integer"/>
<xs:attribute name="parent" type="xs:string"/>
2021-09-19 22:39:47 +02:00
<xs:element name="a_string" type="xs:string"/>
2021-09-20 18:21:31 +02:00
<xs:element name="ref">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute ref="id"/>
<xs:attribute ref="date"/>
<xs:attribute ref="author"/>
<xs:attribute ref="lang" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="quote" substitutionGroup="ref"/>
<xs:element name="arrow">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" ref="quote"/>
</xs:sequence>
<xs:attribute name="x" type="xs:integer" default="1"/>
<xs:attribute name="y" type="xs:integer" default="0"/>
<xs:attribute name="z" type="xs:integer" default="0"/>
<xs:attribute name="site" type="xs:integer" default="1"/>
<xs:attribute name="weight" type="xs:integer" default="0"/>
</xs:complexType>
</xs:element>
2021-09-19 22:39:47 +02:00
<xs:element name="state">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element ref="arrow"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
<xs:attribute ref="date" use="required"/>
<xs:attribute ref="author" use="required"/>
</xs:complexType>
</xs:element>
2021-09-20 18:21:31 +02:00
<xs:element name="object" substitutionGroup="state"/>
2021-09-20 18:21:31 +02:00
<xs:element name="space">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element ref="arrow"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
<xs:attribute ref="date" use="required"/>
<xs:attribute ref="author" use="required"/>
<xs:attribute ref="sequence" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="if">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element minOccurs="0" ref="quote"/>
<xs:element ref="arrow"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="then">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element minOccurs="0" ref="quote"/>
<xs:element ref="arrow"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="transition">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element minOccurs="0" ref="quote"/>
<xs:element ref="if"/>
<xs:element ref="then"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
<xs:attribute ref="date" use="required"/>
<xs:attribute ref="author" use="required"/>
<xs:attribute ref="parent" use="required"/>
<xs:attribute ref="probability" use="required"/>
</xs:complexType>
</xs:element>
2021-09-18 16:44:10 +02:00
<xs:element name="gem-graph-model">
<xs:complexType>
<xs:sequence>
2021-09-18 19:32:29 +02:00
<xs:element name="identity">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="owner" type="xs:string"/>
<xs:element name="owner_id" type="xs:integer"/>
<xs:element name="date" type="xs:integer"/>
<xs:element name="version" type="xs:float"/>
<xs:element minOccurs="0" ref="ref"/>
</xs:sequence>
2021-09-18 19:32:29 +02:00
</xs:complexType>
</xs:element>
<xs:element name="parameters">
2021-09-18 19:32:29 +02:00
<xs:complexType>
<xs:sequence>
<xs:element name="simulation">
2021-09-18 19:32:29 +02:00
<xs:complexType>
<xs:sequence>
<xs:element name="max_thread"/>
2021-09-18 19:32:29 +02:00
<xs:element name="max_cycles"/>
2021-09-18 19:32:29 +02:00
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="space-param">
2021-09-18 19:32:29 +02:00
<xs:complexType>
<xs:sequence>
<xs:element name="dimension"/>
<xs:element name="size"/>
<xs:element name="site_multiplicity"/>
2021-09-18 16:46:39 +02:00
</xs:sequence>
</xs:complexType>
2021-09-18 19:32:29 +02:00
</xs:element>
</xs:sequence>
2021-09-19 22:58:37 +02:00
<xs:attribute ref="id" use="required"/>
<xs:attribute ref="date" use="required"/>
<xs:attribute ref="author" use="required"/>
2021-09-18 19:32:29 +02:00
</xs:complexType>
2021-09-18 16:46:39 +02:00
</xs:element>
2021-09-18 19:32:29 +02:00
2021-09-18 19:50:06 +02:00
<xs:element name="objects">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element ref="state"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
<xs:attribute ref="date" use="required"/>
<xs:attribute ref="author" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="savestates">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element ref="space"/>
2021-09-18 19:50:06 +02:00
</xs:sequence>
2021-09-19 22:58:37 +02:00
<xs:attribute ref="id" use="required"/>
<xs:attribute ref="date" use="required"/>
<xs:attribute ref="author" use="required"/>
2021-09-18 19:50:06 +02:00
</xs:complexType>
</xs:element>
<xs:element name="transitions">
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element ref="transition"/>
</xs:sequence>
<xs:attribute ref="id" use="required"/>
<xs:attribute ref="date" use="required"/>
<xs:attribute ref="author" use="required"/>
</xs:complexType>
</xs:element>
2021-09-18 16:44:10 +02:00
</xs:sequence>
<xs:attribute ref="version" use="required"/>
2021-09-18 16:44:10 +02:00
</xs:complexType>
</xs:element>
</xs:schema>