Line 12 was replaced by line 12 |
- [1] AnnotGroup ::= ( Annot )+ |
+ [1] AnnotationGroup ::= ( Annotation )+ |
Line 14 was replaced by line 14 |
- [2] Annot ::= ItemExp ( "," ItemExp )* "==>" OntExp |
+ [2] Annotation ::= ItemExp ( "," ItemExp )* "==>" OntExp |
Line 16 was replaced by line 16 |
- [3] ItemExp ::= "/" ItemPath |
+ [3] ItemExp ::= "/" ItemPath |
Lines 18-21 were replaced by lines 18-21 |
- [4] ItemPath ::= ElemName ( "[" ItemCntxtExp "]" )* ( Var )? | |
- ItemPath "/" ItemPath | |
- "*" | |
- "." |
+ [4] ItemPath ::= ElemName ( "[" ItemCntxtExp "]" )* ( Var )? | |
+ ItemPath "/" ItemPath | |
+ "*" | |
+ "." |
Line 23 was replaced by line 23 |
- [5] Var ::= "{" "$" VarName "}" |
+ [5] Var ::= "{" "$" VarName "}" |
Lines 25-26 were replaced by lines 25-26 |
- [6] ItemCntxtExp ::= ItemPath | |
- ItemPath ValueComp ItemValue |
+ [6] ItemCntxtExp ::= ItemPath | |
+ ItemPath ValueComp ItemValue |
Line 28 was replaced by line 28 |
- [7] ValueComp ::= "eq" | "ne" | "lt" | "le" | "gt" | "ge" |
+ [7] ValueComp ::= "eq" | "ne" | "lt" | "le" | "gt" | "ge" |
Line 31 was replaced by line 31 |
- [8] OntExp ::= ConceptName ( Var )? ( OntPath )? |
+ [8] OntExp ::= ConceptName ( Var )? ( OntPath )? |
Line 34 was replaced by line 34 |
- [9] OntPath ::= "." RoleName ( "#" ConceptName )? ( Var )? ( OntPath )? |
+ [9] OntPath ::= "." RoleName ( "#" ConceptName )? ( Var )? ( OntPath )? |
At line 35 added 69 lines. |
+ |
+ * Some simple examples of an XML-ified version: |
+ |
+ {{{ |
+ <!-- a very simple annotation --> |
+ <sms:AnnotationGroup object="urn:lsid:..."> |
+ <sms:Annotation> / ==> AConcept </sms:Annotation> |
+ </sms:AnnotationGroup> |
+ }}} |
+ |
+ {{{ |
+ <!-- a simple annotation where a new concept is defined --> |
+ <sms:AnnotationGroup object="urn:lsid:..."> |
+ <sms:Annotation> / ==> MyConcept </sms:Annotation> |
+ <sms:Where> |
+ <owl:Class rdf:ID="MyConcept"> |
+ ... |
+ </owl:Class> |
+ </sms:Where> |
+ </sms:AnnotationGroup> |
+ }}} |
+ |
+ {{{ |
+ <!-- a minimilistic port/dataset style annotation --> |
+ <sms:AnnotationGroup object="urn:lsid:..."> |
+ <sms:Annotation> /r/row/x1 ==> Transect.start.lat </sms:Annotation> |
+ <sms:Annotation> /r/row/x2 ==> Transect.end.lat </sms:Annotation> |
+ <sms:Annotation> /r/row/y1 ==> Transect.start.lon </sms:Annotation> |
+ <sms:Annotation> /r/row/y2 ==> Transect.end.lon </sms:Annotation> |
+ </sms:AnnotationGroup> |
+ }}} |
+ |
+ {{{ |
+ <!-- a slightly more detailed port/dataset style annotation --> |
+ <sms:AnnotationGroup object="urn:lsid:..."> |
+ <sms:Annotation> /r/row/x1 ==> Transect{$r}.start{$s}.lat </sms:Annotation> |
+ <sms:Annotation> /r/row/x2 ==> Transect{$r}.end{$t}.lat </sms:Annotation> |
+ <sms:Annotation> /r/row/y1 ==> Transect{$r}.start{$s}.lon </sms:Annotation> |
+ <sms:Annotation> /r/row/y2 ==> Transect{$r}.end{$t}.lon </sms:Annotation> |
+ </sms:AnnotationGroup> |
+ }}} |
+ |
+ {{{ |
+ <!-- an unambigious detailed port/dataset style annotation --> |
+ <sms:AnnotationGroup object="urn:lsid:..."> |
+ <sms:Annotation> /r/row{$q}/x1 ==> Transect{$r}.start{$s}.lat </sms:Annotation> |
+ <sms:Annotation> /r/row{$q}/x2 ==> Transect{$r}.end{$t}.lat </sms:Annotation> |
+ <sms:Annotation> /r/row{$q}/y1 ==> Transect{$r}.start{$s}.lon </sms:Annotation> |
+ <sms:Annotation> /r/row{$q}/y2 ==> Transect{$r}.end{$t}.lon </sms:Annotation> |
+ </sms:AnnotationGroup> |
+ }}} |
+ |
+ {{{ |
+ <!-- an unambigious detailed port/dataset style annotation with inlined concept defs --> |
+ <sms:AnnotationGroup object="urn:lsid:..."> |
+ <sms:Annotation> /r/row{$q}/x1 ==> Transect{$r}.start#MyPoint{$s}.lat </sms:Annotation> |
+ <sms:Annotation> /r/row{$q}/x2 ==> Transect{$r}.end#MyPoint{$t}.lat </sms:Annotation> |
+ <sms:Annotation> /r/row{$q}/y1 ==> Transect{$r}.start#MyPoint{$s}.lon </sms:Annotation> |
+ <sms:Annotation> /r/row{$q}/y2 ==> Transect{$r}.end#MyPoint{$t}.lon </sms:Annotation> |
+ <sms:Where> |
+ <owl:Class rdf:ID="MyPoint"> |
+ <rdfs:subClassOf rdf:resource="Point"/> |
+ ... |
+ </owl:Class> |
+ </sms:Where> |
+ </sms:AnnotationGroup> |
+ }}} |
+ |
+ |