From 7c7589035f5c2e0613653393798a4b9fa9210b05 Mon Sep 17 00:00:00 2001
From: Anders Nilsson <andersn@control.lth.se>
Date: Thu, 3 Jul 2014 11:51:06 +0200
Subject: [PATCH] Added a number of previously unknown keywords.

---
 owl.ast |  7 ++++++
 owl.jjt | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 71 insertions(+), 2 deletions(-)

diff --git a/owl.ast b/owl.ast
index f40fb1b..7b691a4 100644
--- a/owl.ast
+++ b/owl.ast
@@ -72,6 +72,7 @@ RdfProperty : ComplexElement;
 RdfRest : ComplexElement;
 RdfType : ComplexElement;
 RdfsComment : ComplexElement;
+RdfsDatatype : ComplexElement;
 RdfsDomain : ComplexElement;
 RdfsLabel : ComplexElement;
 RdfsRange : ComplexElement;
@@ -96,14 +97,19 @@ OwlIntersectionOf : ComplexElement;
 OwlInverseOf : ComplexElement;
 OwlMinCardinality : ComplexElement;
 OwlMaxCardinality : ComplexElement;
+OwlNamedIndividual : ComplexElement;
 OwlObjectProperty : OwlProperty;
+OwlOnClass : ComplexElement;
+OwlOnDatatype : ComplexElement;
 OwlOneOf : ComplexElement;
 OwlOnProperty : OwlProperty;
+OwlQualifiedCardinality : ComplexElement;
 OwlRestriction : ComplexElement;
 OwlSomeValuesFrom : OwlValuesFrom;
 OwlTransitiveProperty : ComplexElement;
 OwlUnionOf : ComplexElement;
 OwlVersionInfo : ComplexElement;
+OwlWithRestrictions : ComplexElement;
 P1AnyOrder : ComplexElement;
 P1Components : ComplexElement;
 P1ComposedOf : ComplexElement;
@@ -126,6 +132,7 @@ P1UntilProcess : ComplexElement;
 P1UntilCondition : ComplexElement;
 ProcessParticipant : ComplexElement;
 ProcessPerform : ComplexElement;
+XsdMinInclusive : ComplexElement;
 
 abstract SimpleElement : Element;
 StringElement : SimpleElement ::= <LITERAL>;
diff --git a/owl.jjt b/owl.jjt
index 72b90de..a2444ac 100644
--- a/owl.jjt
+++ b/owl.jjt
@@ -27,9 +27,9 @@ options {
     NODE_PREFIX                 = "";
     JAVA_UNICODE_ESCAPE         = true;
     STATIC                      = false;
-	//  	DEBUG_PARSER                = true;
+    // DEBUG_PARSER                = true;
 // 	DEBUG_LOOKAHEAD             = true;
-//  	DEBUG_TOKEN_MANAGER         = true;
+  	 // DEBUG_TOKEN_MANAGER         = true;
 } // options
 
 
@@ -134,15 +134,20 @@ SPECIAL_TOKEN : /* COMMENTS */
   | < OWL_INVERSEOF         : "owl:inverseOf" >
   | < OWL_MAXCARDINALITY     : "owl:maxCardinality" >
   | < OWL_MINCARDINALITY     : "owl:minCardinality" >
+  | < OWL_NAMEDINDIVIDUAL   : "owl:NamedIndividual" >
   | < OWL_OBJECTPROPERTY    : "owl:ObjectProperty" >
   | < OWL_ONPROPERTY        : "owl:onProperty" >
+  | < OWL_ONCLASS           : "owl:onClass" >
+  | < OWL_ONDATATYPE        : "owl:onDatatype" >
   | < OWL_ONEOF             : "owl:oneOf" >
   | < OWL_ONTOLOGY          : "owl:Ontology" >
+  | < OWL_QUALIFIEDCARDINALITY          : "owl:qualifiedCardinality" >
   | < OWL_RESTRICTION       : "owl:Restriction" >
   | < OWL_SOMEVALUESFROM    : "owl:someValuesFrom" >
   | < OWL_TRANSITIVEPROPERTY : "owl:TransitiveProperty" >
   | < OWL_UNIONOF           : "owl:unionOf" >
   | < OWL_VERSIONINFO       : "owl:versionInfo" >
+  | < OWL_WITHRESTRICTIONS  : "owl:withRestrictions" >
   | < P1_ANYORDER           : "p1:Any-Order" >
   | < P1_COMPONENTS         : "p1:components" >
   | < P1_COMPOSEDOF         : "p1:composedOf" >
@@ -177,6 +182,7 @@ SPECIAL_TOKEN : /* COMMENTS */
   | < RDF_RESOURCE          : "rdf:resource" >
   | < RDF_TYPE              : "rdf:type" >
   | < RDFS_COMMENT          : "rdfs:comment" >
+  | < RDFS_DATATYPE         : "rdfs:Datatype" >
   | < RDFS_DOMAIN           : "rdfs:domain" >
   | < RDFS_LABEL            : "rdfs:label" >
   | < RDFS_RANGE            : "rdfs:range" >
@@ -189,6 +195,7 @@ SPECIAL_TOKEN : /* COMMENTS */
   | < XMLNS                 : "xmlns" >	 
   | < XMLNS_XML                 : "xmlns:xml" >	 
   | < XMLNS_XX                 : "xmlns:" >	 
