<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Geometric Fractals' Constructive-Synthesizing Models using Ontological Means</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Olena Kuropiatnyk</string-name>
          <email>olena.kuropiatnyk@ust.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Viktor Shynkarenko</string-name>
          <email>v.i.shynkarenko@ust.edu.ua</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          ,
          <addr-line>Larysa Zhuchyi</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Ukrainian State University of Science and Technologies 2</institution>
          ,
          <addr-line>Lazaryana str., Dnipro, 49010</addr-line>
          ,
          <country country="UA">Ukraine</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>railML.org e.V.</institution>
          <addr-line>Altplauen 19h 01187 Dresden</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <fpage>419</fpage>
      <lpage>431</lpage>
      <abstract>
        <p>The paradigm of constructive-synthesizing modelling is based on the idea of the world as a collection of different structures. The development of constructive-synthesizing modelling provides an opportunity to automate the formation of structures. Automation possibilities depend on the degree of formalization and the quality of the corresponding models. In this work, the formalization of constructive-synthesizing models is enriched by the ontological representation of knowledge. This approach is demonstrated in the formation and display of geometric fractals. The developed models are implemented by software tools using Java and Apache Jena framework. It is possible to change the basic elements of fractals based on their ontological representation.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;ontology</kwd>
        <kwd>constructor</kwd>
        <kwd>fractal</kwd>
        <kwd>OWL</kwd>
        <kwd>RDF</kwd>
        <kwd>Apache Jena</kwd>
        <kwd>constructive-synthesizing modelling</kwd>
        <kwd>formal grammar</kwd>
        <kwd>information technology</kwd>
        <kwd>software 1</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>program model.</p>
      <p>One of the important stages of the software life cycle is design, namely, the development of a</p>
      <p>
        If software engineers, customers and users participate in the development of the model, then the
