Skip to content
Snippets Groups Projects
xmlschema.ast 1.78 KiB
Newer Older
// -*-Java-*-

 
// Copyright (C) 2006  Anders Nilsson <anders.nilsson@cs.lth.se>
//
// This file is part of OntologyCompiler.


Start ::= Specification;

Specification ::= XmlHeader; // RdfDeclaration;

XmlHeader ::= Attribute*;

abstract Element;
abstract ComplexElement : Element ::= Attribute* Element*;

XsAnnotation     : ComplexElement;
XsDocumentation  : ComplexElement;
XsInclude        : ComplexElement;
XsRestriction    : ComplexElement;
XsSimpleType     : ComplexElement;
XsSchema         : ComplexElement;


abstract SimpleElement : Element;
StringElement : SimpleElement ::= <IDENTIFIER>;
IntElement : SimpleElement ::= <INTEGER_LITERAL>;
FloatElement : SimpleElement ::= <FLOAT_LITERAL>;

abstract Attribute ::= Value;
AttributeFormDefault : Attribute;
Base                 : Attribute;
ElementFormDefault   : Attribute;
Encoding             : Attribute;
Source               : Attribute;
SchemaLocation       : Attribute;
Version              : Attribute;
XmlnsXs              : Attribute;
// RdfAbout : Attribute;
// RdfDatatype : Attribute;
// RdfId : Attribute;
// RdfParseType : Attribute;
// RdfResource : Attribute;
// XmlBase : Attribute;
// Xmlns : Attribute;
// XmlnsDaml : Attribute;
// XmlnsDc : Attribute;
// XmlnsP1 : Attribute;
// XmlnsProtege : Attribute;
// XmlnsRdf : Attribute;
// XmlnsXsd : Attribute;
// XmlnsRdfs : Attribute;
// XmlnsOwl : Attribute;

// DiscardedElement : Element ::= Identifier Attribute* Element*;

Value ::= <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;