Newer
Older
// Copyright (C) 2007,2008,2009 Anders Nilsson <anders.nilsson@cs.lth.se>
//
// This file is part of XMLSchemaCompiler.
//
// XMLSchemaCompiler is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// XMLSchemaCompiler is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with XMLSchemaCompiler. If not, see <http://www.gnu.org/licenses/>.
XmlHeader ::= Attribute*;
abstract Element;
abstract ComplexElement : Element ::= Attribute* Element*;
XsAnnotation : ComplexElement;
XsAny : ComplexElement;
XsAnyAttribute : ComplexElement;
XsAppinfo : ComplexElement;
XsAttribute : ComplexElement;
XsAttributeGroup : ComplexElement;
XsComplexContent : ComplexElement;
XsComplexType : ComplexElement;
XsEnumeration : ComplexElement;
XsExtension : ComplexElement;
XsGroup : ComplexElement;
XsMaxInclusive : ComplexElement;
XsMinInclusive : ComplexElement;
XsMinExclusive : ComplexElement;
Anders Nilsson
committed
XsSimpleContent : ComplexElement;
XsSimpleType : ComplexElement;
XsSchema : ComplexElement;
StringElement : SimpleElement ::= <STRING>;
CDataElement : SimpleElement ::= <STRING>;
IntElement : SimpleElement ::= <INTEGER_LITERAL>;
FloatElement : SimpleElement ::= <FLOAT_LITERAL>;
AttributeFormDefault : Attribute;
Base : Attribute;
ElementFormDefault : Attribute;
Encoding : Attribute;
ItemType : Attribute;
MinOccurs : Attribute;
MaxOccurs : Attribute;
Mixed : Attribute;
Name : Attribute;
Namespace : Attribute;
ProcessContents : Attribute;
Source : Attribute;
SchemaLocation : Attribute;
Version : Attribute;
XmlnsXs : Attribute;
// DiscardedElement : Element ::= Identifier Attribute* Element*;
// 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;