|
|||
|
This is version 18.
It is not the current version, and thus it cannot be edited. Current Development Tasks
A grammar for semantic annotations
[1] AnnotationGroup ::= ( Annotation )+ [2] Annotation ::= ItemExp ( "," ItemExp )* "==>" OntExp [3] ItemExp ::= "/" ItemPath [4] ItemPath ::= ElemName ( "[" ItemCntxtExp "]" )* ( Var )? | ItemPath "/" ItemPath | "*" | "." [5] Var ::= "{" "$" VarName "}" [6] ItemCntxtExp ::= ItemPath | ItemPath ValueComp ItemValue [7] ValueComp ::= "eq" | "ne" | "lt" | "le" | "gt" | "ge" [8] OntExp ::= ConceptName ( Var )? ( OntPath )? [9] OntPath ::= "." RoleName ( "#" ConceptName )? ( Var )? ( OntPath )?
<!-- 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>
|
This material is based upon work supported by the National Science Foundation under award 0225676. Any opinions, findings and conclusions or recomendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation (NSF). Copyright 2004 Partnership for Biodiversity Informatics, University of New Mexico, The Regents of the University of California, and University of Kansas |