Skip to content

Commit

Permalink
Category: added R7 export compatability
Browse files Browse the repository at this point in the history
  • Loading branch information
smeyer-ilias committed Jul 19, 2024
1 parent b08ed31 commit e344a06
Show file tree
Hide file tree
Showing 2 changed files with 249 additions and 0 deletions.
7 changes: 7 additions & 0 deletions Modules/Category/Export/class.ilCategoryExporter.php
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,13 @@ public function getXmlRepresentation(string $a_entity, string $a_schema_version,
public function getValidSchemaVersions(string $a_entity): array
{
return [
"7.0.0" => [
'namespace' => 'https://www.ilias.de/Modules/Category/cat/7_0',
'xsd_file' => 'ilias_cat_7_0.xsd',
'uses_dataset' => false,
'min' => '7.0',
'max' => ''
],
"4.3.0" => [
"namespace" => "https://www.ilias.de/Modules/Category/cat/4_3",
"xsd_file" => "ilias_cat_4_3.xsd",
Expand Down
242 changes: 242 additions & 0 deletions xml/ilias_cat_7.xsd
Original file line number Diff line number Diff line change
@@ -0,0 +1,242 @@
<?xml version="1.0" encoding="UTF-8"?>

<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">

<xs:element name="Category">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" ref="Translations"/>
<xs:element minOccurs="0" ref="Sort"/>
<xs:element minOccurs="0" ref="ContainerSettings"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:element name="Translations">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="Translation" type="Translation"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:complexType name="Translation">
<xs:all>
<xs:element name="Title" type="xs:string"/>
<xs:element name="Description" type="xs:string"/>
</xs:all>
<xs:attribute name="default">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="1"/>
<xs:enumeration value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="language">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="none"/>
<xs:enumeration value="aa"/>
<xs:enumeration value="ab"/>
<xs:enumeration value="af"/>
<xs:enumeration value="am"/>
<xs:enumeration value="ar"/>
<xs:enumeration value="as"/>
<xs:enumeration value="ay"/>
<xs:enumeration value="az"/>
<xs:enumeration value="ba"/>
<xs:enumeration value="be"/>
<xs:enumeration value="bg"/>
<xs:enumeration value="bh"/>
<xs:enumeration value="bi"/>
<xs:enumeration value="bn"/>
<xs:enumeration value="bo"/>
<xs:enumeration value="br"/>
<xs:enumeration value="ca"/>
<xs:enumeration value="co"/>
<xs:enumeration value="cs"/>
<xs:enumeration value="cy"/>
<xs:enumeration value="da"/>
<xs:enumeration value="de"/>
<xs:enumeration value="dz"/>
<xs:enumeration value="el"/>
<xs:enumeration value="en"/>
<xs:enumeration value="eo"/>
<xs:enumeration value="es"/>
<xs:enumeration value="et"/>
<xs:enumeration value="eu"/>
<xs:enumeration value="fa"/>
<xs:enumeration value="fi"/>
<xs:enumeration value="fj"/>
<xs:enumeration value="fo"/>
<xs:enumeration value="fr"/>
<xs:enumeration value="fy"/>
<xs:enumeration value="ga"/>
<xs:enumeration value="gd"/>
<xs:enumeration value="gl"/>
<xs:enumeration value="gn"/>
<xs:enumeration value="gu"/>
<xs:enumeration value="ha"/>
<xs:enumeration value="he"/>
<xs:enumeration value="hi"/>
<xs:enumeration value="hr"/>
<xs:enumeration value="hu"/>
<xs:enumeration value="hy"/>
<xs:enumeration value="ia"/>
<xs:enumeration value="ie"/>
<xs:enumeration value="ik"/>
<xs:enumeration value="id"/>
<xs:enumeration value="is"/>
<xs:enumeration value="it"/>
<xs:enumeration value="iu"/>
<xs:enumeration value="ja"/>
<xs:enumeration value="jv"/>
<xs:enumeration value="ka"/>
<xs:enumeration value="kk"/>
<xs:enumeration value="kl"/>
<xs:enumeration value="km"/>
<xs:enumeration value="kn"/>
<xs:enumeration value="ko"/>
<xs:enumeration value="ks"/>
<xs:enumeration value="ku"/>
<xs:enumeration value="ky"/>
<xs:enumeration value="la"/>
<xs:enumeration value="ln"/>
<xs:enumeration value="lo"/>
<xs:enumeration value="lt"/>
<xs:enumeration value="lv"/>
<xs:enumeration value="mg"/>
<xs:enumeration value="mi"/>
<xs:enumeration value="mk"/>
<xs:enumeration value="ml"/>
<xs:enumeration value="mn"/>
<xs:enumeration value="mo"/>
<xs:enumeration value="mr"/>
<xs:enumeration value="ms"/>
<xs:enumeration value="mt"/>
<xs:enumeration value="my"/>
<xs:enumeration value="na"/>
<xs:enumeration value="ne"/>
<xs:enumeration value="nl"/>
<xs:enumeration value="no"/>
<xs:enumeration value="oc"/>
<xs:enumeration value="om"/>
<xs:enumeration value="or"/>
<xs:enumeration value="pa"/>
<xs:enumeration value="pl"/>
<xs:enumeration value="ps"/>
<xs:enumeration value="pt"/>
<xs:enumeration value="qu"/>
<xs:enumeration value="rm"/>
<xs:enumeration value="rn"/>
<xs:enumeration value="ro"/>
<xs:enumeration value="ru"/>
<xs:enumeration value="rw"/>
<xs:enumeration value="sa"/>
<xs:enumeration value="sd"/>
<xs:enumeration value="sg"/>
<xs:enumeration value="sh"/>
<xs:enumeration value="si"/>
<xs:enumeration value="sk"/>
<xs:enumeration value="sl"/>
<xs:enumeration value="sm"/>
<xs:enumeration value="sn"/>
<xs:enumeration value="so"/>
<xs:enumeration value="sq"/>
<xs:enumeration value="sr"/>
<xs:enumeration value="ss"/>
<xs:enumeration value="st"/>
<xs:enumeration value="su"/>
<xs:enumeration value="sv"/>
<xs:enumeration value="sw"/>
<xs:enumeration value="ta"/>
<xs:enumeration value="te"/>
<xs:enumeration value="tg"/>
<xs:enumeration value="th"/>
<xs:enumeration value="ti"/>
<xs:enumeration value="tk"/>
<xs:enumeration value="tl"/>
<xs:enumeration value="tn"/>
<xs:enumeration value="to"/>
<xs:enumeration value="tr"/>
<xs:enumeration value="ts"/>
<xs:enumeration value="tt"/>
<xs:enumeration value="tw"/>
<xs:enumeration value="ug"/>
<xs:enumeration value="uk"/>
<xs:enumeration value="ur"/>
<xs:enumeration value="uz"/>
<xs:enumeration value="vi"/>
<xs:enumeration value="vo"/>
<xs:enumeration value="wo"/>
<xs:enumeration value="xh"/>
<xs:enumeration value="yi"/>
<xs:enumeration value="yo"/>
<xs:enumeration value="za"/>
<xs:enumeration value="zh"/>
<xs:enumeration value="zu"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>

<xs:element name="ContainerSettings">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="ContainerSetting" type="ContainerSetting"/>
</xs:sequence>
</xs:complexType>
</xs:element>

<xs:complexType name="ContainerSetting">
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>

<xs:element name="Sort">
<xs:complexType>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="Manual"/>
<xs:enumeration value="Title"/>
<xs:enumeration value="Activation"/>
<xs:enumeration value="Creation"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="direction">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="ASC"/>
<xs:enumeration value="DESC"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="position">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="Top"/>
<xs:enumeration value="Bottom"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="order">
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="Title"/>
<xs:enumeration value="Activation"/>
<xs:enumeration value="Creation"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>

</xs:schema>

0 comments on commit e344a06

Please sign in to comment.