models can be represented using standardized languages, such as XML, Entity Relationship Diagram
(ERD), and others. They differ in the semantic richness. So far, several attempts have been made to
analyze and organize them [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. Some of them have a long history of development and
implementation e.g. UML. Their main advantage for domain experts is ease of use. But they always
have to be combined with a software code or an expert, as they are not expressive enough to
represent the semantics of the subject area.
      </p>
      <p>
        Ontology is an explicit specification of conceptualization [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Ways of representing ontologies
are languages OWL, RDF and SHACL. As their basis is description logic, it becomes possible to
represent a greater number of rules and restrictions of the domain in the model itself, and not in the
software code implementing it. There are light- and heavyweight ontologies. A lightweight ontology
is a vocabulary that does not include rules and restrictions [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], that is, it does not make use of all the
capabilities of ontological languages.
      </p>
      <p>
        The authors previously modelled fractals using databases [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. The application of ontologies is
being researched for fractal modelling to clearly distinguish conceptual modelling and automation
in software development.
      </p>
      <p>In this research the ontology is developed using the OWL Full language profile since the set of
properties of data and objects overlap in the ontology.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Analysis of the application of ontologies in the modelling of fractals</title>
      <p>
        We will adhere to the definition of a fractal as a set that has the property of self-similarity. These
structures are used e.g. to develop maps in computer games [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] and to optimize storage and queries
to big data [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], namely indexing, in which multidimensional data is transformed into
onedimensional data
      </p>
      <p>Many tools designed for developing computer games use fractals to form fragments of
background textures of the Earth's surface and the plant world. This allows for significant reducing
the amount of data to be stored while increasing the realism of images.</p>
      <p>
        To use fractals in software development, there is a need to somehow represent them. One such
method is L-systems in JSXGRaph [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] a Javascript library for rendering various functions,
geometries and fractals in a web browser.
      </p>
      <p>
        The JSXGRaph library is currently actively used, for example, in statistical analysis [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], to
visualize diagrams. The JSXGRaph graph is displayed on the screen using XML (HTML DOM).
      </p>
      <p>
        XML is also used for serialization domain-specific language the Fractal Architecture Description
Language (Fractal ADL) in the context of representing fractals [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Fractal ADL is the representation
language of the Fractal component model (a domain-independent model of operating systems,
graphical interfaces, etc.). The property of self-similarity is understood as "reflexive containment
relationships" of system components [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. The systems and their components are represented the
same way at any level of abstraction [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. The Fractal ADL language was developed 20 years ago but
is still used in software development [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
      </p>
      <p>
        To represent the restrictions for Fractal ADL, add-ons are developed [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]: Fpath is a language of
requests that can be used to check the reconfiguration of the computer system architecture, for
example, the exclusion of cyclic dependence (a system component cannot include itself).
      </p>
      <p>
        From the point of view of semantic richness, the next logical step after XML is UML and ontology
models. Ontologies are actively used in the domains of transport, medicine, construction, etc.
However, the formalization of fractal models using ontologies is an underexplored area. A simple
example of using ontologies is the representation of fractals in RDF or JSON format. Here, RDF also
allows checking by the Shapes Constraint Language (SHACL) the data for compliance with the
developed Halcyon model pathology imaging analysis and feature management system [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], as well
as reusing well established ontologies like Annotations ontology [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
      </p>
      <p>
        Components of the "Fractal" system [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] can be combined with others, for example, components
of the user interface and functions. In [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], this is implemented using the OWL ConcurTaskTrees
ontology and SPARQL queries.
      </p>
      <p>
        The GeoHilbert RDF dictionary [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ], based on the GML, was developed to model spatial
properties. Based on facts, queries are optimized using the same methods as in [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. However, RDF
vocabularies are lightweight ontologies and do not make use of description logic.
      </p>
      <p>The presented analysis shows that fractal structures are used in information systems and software
i.e. representation models (languages) are being developed for fractals. It was determined that there
is a need for methods of representing constraints for fractal systems. A logical way to represent
constraints is an ontology. But at the moment, they are not fully used in the domain of fractal
systems.</p>
      <p>
        One of the examples of the use of description logic in the domain related to fractal structures is
the Collections ontology of data structures [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. It makes full use of ontologies but includes concepts
to represent simpler structures. In this work, a formal model of more complex fractal structures is
developed.
      </p>
      <p>
        In the end, it is worth mentioning that usually, developers are dissatisfied with OWL Full
ontologies and try to "fix" them [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], i.e. convert them to OWL DL. This kind of correction
intentionally developed specifically in the OWL Full profile [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Purpose</title>
      <p>development.
geometric fractals.</p>
      <p>The purpose of the work is to improve constructive-synthesizing modelling by increasing
formalization (enrichment of semantics) with the formal representation of knowledge by ontological
means as soon as the more formalized the model, the more suitable it is for automating software</p>
      <p>The work lays the foundation for such automation using the example of formal models of</p>
    </sec>
    <sec id="sec-4">
      <title>4. Constructive-synthesizing modelling of fractals</title>
      <p>
        To formalize the process of forming fractals, we will use the apparatus of constructive-synthesizing
modelling [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ], which is evolved formal grammars. To represent a fractal, we define a
constructor and specialize it accordingly:
 = 〈Μ, Σ, Λ〉  ⟼, 〈Μ , Σ , Λ 〉,
(1)
where Μ ⊃  is a non-homogeneous extensible medium containing a set of terminals  . Terminals
include subsets of elements:
graphic: basic, which are elements of construction, intermediate and final forms constructed
on their basis, which have the property of self-similarity. Basic ones include lines, curves,
and geometric shapes;
substitution relation.
symbolic: Latin letters indicating commands for the actor, which will be matched with
graphic elements, signs of addition and subtraction operations
to indicate tilt angles; "→"
is a signature of relations and operations performed on medium elements, Λ is a set of
assertions of information support (ISC). ISC includes ontology, purpose, rules, constraints, initial
conditions and conditions for end of construction.
      </p>
      <sec id="sec-4-1">
        <title>4.1 Ontological model of the medium</title>
        <p>Let's consider the ontology of the medium and represent it using OWL Full (Figure 1). The set of
terminals includes elements of two classes that correspond to the graphic representation of fractals:
basic Line_type and Fractal are the constructed elements that have the property of self-similarity.
The set of attributes of a terminal is determined by its belonging to a class. Line_type has derived
classes: Curve, Ellipse, Line, Rectangle, Triangle. The individuals of Line_type class can be described
with the property has_width. Rectangle individuals can be described using the property has_height.</p>
        <p>The set of constructed elements (fractals) is determined by their class. The Fractal class is basic.
Its individuals can be described using the following object properties: available constants
(hasConstant) and variables (hasVariable), line type (hasLineType), and starting terminal (hasStart).
Their domain is individuals of the corresponding Constant, Variable, and Line_type ontology classes.
The Fractal class individuals can be described with the following data properties: the tilt angle when
constructing the fractal image, and the number of iterations during construction.</p>
        <p>Subclasses of Fractal are Dragon_curve, Koch_curve, Sierpinsky_triangle. The subclass implicitly
defines the structure of a fractal, which is described by the substitution rules  1 →  2, where  1,  2 are
forms that may contain terminal symbolic elements, "→" is the substitution relation. The Variable
and Constant ontology classes can be used to describe the terminal elements of the substitution
relation.
hasMeaning_Koch_curve and hasMeaning_Sierpinsky_triangle are description of actions
done when constructing an image of the Koch curve and Sierpinsky triangle, respectively, if
the current symbol in the sequence of symbols formed by the constructor is an individual of
the Variable class;
hasRule_Koch_curve and hasRule_Sierpinsky_triangle represent the right part of the
substitution rule for constructing the image of the Koch curve and Sierpinsky triangle,
respectively, the left part is an individual of the Variable class.</p>
        <p>The data properties describing individuals of the Constant class are hasMeaning_Koch_curve and
hasMeaning_Sierpinsky_triangle. They are the descriptions of actions when constructing the image
of the Koch curve and Sierpinsky triangle, respectively, if the current symbol in the sequence of
symbols formed by the constructor is an individual of the Constant class.</p>
        <p>Some individuals of the Variable and Constant classes may have attributes that are not described
in the class.</p>
        <p>The medium ontology includes a basic set of individuals that is used as the values of object
properties or used to construct new fractal individuals. Let's consider these individuals in more detail.</p>
        <p>F1, F10 are individuals of the Koch_curve class. They are Koch curves, with different angles of
inclination, the number of iterations and the type of line. The F1 individual is used as a base for
forming other individuals. That is, new individuals of the Koch_curve class are built using data of
the hasConstant, hasVariable, and hasStart properties of this individual. The structure of the F1
individual is shown in Figure 2. Rectangles with a purple contour are individuals and blue ones are
ontology classes. Solid yellow lines are a class-subclass relationship. Dashed yellow lines indicate
that individuals are of a certain class. So, for example, F is an individual of the Variable class, and F1
is a Koch_curve. Solid blue lines are properties. For example, the individual F is the value of the</p>
        <p>Individuals F2 and F3 are base for all new individuals of classes Sierpinsky_triangle and
Dragon_curve, respectively. Their structure is like one of F1.</p>
        <p>When forming a new individual of one of the Fractal subclasses based on individuals existing in
the ontology, the following procedure is used:</p>
        <sec id="sec-4-1-1">
          <title>1. the number of iterations and the angle are set as an integer, 2. line type is selected from the list of individuals of Line_Type subclasses, 3. set of variables and constants is copied from the base individual of the fractal of the selected class.</title>
          <p>To set the line type, the ontology has individuals: C1 of the Curve class, E1 Ellipse, L1 Line,
T1 Triangle, and R1 Rectangle. This list can be updated.</p>
          <p>Individuals of the Constant class present in the ontology are "+", "-". They have data properties
defined by the Constant class.</p>
          <p>Individuals of the Variable class present in the ontology are F, and G. They have data properties
defined by the Variable class. Individual F has additional properties:
•
•
hasMeaning_Dragon_curve is description of the actions to be done during the construction
of the dragon curve image, if this variable is processed in the rule;
hasRule_Dragon_curve represents the right side of the substitution rule for drawing the
dragon curve image, the left side is the given variable.</p>
          <p>Such a difference in the attributes of the variables F and G is caused by the type of fractals they
are used to construct.</p>
          <p>Individuals of the Fractal class and its subclasses can have the hasStart property as a data property
or an object property. This is due to the conceptualization of the property. If the derivation of the
chain that describes the fractal according to the rules of substitution starts with a variable, then
hasStart takes the value of the individual from the basic set of individuals of the ontology. If the
output starts with a construction (chain) of variables and constants, then hasStart is represented by
a string. So, for example, the derivation of the chain that describes the constructions of the fractal of
chain that describes the fractal constructions of the Sierpinski_triangle class begins with F-G-G.
Elements of the given chain are individuals present in the ontology.</p>
        </sec>
      </sec>
      <sec id="sec-4-2">
        <title>4.2 Signature of operations for constructing fractals</title>
        <p>Operations like concatenation, partial and complete derivation, as well as substitution relations, are
defined on the medium elements.</p>
        <p>The concatenation operation ⨂( 1,  2) is the operation of linking form elements. If  1 and  2 are
forms, then the form  1,  2 is called a concatenation of forms  1,  2. Any sequence of medium elements
on which the binding operation has been performed will be called a form.</p>
        <p>A substitution relation is a binary relation with attributes     →   . For the form  =
⨂( 1,  2, … ,  ℎ, … ,   ) and an available substitution relation   ( ℎ,   ) (can be written as  ℎ →   )
such that  ℎ ≺   ( ℎ is part of   ), the result of the ternary substitution operation  ∗ =  ⟹ ( ℎ,   ,  )
will be of the form  ∗ = ⨂( 1,  2, … ,   , … ,   ).</p>
        <p>Partial derivation operation (| ⇒ (Ψ,   l )), Ψ is the set of production rules consists of choosing
one of the available substitution rules   : 〈  ,   〉 ∈ Ψ with substitution relations sr and performing
substitution operations on its basis, gr</p>
        <p>operations on attributes, they are not used in this paper.</p>
        <p>The binary operation of complete derivation or simple derivation (|| ⇒ (Ψ,   l )consists of a
stepby-step transformation of forms, starting from the initial non-terminal and ending with a
construction that satisfies the derivation termination condition, which involves the cyclic execution
of partial derivation operations. The derivation termination condition is the completion of a certain
number of cycle iterations.</p>
        <p>The purpose of construction is to form a sequence of symbols for further transformation into a
sequence of graphic primitives of the Line_type class, forming a geometric fractal.</p>
        <p>Restrictions of the fractal constructor are set by the executor of the model, which affects the
number and complexity of the constructed structures and the time of their formation.</p>
        <p>The initial conditions for the construction of fractals are the presence of individuals of the
Variable and Constant classes, which are used as the value of the hasStart property. The value of the
has_n property is defined.</p>
        <p>The construction completion condition is the execution of a specified number of iterations in the
full derivation operation, which is determined by the value of the has_n attribute of the Fractal class.</p>
      </sec>
      <sec id="sec-4-3">
        <title>4.3 Interpretation of the fractal constructor</title>
        <p>
          We interpret the constructor using the algorithmic constructor   [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ], [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ]:
        </p>
        <p>〈  ,   , = 〈Μ , ,   , , Σ , , Λ , 〉〉  ⟼ 〈    ,    = 〈Μ1, Σ1, Λ1,  〉〉 ,
where Λ1 ⊃ Λ ,   , = { 0|  } is the set of basic algorithms,   ,   are the set of definitions and
 
values of the algorithm  0|  . Λ , = {Μ , ⊃ ⋃ 0∈  , ( ( 0)⋃ ( 0)) ∪ Ω(  )}
nonhomogeneous medium, Ω(  ) is set of algorithms implemented by the   constructor; Λ1 =
{( 10   ,∙  ↲ " ∙ "), ( 2 |  , 
|   ∙  ↲ "⨂"), ( 3 | ℎ ,  ,  ↲ ⟹), ( 4 |  ,∙Ψ ↲ ⟹), ( 5 |Ω̅,∙Ψ ↲
⟹), Λ1 ⊃ Λ ; Z
is the set of possible executors (actors) that can implement algorithms   . The result of the actor's
work is a constructed chain of symbols that describes the construction of fractals using the symbols
of constants and variables.</p>
        <p>The constructor    includes algorithms for performing operations:
(2)
algorithm   ;
 2 |  ,</p>
        <p>∙ 
 3 | ℎ ,  , 
 4 |  ,∙Ψ,  5 |Ω̅,∙Ψ
a set of formed constructions.</p>
        <p>partial and complete derivation, where   ,  are forms,  is an axiom, Ω̅ is</p>
        <p>algorithm compositions,   ∙</p>
        <p>sequential execution of algorithm   after
concatenations of medium elements,   ,</p>
        <p>forms;
substitutions,  ℎ,  ,</p>
        <p>forms;
By construction, we mean the form formed by multiple substitution and subtraction operations.</p>
        <p>As a result of the interpretation, we get a constructive system, which consists of a construction
model and a model of the internal executor.</p>
      </sec>
      <sec id="sec-4-4">
        <title>4.4 The concretization of the fractal constructor</title>
        <p>To clarify the entered operations, we will concretize the constructor   :
〈 , 
  , = 〈Μ1, Σ1, Λ1,  〉〉  ⟼
〈 , , 
  , = 〈Μ1, Σ1, Λ2,  〉〉 ,
where Λ2 = Λ1 ∪ Λ3, Λ3 ⊃ { 1 ⊃  ,</p>
        <p>= { ,  , +, −}}, is a set of terminals,  is the initial terminal
for constructing fractals of the Koch_curve, Dragon_curve classes. For fractals of the Sierpinski
triangle class, the FGG form is the initial terminal.</p>
        <p>ISC: rules of substitutions. Let us consider the rules of substitutions, which allow us to formalize
the process of building a chain of instructions for building a fractal image.</p>
        <p>To construct a fractal of the Koch Curve class we apply the following rule:
where the symbols are commands:
"element (the type of the element is specified by the hasLineType property of the Fractal class).</p>
        <p>To build a fractal of the Dragon's Curve class we apply the following rules:
where the symbols are commands: G</p>
        <p>go up and draw a graphic element (the type of the element is
specified by the hasLineType property of the Fractal class), the meaning of the other symbols is
similar to Koch's curve.</p>
        <p>To construct a fractal of the Sierpinski triangle class we apply the following rules:
where symbols are commands with meanings given above.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Graphic representation of geometric fractals based on a constructive-production model with ontological knowledge</title>
      <p>The developed constructor model (3) is the basis of the program for constructing images of
geometric fractals. The program is written in Java using the Jena framework.</p>
      <p>In the process of forming graphic representations of fractals, external and internal actors are
involved (Figure 3).
(3)
(4)
(5)
(6)
(7)
(8)
the developer of the constructive-synthesizing model including the ontology (U1);
the user is the customer of constructions and the supplier of data for construction (U2);
hardware-software system (U3), for the interaction of external actors: the user (U2) with Jena;
a converter of chain structures (software and hardware, as in this case (part of U3), or an
internal executor of another constructive-synthesizing model).</p>
      <p>The internal actor (Z) forms fractal sequences of symbols based on the developed
constructivesynthesizing model.</p>
      <p>Let's consider the details of the internal actor. The implementation of the interpreted constructor
   consists of the formation of chains of symbols that satisfy the rules (4
algorithms related to signature operations according to the rules of axiomatics:</p>
      <sec id="sec-5-1">
        <title>8) by executing</title>
        <p>⟼ Ω̅(    ),
(9)
where Ω̅(    ) ⊂ Ω(    ), Ω̅ is the set of formed chains of symbols that describe fractals, Ω(    ) is
the set of constructions that satisfy   and can potentially be formed.</p>
        <p />
        <p>Let's consider the details of external actors. The formation of a graphic representation of a chain
of symbols Ω̅ is performed by an external actor using the program. For this, it uses chains formed by
the internal executor of the constructor (Z) according to the rules and parameters (number of
iterations, angle), which are presented in the ontology. The construction of the chain is performed
by separate methods (functions) of the program. The input data (medium elements) describing the
fractal are read programmatically from the OWL file using a SPARQL query:</p>
        <p>PREFIX f:&lt;http://www.semanticweb.org/... # &gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
SELECT ?subject
WHERE { ?subject rdfs:subClassOf f:Fractal}.</p>
        <p>Thus, the developed program represents an internal actor that implements the algorithms of the
constructor (2), and an external one that uses the results of the work of the internal (chain of symbols)
to form images.</p>
        <p>For the elements, Ω̅(    ) we will construct an image of a geometric fractal that corresponds to
the description chain. 0 and 0 show images of basic fractals. These individuals are in the input data.
The value of the properties of the individual F1 of the Koch curve is shown in the information panel
of the program window on the left (Figure 4). Fractal F2, the graphic representation of which is
shown in Figure 5a, has the following property values: angle 120, number of iterations 4, start
ellipse.</p>
        <p>Let's consider the construction of a graphic representation of the F2 individual in more detail.
Rules (7) and (8) were applied for its construction.</p>
        <p>The initial condition of vision is the string (axiom): F-G-G.</p>
        <p>As a result of performing the substitution operation on each iteration (there are 4 iterations), we
get a new chain (line).</p>
        <p>To build a chain, in the first step, we choose a symbol to replace. Let's start with the first F. Apply
the substitution rule F to it: F-G- -G-G.</p>
        <p>-G-G.</p>
        <p>Step 3: choose another F symbol to replace and apply the F replacement rule to it. The following
steps are similar to the previous ones. As a result, we will get a chain of symbols, which is interpreted
by the developed program as follows: F command for drawing the graphic element horizontally, G
is for vertically, plus and minus signs indicate the angles of rotation after the image by the F or G
command. The type of the element is determined by an individual of one of the subclasses of the
LineType class.</p>
        <p>Fractal F3, the graphic representation of which is shown in Figure 5b, has the following property
values: angle 90, number of iterations 8, start terminal S, line type ellipse. All rules used during
construction correspond to those described in section 4.4. These and other given images of geometric
fractals were obtained analogously to the construction of the F2 fractal image.</p>
        <p>According to the scheme in Figure 3, the functionality of the program allows for the addition of
new individuals, which is done by an external actor. An example of implementation is shown in
Figure 6. Other examples of images of individuals added through the user interface are shown in
Figure 7. The signature of drawing elements is given in the format "class - number of iterations
angle - line type".</p>
        <p>The construction of fractal images for individuals, which are created during the operation of the
program, is similar to basic fractals. Chain derivation uses a set of rules that was defined in the base
fractal that was used as a basis for the current one. The number of iterations, angle and type of
graphic element for new individuals is set by the user during creation. In the future, these parameters
are used in the construction of the chain and its interpretation - construction of the image.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>6. Discussion</title>
      <p>The developed ontology of fractals (as part of the constructive-synthesizing model) can be classified
as a lightweight ontology. The language of the ontology is OWL Full profile, that is, the descriptive
logic was not used.</p>
      <p>The definition of data types is a component of the model. Types impose restrictions on the set of
valid values and operations on them. Such restrictions could be represented by constructs of the
rdfs:domain type. Verification of the consistency of the schema and data can be performed by
reasoners. Data types are currently checked by Java's built-in type conversion functions.
setting the parameters of a new individual, b
a graphic</p>
      <p>
        Setting fractal parameters and checking their correctness is carried out with the help of a
graphical user interface implemented by Java tools. At the same time, there is a practice of validating
data of similar forms by ontological means and is implemented using SHACL [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ].
      </p>
      <p>The properties of a new fractal are determined by copying them from existing individual fractals.
In the future, to remove limitations of OWL Full, this can be implemented by OWL or SHACL
SPARQL rules. In this case, they will be explicitly represented as part of the model.</p>
      <p>In the future, the ontology of fractals can be extended by the presentation of other known fractals.</p>
      <p>There are several alternative approaches to the formation of fractals: algorithmic,
functionalalgorithmic using a system of iterated functions based on a set of contracting mappings , L-systems,
contracting affine automata.</p>
      <p>
        Constructive-synthesizing modeling allows for creating a more types of fractals [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. In
particular, the possibilities of application are shown:
•
•
•
large variation of color and forms attributes;
non-uniform source elements of fractal formation;
combining various, including classical, fractals in multifractals.
      </p>
      <p>In this paper, the use of ontologies in constructive-synthesizing modeling extends the possibilities
of generating fractals with a variable element base and initial conditions.
fractals and a universal constructively synthesizing modeled structure based on ontologies.</p>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusions</title>
      <p>As part of the pilot project, constructive-synthesizing models were improved with formal ontologies
on the example of formalizing the processes of forming geometric fractals.</p>
      <p>The results of separation of the automation of formation and conceptual modelling of fractals are
given. It will be appropriate to enrich the ontology with rules and restrictions to ensure the
verification of the consistency of the model by ontological means. For this, a further redistribution
of the model constructions from the software code to the ontology must be performed.</p>
    </sec>
    <sec id="sec-8">
      <title>Declaration on Generative AI</title>
      <sec id="sec-8-1">
        <title>The authors have not employed any Generative AI tools.</title>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>G.</given-names>
            <surname>Blair</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Thierry</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Jean-Bernard</surname>
          </string-name>
          ,
          <article-title>Component-based architecture: the Fractal initiative</article-title>
          ,
          <source>Annals of telecommunications - annals des Telecommunications</source>
          <volume>64</volume>
          (
          <year>2009</year>
          ):
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>J.</given-names>
            <surname>Borna</surname>
          </string-name>
          ,
          <article-title>Ontology merging using semantically-defined merge criteria and OWL reasoning services: towards execution-time merging of multiple clinical workflows To handle comorbidities</article-title>
          ,
          <source>Ph.D. thesis</source>
          , Dalhousie University Halifax, Nova Scotia,
          <year>December 2013</year>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>C.</given-names>
            <surname>Brel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. M.</given-names>
            <surname>Dery-Pinna</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Renevier-Gonin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Riveill</surname>
          </string-name>
          ,
          <article-title>Ontocompo: a tool to enhance application composition</article-title>
          ,
          <source>in: Proceedings Human-Computer Interaction INTERACT 2011: 13th IFIP TC 13 International Conference</source>
          , Springer Berlin Heidelberg, Lisbon, Portugal,
          <source>September Part IV 13</source>
          ,
          <year>2011</year>
          , pp.
          <fpage>588</fpage>
          -
          <lpage>591</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>E.</given-names>
            <surname>Bremer</surname>
          </string-name>
          , T. DiPrima, J. Balsamo,
          <string-name>
            <given-names>J.</given-names>
            <surname>Almeida</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Gupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Saltz</surname>
          </string-name>
          , Halcyon--
          <string-name>
            <given-names>A Pathology</given-names>
            <surname>Imaging</surname>
          </string-name>
          and
          <article-title>Feature analysis and Management System</article-title>
          ,
          <source>arXiv preprint arXiv:2304.10612</source>
          ,
          <year>2023</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>P.</given-names>
            <surname>Ciccarese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Peroni</surname>
          </string-name>
          ,
          <article-title>The Collections Ontology: creating and handling collections in OWL 2 DL frameworks</article-title>
          ,
          <source>Semantic Web Journal</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>T. Coupaye</surname>
          </string-name>
          <article-title>The Fractal Component Model</article-title>
          , in: LAFMI Summer School, Puebla, Mexico,
          <year>2004</year>
          . URL: https://fractal.ow2.io/doc/lafmi04/Fractal-LAFMI2004.pdf
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>T.</given-names>
            <surname>Coupaye</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.-B.</given-names>
            <surname>Stefani</surname>
          </string-name>
          .
          <article-title>"</article-title>
          <source>Fractal Component-Based Software Engineering: Report on the WS -Oriented Programming</source>
          . Berlin, Heidelberg: Springer Berlin Heidelberg,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>P. C.</given-names>
            <surname>David</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Ledoux</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Léger</surname>
          </string-name>
          , T. Coupaye,
          <article-title>FPath and FScript: Language support for navigation and reliable reconfiguration of Fractal architectures</article-title>
          .
          <source>Annals of telecommunications-annales des télécommunications</source>
          ,
          <volume>64</volume>
          (
          <year>2009</year>
          ),
          <fpage>45</fpage>
          -
          <lpage>63</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>G.</given-names>
            <surname>Fausto</surname>
          </string-name>
          and
          <string-name>
            <surname>I. Zaihrayeu</surname>
          </string-name>
          , Lightweight ontologies,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <article-title>Fractal Mapper 9.0 NBOS Software</article-title>
          . URL: https://www.nbos.com/products/fractal-mapper
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gerhäuser</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Bianca</surname>
          </string-name>
          , and W. Alfred, JSXGraph-Dynamic Mathematics with JavaScript,
          <source>International Journal for Technology in Mathematics Education 17.4</source>
          (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>C.</given-names>
            <surname>Golbreich</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Horrocks</surname>
          </string-name>
          , The OBO to OWL Mapping, Go to Owl 1.1!, OWLED,
          <volume>258</volume>
          (
          <year>2007</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>T. R.</given-names>
            <surname>Gruber</surname>
          </string-name>
          ,
          <article-title>A translation approach to portable ontology specifications</article-title>
          ,
          <source>Knowledge acquisition, 5.2</source>
          ,
          <issue>1993</issue>
          , pp.
          <fpage>199</fpage>
          -
          <lpage>220</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>C.</given-names>
            <surname>Hooper</surname>
          </string-name>
          , I. Jones, Conceptual Statistical Assessment Using JSXGraph,
          <source>International Journal of Emerging Technologies in Learning, 18.1</source>
          ,
          <year>2023</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>N.-T.</given-names>
            <surname>Huynh</surname>
          </string-name>
          ,
          <article-title>Towards Automatically Generating State Transfer Model Integrated in Adaptive Software Development Process</article-title>
          ,
          <source>International Journal of Applied Engineering Research</source>
          ,
          <volume>15</volume>
          .2,
          <issue>2020</issue>
          , pp.
          <fpage>189</fpage>
          -
          <lpage>196</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>D. L. McGuinness</surname>
          </string-name>
          ,
          <article-title>Ontologies come of age</article-title>
          , in Fensel D.,
          <string-name>
            <surname>Wahlster</surname>
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lieberman</surname>
            <given-names>H</given-names>
          </string-name>
          . (Eds.).
          <article-title>Spinning the semantic web: bringing the World Wide Web to its full potential</article-title>
          ,
          <year>2002</year>
          , pp.
          <fpage>171</fpage>
          -
          <lpage>194</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>N. F.</given-names>
            <surname>Noy</surname>
          </string-name>
          , S. De Coronado,
          <string-name>
            <given-names>H.</given-names>
            <surname>Solbrig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Fragoso</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.W.</given-names>
            <surname>Hartel</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.A.</given-names>
            <surname>Musen</surname>
          </string-name>
          ,
          <article-title>Representing the NCI Thesaurus in OWL DL: Modeling tools help modeling languages</article-title>
          ,
          <source>Applied ontology</source>
          ,
          <volume>3</volume>
          (
          <issue>3</issue>
          ),
          <year>2008</year>
          , pp.
          <fpage>173</fpage>
          -
          <lpage>190</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>L.</given-names>
            <surname>Obrst</surname>
          </string-name>
          ,
          <article-title>Ontologies for semantically interoperable systems</article-title>
          ,
          <source>in: Proceedings of the twelfth international conference on information and knowledge management</source>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>B.</given-names>
            <surname>Parsia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Evren</surname>
          </string-name>
          ,
          <string-name>
            <surname>Pellet:</surname>
          </string-name>
          <article-title>An owl dl reasoner</article-title>
          ,
          <source>Third international semantic web conference</source>
          ,
          <volume>18</volume>
          .
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>V. I. Shynkarenko</surname>
          </string-name>
          , Constructive-Synthesizing
          <source>Representation of Geometric Fractals. Cybernetics and Systems Analysis</source>
          ,
          <volume>55</volume>
          (
          <issue>2</issue>
          ),
          <year>2019</year>
          , pp.
          <fpage>186</fpage>
          -
          <lpage>199</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>V.</given-names>
            <surname>Skalozub</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Ilman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Shynkarenko</surname>
          </string-name>
          ,
          <source>Development of Ontological Support of Constructivesynthesizing Modeling of Information Systems, Eastern-European Journal of Enterprise Technologies</source>
          ,
          <volume>6</volume>
          (
          <issue>4</issue>
          ),
          <year>2017</year>
          , pp.
          <fpage>58</fpage>
          -
          <lpage>69</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>V.</given-names>
            <surname>Skalozub</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Ilman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Shynkarenko</surname>
          </string-name>
          ,
          <source>Ontological Support Formation for Constructivesynthesizing Modeling of Information Systems Development Processes. Eastern-European Journal of Enterprise Technologies</source>
          ,
          <volume>5</volume>
          (
          <issue>4</issue>
          ),
          <year>2018</year>
          ,
          <fpage>55</fpage>
          -
          <lpage>63</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <surname>C.-J. Wang</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Wei-Shinn</surname>
            , and
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Haiquan</surname>
          </string-name>
          ,
          <article-title>Geo-store: a spatially-augmented SPARQL query evaluation system</article-title>
          ,
          <source>in: Proceedings of the 20th International Conference on advances in geographic information systems</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <surname>T. - Figueroa</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gangemi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sure</surname>
            ,
            <given-names>Y</given-names>
          </string-name>
          . (eds.) in
          <source>: Proceedings of the 4th International Workshop on Evaluation of Ontologies for the Web (EON2006) at the 15th International World Wide Web Conference (WWW</source>
          <year>2006</year>
          ), Edinburgh, Scotland.
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>J.</given-names>
            <surname>Wright</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. J. Rodríguez</given-names>
            <surname>Méndez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Haller</surname>
          </string-name>
          .,
          <string-name>
            <given-names>K.</given-names>
            <surname>Taylor</surname>
          </string-name>
          , P. G. Omran,
          <article-title>Schimatos: a SHACL-based web-form generator for knowledge graph editing</article-title>
          ,
          <source>International Semantic Web Conference</source>
          , Cham: Springer International Publishing,
          <year>2020</year>
          , pp.
          <fpage>65</fpage>
          -
          <lpage>80</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <article-title>Web Annotation Data Model</article-title>
          .
          <source>W3C Recommendation 23 February</source>
          <year>2017</year>
          . URL: https://www.w3.org/TR/annotation-model/ Date access:
          <volume>11</volume>
          .
          <fpage>13</fpage>
          .2024
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>X.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , L. Chen,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Tong</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <surname>EAGRE</surname>
          </string-name>
          :
          <article-title>Towards scalable I/O efficient SPARQL query evaluation on the cloud</article-title>
          ,
          <source>2013 IEEE 29th International Conference on Data Engineering (ICDE)</source>
          ,
          <year>2013</year>
          , pp.
          <fpage>565</fpage>
          -
          <lpage>576</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>