Permalink
Browse files

Update the doc a bit

The conventions used on the diagram of grammar modules now
follow for the most part the Angelov/Ranta CNL 2009 paper.
  • Loading branch information...
1 parent fd09cad commit 6ef23dc9053885ec1992b294a0e5e641349af60e @Kaljurand Kaljurand committed Apr 26, 2012
Showing with 50 additions and 19 deletions.
  1. +36 −5 docs/d11_1/d11_1.tex
  2. +14 −14 docs/d11_1/images/modules.dot
  3. BIN docs/d11_1/images/modules.pdf
View
@@ -160,14 +160,22 @@ \subsection{Structure}
We use GF RGL.
-GF grammar module structure (see figure \ref{fig:modules}).
+Multilingual ACE grammar module structure (see figure \ref{fig:modules}).
\begin{figure}[ht]
\centering
\includegraphics[width=0.99\textwidth]{modules}
-\caption[Relations between the modules]
+\caption[Relations between the ACE grammar modules]
{Relations between the modules, using German (Ger) as an example
-of one of the many concrete languages.}
+of one of the many concrete languages. To add support for a new language,
+e.g. Dutch, one must implement three files:
+AttemptoDut, which just
+instantiates the functor AttemptoI with Dutch-specific resources from the RGL;
+TestAttemptoDut, which contains the domain lexicon; and
+LexAttemptoDut, which implements the Dutch-specific resources that
+do not come from the RGL. The implementation of the lexicon can also
+rely on the resources (Dutch morphological paradigms) implemented
+in the RGL.}
\label{fig:modules}
\end{figure}
@@ -244,6 +252,19 @@ \subsection{ACE vs English}
\subsection{Main issues}
+[TODO: currently copied from \cite{ranta:cnl2009_revised}]
+The translation from one language to another using the abstract syntax of the
+resource grammar preserves syntactic structure. But it does not always give
+the intended result. [TODO: ACE-specific example]
+Thus the resource grammar should rather be used as a \emph{library} for
+defining the domain grammar. In those cases where direct syntax-based
+translation still works (which in practice does cover most cases), a lot of
+work can be saved, because the linearization function for a given abstract
+function can then be defined once and for all using the language-independent
+API of the resource library. Some exceptions to this can then be done for
+those languages that do not preserve syntactic structure in translation,
+but still using the library. [TODO: example]
+
\section{Evaluation}
To test the coverage and performance of the GF implementation of the
@@ -298,14 +319,24 @@ \subsection{Syntactic precision}
so there is no real reason why it should not be allowed in the
AceWiki subset.
-Also, support for object relative clauses (``.. that Mary likes'')
-is desirable (even though AceWiki does not support it).
+% AceWiki does support: ``... that Mary likes``
+Also, support for object relative clauses (``.. that Mary is mad-about'')
+is desirable (even though AceWiki does not completely support it).
+
+\subsection{Ambiguity}
+
+[TODO: does the grammar sometimes assign multiple trees to a sentence?]
\subsection{Multilinguality}
[TODO: interesting examples where the straight-forward translation produces
a completely different meaning]
+[TODO: the OntoGraph test set does not cover some core ACE equivalences,
+e.g. \emph{if-then} equals \emph{every}, double negation equals no negation.
+How are these equivalences preserved under the direct syntax-based
+translation?]
+
\subsection{Performance}
[TODO: the GF parser is very fast]
@@ -6,7 +6,7 @@ node [shape = "plaintext"];
edge [arrowsize=1 color=black];
subgraph cluster_0 {
- label = "Concrete (Ger)";
+ label = "ACE in German";
color = "yellowgreen";
AttemptoGer;
@@ -17,24 +17,24 @@ subgraph cluster_0 {
// RGL
RGL [shape = "circle"];
-// Abstract (ellipse)
-Attempto [shape = "ellipse"];
-Symbols [shape = "ellipse"];
-TestAttempto [shape = "ellipse"];
+// Abstract (rect)
+Attempto [shape = "rect"];
+Symbols [shape = "rect"];
+TestAttempto [shape = "rect"];
-// Incomplete (rect)
-AttemptoI [shape = "rect"];
+// Incomplete (dashed rect)
+AttemptoI [shape = "rect" style = "dashed"];
-// Interface (diamond)
-LexAttempto [shape = "diamond"];
+// Interface (dashed diamond)
+LexAttempto [shape = "diamond" style = "dashed"];
-// Concrete
-SymbolsC;
-AttemptoGer;
-TestAttemptoGer;
+// Concrete (ellipse)
+SymbolsC [shape = "ellipse"];
+AttemptoGer [shape = "ellipse"];
+TestAttemptoGer [shape = "ellipse"];
// Instance
-LexAttemptoGer;
+LexAttemptoGer [shape = "diamond"];
// TODO: what is the correct convention?
// dotted = concrete
Binary file not shown.

0 comments on commit 6ef23dc

Please sign in to comment.