forked from Isabelle_DOF/Isabelle_DOF
trimming, putting the begin-figure blocks in independent text elements
This commit is contained in:
parent
78cb606268
commit
1e7f6a7c18
|
@ -160,16 +160,14 @@ Based on a novel adaption of the Isabelle IDE, a document is checked to be
|
||||||
changes, where the \<^emph>\<open>coherence\<close> between the formal and the informal parts of the
|
changes, where the \<^emph>\<open>coherence\<close> between the formal and the informal parts of the
|
||||||
content can be mechanically checked.
|
content can be mechanically checked.
|
||||||
|
|
||||||
To avoid any misunderstanding: \<^isadof> is \<^emph>\<open>not a theory in HOL\<close>
|
To avoid any misunderstanding: \<^isadof> is \<^emph>\<open>not a theory in HOL\<close> on ontologies and operations
|
||||||
on ontologies and operations to track and trace links in texts,
|
to track and trace links in texts, it is an \<^emph>\<open>environment to write structured text\<close> which
|
||||||
it is an \<^emph>\<open>environment to write structured text\<close> which \<^emph>\<open>may contain\<close>
|
\<^emph>\<open>may contain\<close> \<^isabelle> definitions and proofs like mathematical articles, tech-reports and
|
||||||
\<^isabelle> definitions and proofs like mathematical articles, tech-reports and
|
scientific papers---as the present one, which is written in \<^isadof> itself. \<^isadof> is a plugin
|
||||||
scientific papers---as the present one, which is written in \<^isadof>
|
into the Isabelle/Isar framework in the style of~@{cite "wenzel.ea:building:2007"}.
|
||||||
itself. \<^isadof> is a plugin into the Isabelle/Isar
|
|
||||||
framework in the style of~@{cite "wenzel.ea:building:2007"}.
|
|
||||||
\<close>
|
\<close>
|
||||||
|
|
||||||
(* declaring the forward references used in the subsequent section *)
|
(* declaring the forward references used in the subsequent sections *)
|
||||||
(*<*)
|
(*<*)
|
||||||
declare_reference*[bgrnd::text_section]
|
declare_reference*[bgrnd::text_section]
|
||||||
declare_reference*[isadof::text_section]
|
declare_reference*[isadof::text_section]
|
||||||
|
@ -177,9 +175,9 @@ declare_reference*[ontomod::text_section]
|
||||||
declare_reference*[ontopide::text_section]
|
declare_reference*[ontopide::text_section]
|
||||||
declare_reference*[conclusion::text_section]
|
declare_reference*[conclusion::text_section]
|
||||||
(*>*)
|
(*>*)
|
||||||
text*[plan::introduction, level="Some 1"]\<open> The plan of the paper is as follows: we start by introducing
|
text*[plan::introduction, level="Some 1"]\<open> The plan of the paper is as follows: we start by
|
||||||
the underlying Isabelle system (@{text_section (unchecked) \<open>bgrnd\<close>}) followed by presenting the
|
introducing the underlying Isabelle system (@{text_section (unchecked) \<open>bgrnd\<close>}) followed by
|
||||||
essentials of \<^isadof> and its ontology language (@{text_section (unchecked) \<open>isadof\<close>}).
|
presenting the essentials of \<^isadof> and its ontology language (@{text_section (unchecked) \<open>isadof\<close>}).
|
||||||
It follows @{text_section (unchecked) \<open>ontomod\<close>}, where we present three application
|
It follows @{text_section (unchecked) \<open>ontomod\<close>}, where we present three application
|
||||||
scenarios from the point of view of the ontology modeling. In @{text_section (unchecked) \<open>ontopide\<close>}
|
scenarios from the point of view of the ontology modeling. In @{text_section (unchecked) \<open>ontopide\<close>}
|
||||||
we discuss the user-interaction generated from the ontological definitions. Finally, we draw
|
we discuss the user-interaction generated from the ontological definitions. Finally, we draw
|
||||||
|
@ -188,18 +186,14 @@ conclusions and discuss related work in @{text_section (unchecked) \<open>conclu
|
||||||
section*[bgrnd::text_section,main_author="Some(@{docitem ''bu''}::author)"]
|
section*[bgrnd::text_section,main_author="Some(@{docitem ''bu''}::author)"]
|
||||||
\<open> Background: The Isabelle System \<close>
|
\<open> Background: The Isabelle System \<close>
|
||||||
text*[background::introduction, level="Some 1"]\<open>
|
text*[background::introduction, level="Some 1"]\<open>
|
||||||
While Isabelle is widely perceived as an interactive theorem prover
|
While Isabelle is widely perceived as an interactive theorem prover for HOL
|
||||||
for HOL (Higher-order Logic)~@{cite "nipkow.ea:isabelle:2002"}, we
|
(Higher-order Logic)~@{cite "nipkow.ea:isabelle:2002"}, we would like to emphasize the view that
|
||||||
would like to emphasize the view that Isabelle is far more than that:
|
Isabelle is far more than that: it is the \<^emph>\<open>Eclipse of Formal Methods Tools\<close>. This refers to the
|
||||||
it is the \<^emph>\<open>Eclipse of Formal Methods Tools\<close>. This refers to the
|
``\<^slanted_text>\<open>generic system framework of Isabelle/Isar underlying recent versions of Isabelle.
|
||||||
``\<^slanted_text>\<open>generic system framework of Isabelle/Isar underlying recent
|
Among other things, Isar provides an infrastructure for Isabelle plug-ins, comprising extensible
|
||||||
versions of Isabelle. Among other things, Isar provides an
|
state components and extensible syntax that can be bound to ML programs. Thus, the Isabelle/Isar
|
||||||
infrastructure for Isabelle plug-ins, comprising extensible state
|
architecture may be understood as an extension and refinement of the traditional `LCF approach',
|
||||||
components and extensible syntax that can be bound to ML
|
with explicit infrastructure for building derivative \<^emph>\<open>systems\<close>.\<close>''~@{cite "wenzel.ea:building:2007"}
|
||||||
programs. Thus, the Isabelle/Isar architecture may be understood as
|
|
||||||
an extension and refinement of the traditional `LCF approach', with
|
|
||||||
explicit infrastructure for building derivative
|
|
||||||
\<^emph>\<open>systems\<close>.\<close>''~@{cite "wenzel.ea:building:2007"}
|
|
||||||
|
|
||||||
The current system framework offers moreover the following features:
|
The current system framework offers moreover the following features:
|
||||||
|
|
||||||
|
@ -236,11 +230,8 @@ and will result in the corresponding output in generated \<^LaTeX> or HTML docum
|
||||||
Now, \<^emph>\<open>inside\<close> the textual content, it is possible to embed a \<^emph>\<open>text-antiquotation\<close>:
|
Now, \<^emph>\<open>inside\<close> the textual content, it is possible to embed a \<^emph>\<open>text-antiquotation\<close>:
|
||||||
@{boxed_theory_text [display]\<open>
|
@{boxed_theory_text [display]\<open>
|
||||||
text\<open> According to the \<^emph>\<open>reflexivity\<close> axiom @{thm refl},
|
text\<open> According to the \<^emph>\<open>reflexivity\<close> axiom @{thm refl},
|
||||||
we obtain in \<Gamma> for @{term "fac 5"} the result @{value "fac 5"}.\<close>\<close>}
|
we obtain in \<Gamma> for @{term "fac 5"} the result @{value "fac 5"}.\<close>\<close>}
|
||||||
@{boxed_theory_text [display]\<open>
|
|
||||||
text\<open>According to the reflexivity axiom @{thm refl}, we obtain in \<Gamma>
|
|
||||||
for @{term "fac 5"} the result \at{value "fac 5"}.\<close>
|
|
||||||
\<close>}
|
|
||||||
which is represented in the generated output by:
|
which is represented in the generated output by:
|
||||||
@{boxed_pdf [display]\<open>According to the reflexivity axiom $x = x$, we obtain in $\Gamma$ for $\operatorname{fac} 5$ the result $120$.\<close>}
|
@{boxed_pdf [display]\<open>According to the reflexivity axiom $x = x$, we obtain in $\Gamma$ for $\operatorname{fac} 5$ the result $120$.\<close>}
|
||||||
|
|
||||||
|
@ -270,7 +261,7 @@ three parts. Note that the document core \<^emph>\<open>may\<close>, but \<^emph
|
||||||
use Isabelle definitions or proofs for checking the formal content---the
|
use Isabelle definitions or proofs for checking the formal content---the
|
||||||
present paper is actually an example of a document not containing any proof.
|
present paper is actually an example of a document not containing any proof.
|
||||||
|
|
||||||
The document generation process of \<^isadof> is currently restricted to \<^LaTeX> , which means
|
The document generation process of \<^isadof> is currently restricted to \<^LaTeX>, which means
|
||||||
that the layout is defined by a set of \<^LaTeX> style files. Several layout
|
that the layout is defined by a set of \<^LaTeX> style files. Several layout
|
||||||
definitions for one ontology are possible and pave the way that different \<^emph>\<open>views\<close> for
|
definitions for one ontology are possible and pave the way that different \<^emph>\<open>views\<close> for
|
||||||
the same central document were generated, addressing the needs of different purposes `
|
the same central document were generated, addressing the needs of different purposes `
|
||||||
|
@ -284,51 +275,45 @@ style-files (\<^verbatim>\<open>.sty\<close>-files). In the document core author
|
||||||
their source, but this limits the possibility of using different representation technologies,
|
their source, but this limits the possibility of using different representation technologies,
|
||||||
\<^eg>, HTML, and increases the risk of arcane error-messages in generated \<^LaTeX>.
|
\<^eg>, HTML, and increases the risk of arcane error-messages in generated \<^LaTeX>.
|
||||||
|
|
||||||
The \<^isadof> ontology specification language consists basically on a notation for
|
The \<^isadof> ontology specification language consists basically on a notation for document classes,
|
||||||
document classes, where the attributes were typed with HOL-types and can be instantiated
|
where the attributes were typed with HOL-types and can be instantiated by terms HOL-terms, \<^ie>,
|
||||||
by terms HOL-terms, \<^ie>, the actual parsers and type-checkers of the Isabelle system were reused.
|
the actual parsers and type-checkers of the Isabelle system were reused. This has the particular
|
||||||
This has the particular advantage that \<^isadof> commands can be arbitrarily mixed with
|
advantage that \<^isadof> commands can be arbitrarily mixed with Isabelle/HOL commands providing the
|
||||||
Isabelle/HOL commands providing the machinery for type declarations and term specifications such
|
machinery for type declarations and term specifications such as enumerations. In particular,
|
||||||
as enumerations. In particular, document class definitions provide:
|
document class definitions provide:
|
||||||
\<^item> a HOL-type for each document class as well as inheritance,
|
\<^item> a HOL-type for each document class as well as inheritance,
|
||||||
\<^item> support for attributes with HOL-types and optional default values,
|
\<^item> support for attributes with HOL-types and optional default values,
|
||||||
\<^item> support for overriding of attribute defaults but not overloading, and
|
\<^item> support for overriding of attribute defaults but not overloading, and
|
||||||
\<^item> text-elements annotated with document classes; they are mutable
|
\<^item> text-elements annotated with document classes; they are mutable
|
||||||
instances of document classes.
|
instances of document classes.\<close>
|
||||||
\<close>
|
|
||||||
text\<open>
|
|
||||||
Attributes referring to other ontological concepts are called \<^emph>\<open>links\<close>.
|
|
||||||
The HOL-types inside the document specification language support built-in types for Isabelle/HOL
|
|
||||||
\<^theory_text>\<open>typ\<close>'s, \<^theory_text>\<open>term\<close>'s, and \<^theory_text>\<open>thm\<close>'s reflecting internal Isabelle's
|
|
||||||
internal types for these entities; when denoted in HOL-terms to instantiate an attribute, for
|
|
||||||
example, there is a specific syntax (called \<^emph>\<open>inner syntax antiquotations\<close>) that is checked by
|
|
||||||
\<^isadof> for consistency.
|
|
||||||
|
|
||||||
Document classes can have a \<^theory_text>\<open>where\<close> clause containing a regular
|
text\<open>
|
||||||
expression over class names. Classes with such a \<^theory_text>\<open>where\<close> were called \<^emph>\<open>monitor classes\<close>.
|
Attributes referring to other ontological concepts are called \<^emph>\<open>links\<close>. The HOL-types inside the
|
||||||
While document classes and their inheritance relation structure meta-data of text-elements
|
document specification language support built-in types for Isabelle/HOL \<^theory_text>\<open>typ\<close>'s, \<^theory_text>\<open>term\<close>'s, and
|
||||||
in an object-oriented manner, monitor classes enforce structural organization
|
\<^theory_text>\<open>thm\<close>'s reflecting internal Isabelle's internal types for these entities; when denoted in
|
||||||
of documents via the language specified by the regular expression
|
HOL-terms to instantiate an attribute, for example, there is a specific syntax
|
||||||
enforcing a sequence of text-elements that must belong to the corresponding classes.
|
(called \<^emph>\<open>inner syntax antiquotations\<close>) that is checked by \<^isadof> for consistency.
|
||||||
\<close>
|
|
||||||
|
Document classes can have a \<^theory_text>\<open>where\<close> clause containing a regular expression over class names.
|
||||||
|
Classes with such a \<^theory_text>\<open>where\<close> were called \<^emph>\<open>monitor classes\<close>. While document classes and their
|
||||||
|
inheritance relation structure meta-data of text-elements in an object-oriented manner, monitor
|
||||||
|
classes enforce structural organization of documents via the language specified by the regular
|
||||||
|
expression enforcing a sequence of text-elements that belong to the corresponding classes. \<^vs>\<open>-0.4cm\<close>\<close>
|
||||||
|
|
||||||
section*[ontomod::text_section]\<open> Modeling Ontologies in \<^isadof> \<close>
|
section*[ontomod::text_section]\<open> Modeling Ontologies in \<^isadof> \<close>
|
||||||
text\<open> In this section, we will use the \<^isadof> document ontology language
|
text\<open> In this section, we will use the \<^isadof> document ontology language for three different
|
||||||
for three different application scenarios: for scholarly papers, for mathematical
|
application scenarios: for scholarly papers, for mathematical exam sheets as well as standardization
|
||||||
exam sheets as well as standardization documents where the concepts of the
|
documents where the concepts of the standard are captured in the ontology. For space reasons, we
|
||||||
standard are captured in the ontology. For space reasons, we will concentrate in all three
|
will concentrate in all three cases on aspects of the modeling due to space limitations.\<close>
|
||||||
cases on aspects of the modeling due to space limitations.\<close>
|
|
||||||
|
|
||||||
subsection*[scholar_onto::example]\<open> The Scholar Paper Scenario: Eating One's Own Dog Food. \<close>
|
subsection*[scholar_onto::example]\<open> The Scholar Paper Scenario: Eating One's Own Dog Food. \<close>
|
||||||
text\<open> The following ontology is a simple ontology modeling scientific papers. In this
|
text\<open> The following ontology is a simple ontology modeling scientific papers. In this
|
||||||
\<^isadof> application scenario, we deliberately refrain from integrating references to
|
\<^isadof> application scenario, we deliberately refrain from integrating references to
|
||||||
(Isabelle) formal content in order demonstrate that \<^isadof> is not a framework from
|
(Isabelle) formal content in order demonstrate that \<^isadof> is not a framework from
|
||||||
Isabelle users to Isabelle users only.
|
Isabelle users to Isabelle users only. Of course, such references can be added easily and
|
||||||
Of course, such references can be added easily and represent a particular strength
|
represent a particular strength of \<^isadof>.\<close>
|
||||||
of \<^isadof>.
|
|
||||||
|
|
||||||
|
text\<open>\begin{figure}
|
||||||
\begin{figure}
|
|
||||||
@{boxed_theory_text [display]\<open>
|
@{boxed_theory_text [display]\<open>
|
||||||
doc_class title =
|
doc_class title =
|
||||||
short_title :: "string option" <= None
|
short_title :: "string option" <= None
|
||||||
|
@ -348,8 +333,8 @@ doc_class text_section =
|
||||||
\<close>}
|
\<close>}
|
||||||
\caption{The core of the ontology definition for writing scholarly papers.}
|
\caption{The core of the ontology definition for writing scholarly papers.}
|
||||||
\label{fig:paper-onto-core}
|
\label{fig:paper-onto-core}
|
||||||
\end{figure}
|
\end{figure}\<close>
|
||||||
The first part of the ontology \<^theory_text>\<open>scholarly_paper\<close> (see \autoref{fig:paper-onto-core})
|
text\<open> The first part of the ontology \<^theory_text>\<open>scholarly_paper\<close> (see \autoref{fig:paper-onto-core})
|
||||||
contains the document class definitions
|
contains the document class definitions
|
||||||
with the usual text-elements of a scientific paper. The attributes \<^theory_text>\<open>short_title\<close>,
|
with the usual text-elements of a scientific paper. The attributes \<^theory_text>\<open>short_title\<close>,
|
||||||
\<^theory_text>\<open>abbrev\<close> etc are introduced with their types as well as their default values.
|
\<^theory_text>\<open>abbrev\<close> etc are introduced with their types as well as their default values.
|
||||||
|
@ -361,12 +346,13 @@ appear in the \<^theory_text>\<open>main_author\<close> attribute of the \<^theo
|
||||||
semantic links between concepts can be modeled this way.
|
semantic links between concepts can be modeled this way.
|
||||||
|
|
||||||
The translation of its content to, \<^eg>, Springer's \<^LaTeX> setup for the Lecture Notes in Computer
|
The translation of its content to, \<^eg>, Springer's \<^LaTeX> setup for the Lecture Notes in Computer
|
||||||
Science Series, as required by many scientific conferences, is mostly straight-forward. \<close>
|
Science Series, as required by many scientific conferences, is mostly straight-forward.
|
||||||
|
\<^vs>\<open>-0.8cm\<close>\<close>
|
||||||
|
|
||||||
figure*[fig1::figure,spawn_columns=False,relative_width="95",src="''figures/Dogfood-Intro''"]
|
figure*[fig1::figure,spawn_columns=False,relative_width="95",src="''figures/Dogfood-Intro''"]
|
||||||
\<open> Ouroboros I: This paper from inside \<^dots> \<close>
|
\<open> Ouroboros I: This paper from inside \<^dots> \<close>
|
||||||
|
|
||||||
text\<open> @{figure \<open>fig1\<close>} shows the corresponding view in the Isabelle/PIDE of the present paper.
|
text\<open>\<^vs>\<open>-0.8cm\<close> @{figure \<open>fig1\<close>} shows the corresponding view in the Isabelle/PIDE of the present paper.
|
||||||
Note that the text uses \<^isadof>'s own text-commands containing the meta-information provided by
|
Note that the text uses \<^isadof>'s own text-commands containing the meta-information provided by
|
||||||
the underlying ontology.
|
the underlying ontology.
|
||||||
We proceed by a definition of \<^theory_text>\<open>introduction\<close>'s, which we define as the extension of
|
We proceed by a definition of \<^theory_text>\<open>introduction\<close>'s, which we define as the extension of
|
||||||
|
@ -395,8 +381,8 @@ of automated forms of validation check for specific categories of papers is envi
|
||||||
Since this requires deeper knowledge in Isabelle programming, however, we consider this out
|
Since this requires deeper knowledge in Isabelle programming, however, we consider this out
|
||||||
of the scope of this paper.
|
of the scope of this paper.
|
||||||
|
|
||||||
|
We proceed more or less conventionally by the subsequent sections (\autoref{fig:paper-onto-sections})\<close>
|
||||||
We proceed more or less conventionally by the subsequent sections (\autoref{fig:paper-onto-sections})
|
text\<open>
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
@{boxed_theory_text [display]\<open>
|
@{boxed_theory_text [display]\<open>
|
||||||
doc_class technical = text_section +
|
doc_class technical = text_section +
|
||||||
|
@ -416,9 +402,10 @@ doc_class bibliography =
|
||||||
\<close>}
|
\<close>}
|
||||||
\caption{Various types of sections of a scholarly papers.}
|
\caption{Various types of sections of a scholarly papers.}
|
||||||
\label{fig:paper-onto-sections}
|
\label{fig:paper-onto-sections}
|
||||||
\end{figure}
|
\end{figure}\<close>
|
||||||
and finish with a monitor class definition that enforces a textual ordering
|
text\<open>... and finish with a monitor class definition that enforces a textual ordering
|
||||||
in the document core by a regular expression (\autoref{fig:paper-onto-monitor}).
|
in the document core by a regular expression (\autoref{fig:paper-onto-monitor}).\<close>
|
||||||
|
text\<open>
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
@{boxed_theory_text [display]\<open>
|
@{boxed_theory_text [display]\<open>
|
||||||
doc_class article =
|
doc_class article =
|
||||||
|
@ -479,8 +466,8 @@ We assume that the content has four different types of addressees, which have a
|
||||||
text\<open> The latter quality assurance mechanism is used in many universities,
|
text\<open> The latter quality assurance mechanism is used in many universities,
|
||||||
where for organizational reasons the execution of an exam takes place in facilities
|
where for organizational reasons the execution of an exam takes place in facilities
|
||||||
where the author of the exam is not expected to be physically present.
|
where the author of the exam is not expected to be physically present.
|
||||||
Furthermore, we assume a simple grade system (thus, some calculation is required).
|
Furthermore, we assume a simple grade system (thus, some calculation is required). \<close>
|
||||||
|
text\<open>
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
@{boxed_theory_text [display]\<open>
|
@{boxed_theory_text [display]\<open>
|
||||||
doc_class Author = ...
|
doc_class Author = ...
|
||||||
|
@ -507,13 +494,14 @@ type_synonym SubQuestion = string
|
||||||
\<close>}
|
\<close>}
|
||||||
\caption{The core of the ontology modeling math exams.}
|
\caption{The core of the ontology modeling math exams.}
|
||||||
\label{fig:onto-exam}
|
\label{fig:onto-exam}
|
||||||
\end{figure}
|
\end{figure}\<close>
|
||||||
The heart of this ontology (see \autoref{fig:onto-exam}) is an alternation of questions and answers,
|
text\<open>The heart of this ontology (see \autoref{fig:onto-exam}) is an alternation of questions and answers,
|
||||||
where the answers can consist of simple yes-no answers (QCM style check-boxes) or lists of formulas.
|
where the answers can consist of simple yes-no answers (QCM style check-boxes) or lists of formulas.
|
||||||
Since we do not
|
Since we do not
|
||||||
assume familiarity of the students with Isabelle (\<^theory_text>\<open>term\<close> would assume that this is a
|
assume familiarity of the students with Isabelle (\<^theory_text>\<open>term\<close> would assume that this is a
|
||||||
parse-able and type-checkable entity), we basically model a derivation as a sequence of strings
|
parse-able and type-checkable entity), we basically model a derivation as a sequence of strings
|
||||||
(see \autoref{fig:onto-questions}).
|
(see \autoref{fig:onto-questions}).\<close>
|
||||||
|
text\<open>
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
@{boxed_theory_text [display]\<open>
|
@{boxed_theory_text [display]\<open>
|
||||||
doc_class Answer_Formal_Step = Exam_item +
|
doc_class Answer_Formal_Step = Exam_item +
|
||||||
|
@ -542,14 +530,15 @@ doc_class Exercise = Exam_item +
|
||||||
\<close>}
|
\<close>}
|
||||||
\caption{An exam can contain different types of questions.}
|
\caption{An exam can contain different types of questions.}
|
||||||
\label{fig:onto-questions}
|
\label{fig:onto-questions}
|
||||||
\end{figure}
|
\end{figure}\<close>
|
||||||
|
text\<open>
|
||||||
In many institutions, it makes sense to have a rigorous process of validation
|
In many institutions, it makes sense to have a rigorous process of validation
|
||||||
for exam subjects: is the initial question correct? Is a proof in the sense of the
|
for exam subjects: is the initial question correct? Is a proof in the sense of the
|
||||||
question possible? We model the possibility that the @{term examiner} validates a
|
question possible? We model the possibility that the @{term examiner} validates a
|
||||||
question by a sample proof validated by Isabelle (see \autoref{fig:onto-exam-monitor}).
|
question by a sample proof validated by Isabelle (see \autoref{fig:onto-exam-monitor}).
|
||||||
In our scenario this sample proofs are completely \<^emph>\<open>intern\<close>, \<^ie>, not exposed to the
|
In our scenario this sample proofs are completely \<^emph>\<open>intern\<close>, \<^ie>, not exposed to the
|
||||||
students but just additional material for the internal review process of the exam.
|
students but just additional material for the internal review process of the exam.\<close>
|
||||||
|
text\<open>
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
@{boxed_theory_text [display]\<open>
|
@{boxed_theory_text [display]\<open>
|
||||||
doc_class Validation =
|
doc_class Validation =
|
||||||
|
@ -570,7 +559,6 @@ doc_class MathExam=
|
||||||
\label{fig:onto-exam-monitor}
|
\label{fig:onto-exam-monitor}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\<close>
|
\<close>
|
||||||
|
|
||||||
|
|
||||||
(*<*)declare_reference*["fig_qcm"::figure](*>*)
|
(*<*)declare_reference*["fig_qcm"::figure](*>*)
|
||||||
|
|
||||||
|
@ -586,8 +574,8 @@ figure*[fig_qcm::figure,spawn_columns=False,
|
||||||
|
|
||||||
subsection*[cenelec_onto::example]\<open> The Certification Scenario following CENELEC \<close>
|
subsection*[cenelec_onto::example]\<open> The Certification Scenario following CENELEC \<close>
|
||||||
text\<open> Documents to be provided in formal certifications (such as CENELEC
|
text\<open> Documents to be provided in formal certifications (such as CENELEC
|
||||||
50126/50128, the DO-178B/C, or Common Criteria) can much profit from the control of ontological consistency:
|
50126/50128, the DO-178B/C, or Common Criteria) can much profit from the control of ontological
|
||||||
a lot of an evaluators work consists in tracing down the links from requirements over
|
consistency: a lot of an evaluators work consists in tracing down the links from requirements over
|
||||||
assumptions down to elements of evidence, be it in the models, the code, or the tests.
|
assumptions down to elements of evidence, be it in the models, the code, or the tests.
|
||||||
In a certification process, traceability becomes a major concern; and providing
|
In a certification process, traceability becomes a major concern; and providing
|
||||||
mechanisms to ensure complete traceability already at the development of the
|
mechanisms to ensure complete traceability already at the development of the
|
||||||
|
@ -599,13 +587,14 @@ of developments targeting certifications. Continuously checking the links betwee
|
||||||
and the semi-formal parts of such documents is particularly valuable during the (usually
|
and the semi-formal parts of such documents is particularly valuable during the (usually
|
||||||
collaborative) development effort.
|
collaborative) development effort.
|
||||||
|
|
||||||
As in many other cases, formal certification documents come with an own terminology and
|
As in many other cases, formal certification documents come with an own terminology and pragmatics
|
||||||
pragmatics of what has to be demonstrated and where, and how the trace-ability of requirements through
|
of what has to be demonstrated and where, and how the trace-ability of requirements through
|
||||||
design-models over code to system environment assumptions has to be assured.
|
design-models over code to system environment assumptions has to be assured.
|
||||||
\<close>
|
\<close>
|
||||||
text\<open> In the sequel, we present a simplified version of an ontological model used in a
|
text\<open> In the sequel, we present a simplified version of an ontological model used in a
|
||||||
case-study~ @{cite "bezzecchi.ea:making:2018"}. We start with an introduction of the concept of requirement
|
case-study~ @{cite "bezzecchi.ea:making:2018"}. We start with an introduction of the concept of requirement
|
||||||
(see \autoref{fig:conceptual}).
|
(see \autoref{fig:conceptual}). \<close>
|
||||||
|
text\<open>
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
@{boxed_theory_text [display]\<open>
|
@{boxed_theory_text [display]\<open>
|
||||||
doc_class requirement = long_name :: "string option"
|
doc_class requirement = long_name :: "string option"
|
||||||
|
@ -623,8 +612,9 @@ doc_class assumption = requirement +
|
||||||
\<close>}
|
\<close>}
|
||||||
\caption{Modeling requirements.}
|
\caption{Modeling requirements.}
|
||||||
\label{fig:conceptual}
|
\label{fig:conceptual}
|
||||||
\end{figure}
|
\end{figure}\<close>
|
||||||
Such ontologies can be enriched by larger explanations and examples, which may help
|
|
||||||
|
text\<open>Such ontologies can be enriched by larger explanations and examples, which may help
|
||||||
the team of engineers substantially when developing the central document for a certification,
|
the team of engineers substantially when developing the central document for a certification,
|
||||||
like an explication what is precisely the difference between an \<^emph>\<open>hypothesis\<close> and an
|
like an explication what is precisely the difference between an \<^emph>\<open>hypothesis\<close> and an
|
||||||
\<^emph>\<open>assumption\<close> in the context of the evaluation standard. Since the PIDE makes for each
|
\<^emph>\<open>assumption\<close> in the context of the evaluation standard. Since the PIDE makes for each
|
||||||
|
@ -689,7 +679,7 @@ non-compatible type, the text is not validated. \<close>
|
||||||
figure*[figDogfoodVIlinkappl::figure,relative_width="80",src="''figures/Dogfood-V-attribute''"]
|
figure*[figDogfoodVIlinkappl::figure,relative_width="80",src="''figures/Dogfood-V-attribute''"]
|
||||||
\<open> Exploring an attribute (hyperlinked to the class). \<close>
|
\<open> Exploring an attribute (hyperlinked to the class). \<close>
|
||||||
subsection*[cenelec_pide::example]\<open> CENELEC \<close>
|
subsection*[cenelec_pide::example]\<open> CENELEC \<close>
|
||||||
declare_reference*[figfig3::figure]
|
(*<*)declare_reference*[figfig3::figure](*>*)
|
||||||
text\<open> The corresponding view in @{docitem (unchecked) \<open>figfig3\<close>} shows core part of a document,
|
text\<open> The corresponding view in @{docitem (unchecked) \<open>figfig3\<close>} shows core part of a document,
|
||||||
coherent to the @{example \<open>cenelec_onto\<close>}. The first sample shows standard Isabelle antiquotations
|
coherent to the @{example \<open>cenelec_onto\<close>}. The first sample shows standard Isabelle antiquotations
|
||||||
@{cite "wenzel:isabelle-isar:2017"} into formal entities of a theory. This way, the informal parts
|
@{cite "wenzel:isabelle-isar:2017"} into formal entities of a theory. This way, the informal parts
|
||||||
|
@ -780,8 +770,7 @@ work in this area we are aware of is rOntorium~@{cite "rontorium"}, a plugin
|
||||||
for \<^Protege> that integrates R~@{cite "adler:r:2010"} into an
|
for \<^Protege> that integrates R~@{cite "adler:r:2010"} into an
|
||||||
ontology environment. Here, the main motivation behind this
|
ontology environment. Here, the main motivation behind this
|
||||||
integration is to allow for statistically analyze ontological
|
integration is to allow for statistically analyze ontological
|
||||||
documents. Thus, this is complementary to our work.
|
documents. Thus, this is complementary to our work.\<close>
|
||||||
\<close>
|
|
||||||
|
|
||||||
text\<open> \<^isadof> in its present form has a number of technical short-comings as well
|
text\<open> \<^isadof> in its present form has a number of technical short-comings as well
|
||||||
as potentials not yet explored. On the long list of the short-comings is the
|
as potentials not yet explored. On the long list of the short-comings is the
|
||||||
|
|
Loading…
Reference in New Issue