In order to provide as-you-type validation and to compute valid insertion proposals, Oxygen XML Editor needs an XML grammar (XML Schema, DTD, or RelaxNG) associated to the XML. The grammar specifies how the internal structure of the XML is defined.
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="report"> <xs:complexType> <xs:sequence> <xs:element ref="title"/> <xs:element ref="description"/> <xs:element ref="results"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="title" type="xs:string"/> <xs:element name="description"> <xs:complexType> <xs:sequence maxOccurs="unbounded"> <xs:element name="line"> <xs:complexType mixed="true"> <xs:sequence minOccurs="0" maxOccurs="unbounded"> <xs:element name="important" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="results"> <xs:complexType> <xs:sequence maxOccurs="unbounded"> <xs:element name="entry"> <xs:complexType> <xs:sequence> <xs:element name="test_name" type="xs:string"/> <xs:element name="passed" type="xs:boolean"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>