// -*-Java-*- // Copyright (C) 2007 Anders Nilsson <anders.nilsson@cs.lth.se> // // This file is part of XmlSchemaCompiler. Start ::= Specification; Specification ::= XmlHeader XsSchema; XmlHeader ::= Attribute*; abstract Element; abstract ComplexElement : Element ::= Attribute* Element*; XsAnnotation : ComplexElement; XsAppinfo : ComplexElement; XsAttribute : ComplexElement; XsAttributeGroup : ComplexElement; XsChoice : ComplexElement; XsComplexContent : ComplexElement; XsComplexType : ComplexElement; XsDocumentation : ComplexElement; XsElement : ComplexElement; XsEnumeration : ComplexElement; XsExtension : ComplexElement; XsGroup : ComplexElement; XsInclude : ComplexElement; XsList : ComplexElement; XsMaxInclusive : ComplexElement; XsMinInclusive : ComplexElement; XsMinExclusive : ComplexElement; XsMinLength : ComplexElement; XsPattern : ComplexElement; XsRestriction : ComplexElement; XsSequence : ComplexElement; XsSimpleContent : ComplexElement; XsSimpleType : ComplexElement; XsSchema : ComplexElement; XsWhiteSpace : ComplexElement; abstract SimpleElement : Element; StringElement : SimpleElement ::= <STRING>; CDataElement : SimpleElement ::= <STRING>; IntElement : SimpleElement ::= <INTEGER_LITERAL>; FloatElement : SimpleElement ::= <FLOAT_LITERAL>; abstract Attribute ::= AttValue; Abstract : Attribute; AttributeFormDefault : Attribute; Base : Attribute; Default : Attribute; ElementFormDefault : Attribute; Encoding : Attribute; Fixed : Attribute; ItemType : Attribute; MinOccurs : Attribute; MaxOccurs : Attribute; Mixed : Attribute; Name : Attribute; Ref : Attribute; Source : Attribute; SchemaLocation : Attribute; Type : Attribute; Use : Attribute; Value : Attribute; Version : Attribute; XmlnsXs : Attribute; // DiscardedElement : Element ::= Identifier Attribute* Element*; AttValue ::= <STRING_LITERAL>; // Identifier ::= <IDENTIFIER>; // // Types used by rewrite rules // abstract OClass : ComplexElement ::= <Id:String>; // OwlClassDecl : OClass; // OwlClassUse : OClass; // abstract OwlValuesFrom: ComplexElement; // Properties ::= Property:Element*; // Restrictions ::= OwlRestriction*; // abstract OwlProperty : ComplexElement;