LDL-v1.2.xsd
The last release of LDL xml binding schema
Size 11.2 kB - File type text/xmlFile contents
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:annotation>
<xs:documentation xml:lang="en">
LDL schema v1.2, 25-06-2006
by Christian Martel (christian.martel@pentila.com),
by Steve Giraud (steve.giraud@pentila.com),
by Igor Barma (igor.barma@pentila.com),
by Christine Ferraris (christine.ferraris@univ-savoie.fr),
by Laurence Vignollet (laurence.vignollet@univ-savoie.fr),
by Jean-Pierre David (jean-pierre.david@imag.fr),
by Anne Lejeune (anne.lejeune@imag.fr),
by Guillaume Durand (guillaume.durand@univ-savoie.fr),
This schema defines terms for LDL learning Design Langage
</xs:documentation>
</xs:annotation>
<xs:element name="Scenario">
<xs:complexType>
<xs:all>
<xs:element ref="metadonnees"/>
<xs:element ref="roles"/>
<xs:element ref="enceintes"/>
<xs:element ref="interactions"/>
<xs:element ref="structures"/>
<xs:element ref="rules"/>
<xs:element ref="positions"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="action" type="xs:string"/>
<xs:element name="author" type="xs:string"/>
<xs:element name="title" type="xs:string"/>
<xs:element name="uid" type="xs:string"/>
<xs:element name="description" type="xs:string"/>
<xs:element name="goal" type="xs:string"/>
<xs:element name="target" type="xs:string"/>
<xs:element name="laPosition" type="xs:string"/>
<xs:element name="dans" type="xs:string"/>
<xs:element name="de" type="xs:string"/>
<xs:element name="sur" type="xs:string"/>
<xs:element name="interaction_id" type="xs:string"/>
<xs:element name="exprCond" type="xs:string"/>
<xs:element name="param" type="xs:string"/>
<xs:element name="val" type="xs:string"/>
<xs:attribute name="kindOfStructure">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="selection"/>
<xs:enumeration value="sequence"/>
<xs:enumeration value="all"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="kindOfEnceinte">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="folder"/>
<xs:enumeration value="file"/>
<xs:enumeration value="text"/>
<xs:enumeration value="url"/>
<xs:enumeration value="forum"/>
<xs:enumeration value="chat"/>
<xs:enumeration value="atelier"/>
<xs:enumeration value="method"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="partition">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="individuelle"/>
<xs:enumeration value="commune"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:element name="valeur">
<xs:complexType mixed="true">
<xs:choice minOccurs="0">
<xs:element ref="Observer"/>
<xs:element ref="UserChoice"/>
<xs:element ref="TimeLimit"/>
<xs:element ref="Float"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="metadonnees">
<xs:complexType>
<xs:all>
<xs:element ref="uid" maxOccurs="1" minOccurs="0"/>
<xs:element ref="title"/>
<xs:element ref="description"/>
<xs:element ref="author"/>
<xs:element ref="goal"/>
<xs:element ref="target"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="comp">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="equalTo"/>
<xs:enumeration value="notEqualTo"/>
<xs:enumeration value="lessThan"/>
<xs:enumeration value="greaterThan"/>
<xs:enumeration value="lessOrEqualThan"/>
<xs:enumeration value="greaterOrEqualThan"/>
<xs:enumeration value="allEqualTo"/>
<xs:enumeration value="allNotEqualTo"/>
<xs:enumeration value="allLessThan"/>
<xs:enumeration value="allGreaterThan"/>
<xs:enumeration value="allLessOrEqualThan"/>
<xs:enumeration value="allGreaterOrEqualThan"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="source">
<xs:complexType mixed="true">
<xs:choice minOccurs="0">
<xs:element ref="Observer"/>
<xs:element name="URL" type="xs:string"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="UserChoice">
<xs:complexType>
<xs:sequence>
<xs:element name="label" type="xs:string"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="TimeLimit">
<xs:complexType>
<xs:sequence>
<xs:element name="delay" type="xs:integer"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="Float" type="xs:float"/>
<xs:element name="Condition">
<xs:complexType>
<xs:sequence>
<xs:element ref="laPosition"/>
<xs:element ref="comp"/>
<xs:element ref="val"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ExprConditionnelle">
<xs:complexType>
<xs:sequence>
<xs:element ref="exprCond"/>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="Condition"/>
</xs:sequence>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="si">
<xs:complexType>
<xs:sequence>
<xs:element ref="ExprConditionnelle"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="alors">
<xs:complexType>
<xs:sequence>
<xs:element ref="Interaction"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="sinon">
<xs:complexType>
<xs:sequence>
<xs:element ref="Interaction"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="destinataires">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0"
name="role" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="destinateurs">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="role" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Enceinte">
<xs:complexType>
<xs:sequence>
<xs:element ref="title"/>
<xs:element ref="description"/>
<xs:element minOccurs="0" ref="source"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="Enceinte"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute ref="kindOfEnceinte" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Observer">
<xs:complexType mixed="true">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="param"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Position">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="title" maxOccurs="1" minOccurs="1"/>
<xs:element maxOccurs="unbounded" minOccurs="1" ref="sur"/>
<xs:element maxOccurs="unbounded" minOccurs="1" ref="de"/>
<xs:element minOccurs="0" maxOccurs="1" ref="portee"/>
<xs:element minOccurs="0" maxOccurs="1" ref="valeur"/>
</xs:choice>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute ref="partition" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="portee">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="activite"/>
<xs:enumeration value="scenario"/>
<xs:enumeration value="infrastructure"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="positions">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="Position"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="enceintes">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="Enceinte"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Interaction">
<xs:complexType>
<xs:all>
<xs:element ref="action"/>
<xs:element ref="dans"/>
<xs:element ref="destinateurs"/>
<xs:element ref="destinataires"/>
<xs:element ref="results"/>
<xs:element ref="startOn" minOccurs="1" maxOccurs="1"/>
<xs:element ref="terminateOn" minOccurs="1" maxOccurs="1"/>
</xs:all>
<xs:attribute name="id" type="xs:NMTOKEN" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="interactions">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="Interaction"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="result">
<xs:complexType>
<xs:choice>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="Enceinte"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="Position"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="results">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="result"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="roles">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="Role"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Role">
<xs:complexType>
<xs:sequence>
<xs:element name="title" type="xs:string"/>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="Role"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="Rule">
<xs:complexType>
<xs:sequence>
<xs:element ref="si"/>
<xs:element minOccurs="0" ref="alors"/>
<xs:element minOccurs="0" ref="sinon"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="rules">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="Rule"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="terminateOn">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" ref="Rule"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="startOn">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" ref="Rule"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Structure">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="interaction_id"/>
<xs:element ref="Structure"/>
<xs:element ref="startOn" maxOccurs="1" minOccurs="1"/>
<xs:element ref="terminateOn" maxOccurs="1" minOccurs="0"/>
</xs:choice>
<xs:attribute name="id" type="xs:string" use="required"/>
<xs:attribute name="title" type="xs:string" use="optional"/>
<xs:attribute name="numberToSelect" type="xs:integer" use="optional"/>
<xs:attribute name="numberToRepeat" type="xs:integer" use="optional"/>
<xs:attribute ref="kindOfStructure"/>
</xs:complexType>
</xs:element>
<xs:element name="structures">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="Structure"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>