+  | < XSD_MININCLUSIVE      : "xsd:minInclusive" >	 
 //   | < XMLNS_DAML            : "xmlns:daml" >	 
 //   | < XMLNS_DC              : "xmlns:dc" >	 
 //   | < XMLNS_EXPR              : "xmlns:expr" >	 
@@ -433,6 +440,7 @@ void Element() : {}
 	    | P1Element()
 	    | ProcessElement()
 	    | DiscardedElement()
+	    | XsdElement()
 	    ))
 	| SimpleElement()
 }
@@ -734,14 +742,19 @@ void OwlElement() : {}
 	| OwlInverseOf()
 	| OwlMaxCardinality()
 	| OwlMinCardinality()
+	| OwlNamedIndividual()
 	| OwlObjectProperty()
 	| OwlOneOf()
+	| OwlOnClass()
+	| OwlOnDatatype()
 	| OwlOnProperty()
+	| OwlQualifiedCardinality()
 	| OwlRestriction()
 	| OwlSomeValuesFrom()
 	| OwlTransitiveProperty()
 	| OwlUnionOf()
 	| OwlVersionInfo()
+	| OwlWithRestrictions()
 }
 
 void OwlOntology() #OwlOntology : {}
@@ -852,6 +865,12 @@ void OwlMinCardinality () #OwlMinCardinality  : {}
 	(">" ElementList() "</" <OWL_MINCARDINALITY> ">" | ElementList() "/>")
 }
 
+void OwlNamedIndividual () #OwlNamedIndividual  : {}
+{
+    <OWL_NAMEDINDIVIDUAL> AttributeList() 
+	(">" ElementList() "</" <OWL_NAMEDINDIVIDUAL> ">" | ElementList() "/>")
+}
+
 void OwlObjectProperty () #OwlObjectProperty  : {}
 {
     <OWL_OBJECTPROPERTY> AttributeList() 
@@ -864,12 +883,30 @@ void OwlOneOf () #OwlOneOf  : {}
 	(">" ElementList() "</" <OWL_ONEOF> ">" | ElementList() "/>")
 }
 
+void OwlOnClass () #OwlOnClass  : {}
+{
+    <OWL_ONCLASS> AttributeList() 
+	(">" ElementList() "</" <OWL_ONCLASS> ">" | ElementList() "/>")
+}
+
+void OwlOnDatatype () #OwlOnDatatype  : {}
+{
+    <OWL_ONDATATYPE> AttributeList() 
+	(">" ElementList() "</" <OWL_ONDATATYPE> ">" | ElementList() "/>")
+}
+
 void OwlOnProperty () #OwlOnProperty  : {}
 {
     <OWL_ONPROPERTY> AttributeList() 
 	(">" ElementList() "</" <OWL_ONPROPERTY> ">" | ElementList() "/>")
 }
 
+void OwlQualifiedCardinality () #OwlQualifiedCardinality  : {}
+{
+    <OWL_QUALIFIEDCARDINALITY> AttributeList() 
+	(">" ElementList() "</" <OWL_QUALIFIEDCARDINALITY> ">" | ElementList() "/>")
+}
+
 void OwlRestriction () #OwlRestriction  : {}
 {
     <OWL_RESTRICTION> AttributeList() 
@@ -900,6 +937,12 @@ void OwlVersionInfo () #OwlVersionInfo  : {}
 	(">" ElementList() "</" <OWL_VERSIONINFO> ">" | ElementList() "/>")
 }
 
+void OwlWithRestrictions () #OwlWithRestrictions  : {}
+{
+    <OWL_WITHRESTRICTIONS> AttributeList() 
+	(">" ElementList() "</" <OWL_WITHRESTRICTIONS> ">" | ElementList() "/>")
+}
+
 void P1Element() : {}
 {
     P1AnyOrder()
@@ -1071,6 +1114,7 @@ void RdfElement() : {}
 	| RdfProperty()
 	| RdfRest()
 	| RdfsComment()
+	| RdfsDatatype()
 	| RdfsDomain()
 	| RdfsLabel()
 	| RdfsRange()
@@ -1115,6 +1159,12 @@ void RdfsComment() #RdfsComment : {}
 	(">" ElementList() "</" <RDFS_COMMENT> ">" | ElementList() "/>")
 }
 
+void RdfsDatatype() #RdfsDatatype : {}
+{
+    <RDFS_DATATYPE> AttributeList() 
+	(">" ElementList() "</" <RDFS_DATATYPE> ">" | ElementList() "/>")
+}
+
 void RdfsDomain() #RdfsDomain : {}
 {
     <RDFS_DOMAIN> AttributeList() 
@@ -1151,6 +1201,17 @@ void RdfsSubPropertyOf() #RdfsSubPropertyOf : {}
 	(">" ElementList() "</" <RDFS_SUBPROPERTYOF> ">" | ElementList() "/>")
 }
 
+void XsdElement() : {}
+{
+    XsdMinInclusive()
+}
+
+void XsdMinInclusive() #XsdMinInclusive : {}
+{
+    <XSD_MININCLUSIVE> AttributeList() 
+	(">" ElementList() "</" <XSD_MININCLUSIVE> ">" | ElementList() "/>")
+}
+
 void AttributeList() #List : {}
 {
     (Attribute())*
@@ -1366,3 +1427,4 @@ void Value() #Value : { Token t; }
     t = <STRING_LITERAL>
 	{jjtThis.setSTRING_LITERAL(t.image);}
 }
+
-- 
GitLab