Commit 51366e7c authored by Wickramasinghe R.J.P's avatar Wickramasinghe R.J.P

see also property connected to the api

parent 05e607a1
web gunicorn djangoProject.wsgi:application --log-file -
\ No newline at end of file
...@@ -3,15 +3,14 @@ from . import views ...@@ -3,15 +3,14 @@ from . import views
urlpatterns = [ urlpatterns = [
path('', views.getRoutes), path('', views.getRoutes),
path('notes/', views.getNotes), path('diseasecategory/<str:pk>/', views.get_categorized_diseases),
path('diseases/', views.get_diseases), path('diseases/', views.get_diseases),
path('disease/<str:pk>/', views.get_disease_description), path('disease/<str:pk>/', views.get_disease_description),
path('disease/status/<str:pk>/<str:pk2>/', views.update_disease_status),
path('disease/sub/status/<str:pk>/<str:pk2>/<str:pk3>/', views.update_disease_info_status),
path('disease/get/status/<str:pk>/', views.get_disease_status),
path('disease/sub/get/status/<str:pk>/<str:pk2>/', views.get_disease_info_status),
path('disease/<str:pk>/<str:pk2>/', views.get_disease_sub), path('disease/<str:pk>/<str:pk2>/', views.get_disease_sub),
path('disease/<str:pk>/<str:pk2>/<str:pk3>/', views.get_disease_sub_info), path('disease/<str:pk>/<str:pk2>/<str:pk3>/', views.get_disease_sub_info),
path('notes/create/', views.createNote), path('diseaselink/<str:pk>/', views.get_link),
path('disease/treatment/', views.get_treatment),
path('notes/<str:pk>/update/', views.updateNote),
path('notes/<str:pk>/delete/', views.deleteNote),
path('notes/<str:pk>/', views.getNote),
] ]
from django.shortcuts import render
from rest_framework.decorators import api_view from rest_framework.decorators import api_view
from rest_framework.response import Response from rest_framework.response import Response
from .serializers import NoteSerializer
from .models import Note
from owlready2 import * from owlready2 import *
from rdflib import * from rdflib import *
# onto = get_ontology("C:\\Users\\LENOVO\\Desktop\\dogSkinDisease.owl").load(reload_if_newer = True) onto = get_ontology("dogDisease.owl").load(reload_if_newer=True)
# onto = get_ontology(
# "C:\\Users\\LENOVO\\Music\\Ontology Generation\\Ontology generation\\Fourth\\Ontology with uppercase disease "
# "name\\dogDisease.owl"
# ).load(
# reload_if_newer=True)
onto = get_ontology("C:\\Users\\LENOVO\\PycharmProjects\\buildOntology\\dogDisease.owl").load(reload_if_newer=True)
graph = default_world.as_rdflib_graph() graph = default_world.as_rdflib_graph()
graph2 = graph.get_context(onto)
@api_view(['GET']) @api_view(['GET'])
def getRoutes(request): def getRoutes(request):
routes = [ routes = [
{ {
'EndPoint': '/notes/', 'EndPoint': '/diseases/',
'method': 'GET', 'method': 'GET',
'body': None, 'body': None,
'description': 'Returns an array of notes' 'description': 'Returns a List of Diseases'
}, },
{ {
'EndPoint': '/notes/id', 'EndPoint': '/diseasecategory/diseasename',
'method': 'GET', 'method': 'GET',
'body': None, 'body': None,
'description': 'Returns an array of notes' 'description': 'Returns Categorized Diseases '
}, },
{ {
'EndPoint': '/decease/treatment/', 'EndPoint': '/disease/diseasename/',
'method': 'POST', 'method': 'GET',
'body': {'decease': ""}, 'body': None,
'description': 'Get treatments for the decease' 'description': 'Get Description for the Disease'
}, },
{ {
'EndPoint': '/notes/id/update/', 'EndPoint': '/disease/diseasename/infotype/',
'method': 'PUT', 'method': 'GET',
'body': {'body': ""}, 'body': None,
'description': 'Updates an existing record with data sent in put request' 'description': 'Get List of Individuals Relevant to Sub Topic'
}, },
{ {
'EndPoint': '/notes/id/delete', 'EndPoint': '/disease/diseasename/infotype/individual',
'method': 'DELETE', 'method': 'GET',
'body': None, 'body': None,
'description': 'Deletes any existing note' 'description': 'Get Relevant Information to Each Individual'
},
{
'EndPoint': '/diseaselink/diseasename',
'method': 'GET',
'body': None,
'description': 'Get SeeAlso Link for Disease'
} }
] ]
return Response(routes) return Response(routes)
@api_view(['GET']) @api_view(['GET'])
def getNotes(request): def update_disease_info_status(request, pk, pk2, pk3):
notes = Note.objects.all() new_pk3 = pk3[:-1]
serializer = NoteSerializer(notes, many=True)
with onto:
print(default_world.sparql(
"""DELETE { ?subtopic <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApproved"""+new_pk3+"""> ?p }
INSERT { ?subtopic <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApproved"""+new_pk3+"""> \""""+pk2+"""\"^^<http://www.w3.org/2001/XMLSchema#boolean> }
WHERE {
?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#has"""+new_pk3+"""> ?subtopic.
?subtopic <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApproved"""+new_pk3+"""> ?p.
FILTER(?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#"""+pk+""">).
}"""
))
onto.save("dogDisease.owl")
return Response("Updated")
@api_view(['GET'])
def get_disease_info_status(request, pk, pk2):
new_pk2 = pk2[:-1]
result = graph.query("""SELECT ?status
WHERE { ?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#has"""+new_pk2+"""> ?subtopic.
?subtopic <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApproved"""+new_pk2+"""> ?status.
FILTER(?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#"""+pk+""">).
}""")
status = [str(x[0]) for x in result]
return Response(status)
@api_view(['GET'])
def get_disease_status(request, pk):
result = graph.query("""SELECT ?status
WHERE { ?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedDisease> ?status.
FILTER (?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#"""+pk+""">).
}""")
return Response(serializer.data) status = [str(x[0]) for x in result]
return Response(status)
@api_view(['GET']) @api_view(['GET'])
def getNote(request, pk): def update_disease_status(request, pk, pk2):
notes = Note.objects.get(id=pk)
serializer = NoteSerializer(notes, many=False) with onto:
return Response(serializer.data) print(default_world.sparql(
"""DELETE { ?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedDisease> ?p }
INSERT { ?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedDisease> \""""+pk2+"""\"^^<http://www.w3.org/2001/XMLSchema#boolean> }
WHERE {
?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedDisease> ?p.
FILTER(?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#"""+pk+""">).
}"""
))
onto.save("dogDisease.owl")
return Response("Updated")
@api_view(['GET']) @api_view(['GET'])
...@@ -73,7 +123,7 @@ def get_disease_description(request, pk): ...@@ -73,7 +123,7 @@ def get_disease_description(request, pk):
""" """
SELECT ?description SELECT ?description
WHERE { ?disease <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease>; WHERE { ?disease <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease>;
FILTER(?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#"""+pk+""">). FILTER(?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk + """>).
?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDescription> ?description. ?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDescription> ?description.
}""" }"""
)) ))
...@@ -81,133 +131,103 @@ def get_disease_description(request, pk): ...@@ -81,133 +131,103 @@ def get_disease_description(request, pk):
new_disease_description = [str(x[0]) for x in disease_description] new_disease_description = [str(x[0]) for x in disease_description]
new_disease_description = ' '.join(new_disease_description) new_disease_description = ' '.join(new_disease_description)
new_disease_description = new_disease_description.split('.') new_disease_description = new_disease_description.split('.')
new_disease_description = new_disease_description[1:-1] new_disease_description = new_disease_description[0:-1]
print(new_disease_description)
return Response(new_disease_description) return Response(new_disease_description)
@api_view(['GET']) @api_view(['GET'])
def get_disease_sub_info(request, pk, pk2, pk3): def get_disease_sub_info(request, pk, pk2, pk3):
global sci_name
new_pk2 = pk2[:-1] new_pk2 = pk2[:-1]
if pk == "Dandruff": new_pk3 = new_pk2
sci_name = "seborrheic dermatitis" if new_pk3 == "Cause":
elif pk == "Ringworm": new_pk3 = "Casue"
sci_name = "dermatophytes"
elif pk == "YeastInfection": sub_individual_list_info = list(graph.query(
sci_name = "Malassezia pachydermatitis"
sub_list_info = list(graph.query(
""" """
SELECT ?treatdescribe SELECT ?individualinfo
WHERE { ?disease <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease>; WHERE { ?disease <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease>;
FILTER((?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk + """>) && (?treat = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk3 + """>)). FILTER((?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk + """>) && (?treat = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk3 + """>)).
?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#has""" + new_pk2 + """> ?treat. ?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#has""" + new_pk2 + """> ?treat.
?treat <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#has""" + new_pk2 + """Description> ?treatdescribe. ?treat <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#has""" + new_pk3 + """Description> ?individualinfo.
}""")) }"""))
new_sub_list_info = [str(x[0]) for x in sub_list_info] new_sub_individual_list_info = [str(x[0]) for x in sub_individual_list_info]
new_sub_list_info = ' '.join(new_sub_list_info) new_sub_individual_list_info = ' '.join(new_sub_individual_list_info)
new_sub_list_info = new_sub_list_info.split('.') new_sub_individual_list_info = new_sub_individual_list_info.split('.')
new_sub_list_info = new_sub_list_info[1:-1] new_sub_individual_list_info = new_sub_individual_list_info[0:-1]
print(new_sub_list_info)
return Response(new_sub_list_info) return Response(new_sub_individual_list_info)
@api_view(['GET']) @api_view(['GET'])
def get_disease_sub(request, pk, pk2): def get_disease_sub(request, pk, pk2):
new_pk2 = pk2[:-1] new_pk2 = pk2[:-1]
sub_list = list(graph.query( sub_individual_list = list(graph.query(
""" """
SELECT ?treat SELECT ?subindividual
WHERE { ?disease <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease>; WHERE { ?disease <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease>;
FILTER(?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk + """>). FILTER(?disease = <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk + """>).
?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#has""" + new_pk2 + """> ?treat. ?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#has""" + new_pk2 + """> ?subindividual.
}""")) }"""))
new_sub_list = [str(x[0]) for x in sub_list] new_sub_individual_list = [str(x[0]) for x in sub_individual_list]
fin_sub_list = [] fin_sub_list = []
for y in new_sub_list: for y in new_sub_individual_list:
itm = y[y.find('#'):][1:] itm = y[y.find('#'):][1:]
fin_sub_list.append(itm) fin_sub_list.append(itm)
return Response(new_sub_list) return Response(new_sub_individual_list)
@api_view(['GET']) @api_view(['GET'])
def get_diseases(request): def get_diseases(request):
des_list = list(graph.query(""" disease_list = list(graph.query("""
SELECT ?disease SELECT ?disease
WHERE { WHERE {
?disease <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease> . ?disease <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease> .
}""")) }"""))
new_des_list = [str(x[0]) for x in des_list] new_disease_list = [str(x[0]) for x in disease_list]
# index = [] fin_disease_list = []
# for y in range(len(new_list)):
# index.append(y + 1)
#
# print(index)
# disease_dict = dict.fromkeys(new_list, "disease")
# index_dict = dict.fromkeys(index, "id")
# d1 = dict(enumerate(new_list))
# print(disease_dict)
# print(index_dict)
fin_des_list = []
for y in new_des_list: for y in new_disease_list:
des = y[y.find('#'):][1:] des = y[y.find('#'):][1:]
fin_des_list.append(des) fin_disease_list.append(des)
print(fin_des_list) return Response(fin_disease_list)
return Response(fin_des_list)
@api_view(['POST']) @api_view(['GET'])
def get_treatment(request): def get_categorized_diseases(request, pk):
data = request.data categorized_diseases = list(graph.query("""
disease = data['disease'] SELECT ?s
res = list(graph.query(""" WHERE { ?s <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection> <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk + """> }
SELECT ?disease ?treat ?treatdescribe """))
WHERE { ?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasScientificName> ?o;
FILTER(REGEX(?o, \"""" + disease + """\", "i")).
?disease <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasTreatment> ?treat.
?treat <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasTreatmentDescription> ?treatdescribe.
}"""))
return Response(res)
@api_view(['PUT']) new_categorized_diseases = [str(x[0]) for x in categorized_diseases]
def updateNote(request, pk): fin_des_list = []
data = request.data
note = Note.objects.get(id=pk) for y in new_categorized_diseases:
serializer = NoteSerializer(note, data=request.data) des = y[y.find('#'):][1:]
if serializer.is_valid(): fin_des_list.append(des)
serializer.save()
return Response(serializer.data)
return Response(fin_des_list)
@api_view(['POST'])
def createNote(request):
data = request.data
note = Note.objects.create( @api_view(['GET'])
body=data['body'] def get_link(request, pk):
) seeAlsoLink = list(graph.query("""
serializer = NoteSerializer(note, many=False) SELECT ?link
WHERE { <http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl#""" + pk + """> <http://www.w3.org/2000/01/rdf-schema#seeAlso> ?link }
"""))
return Response(serializer.data) new_link_list = [str(x[0]) for x in seeAlsoLink]
fin_link_list = []
@api_view(['DELETE']) for link in new_link_list:
def deleteNote(request, pk): fin_link_list.append(link)
data = request.data
note = Note.objects.get(id=pk) return Response(fin_link_list)
note.delete()
return Response("Note has been deleted!")
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<catalog prefer="public" xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<uri id="User Entered Import Resolution" name="https://ontohub.org/canis-care/dogSkinDisease.owl" uri="dogSkinDisease.owl"/>
<group id="Folder Repository, directory=, recursive=true, Auto-Update=true, version=2" prefer="public" xml:base="">
<uri id="Automatically generated entry, Timestamp=1666527743691" name="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogDisease.owl" uri="dogDisease.owl"/>
<uri id="Automatically generated entry, Timestamp=1666527743691" name="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease" uri="dogSkinDisease.owl"/>
</group>
</catalog>
...@@ -9,8 +9,10 @@ https://docs.djangoproject.com/en/4.1/topics/settings/ ...@@ -9,8 +9,10 @@ https://docs.djangoproject.com/en/4.1/topics/settings/
For the full list of settings and their values, see For the full list of settings and their values, see
https://docs.djangoproject.com/en/4.1/ref/settings/ https://docs.djangoproject.com/en/4.1/ref/settings/
""" """
import os
from pathlib import Path from pathlib import Path
import django_heroku
import dj_database_url
# Build paths inside the project like this: BASE_DIR / 'subdir'. # Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent BASE_DIR = Path(__file__).resolve().parent.parent
...@@ -24,7 +26,7 @@ SECRET_KEY = 'django-insecure-3ts!3sf#jntwaa-9r(^t%7ty=nc03p_eil3yha%#hinc30b&ww ...@@ -24,7 +26,7 @@ SECRET_KEY = 'django-insecure-3ts!3sf#jntwaa-9r(^t%7ty=nc03p_eil3yha%#hinc30b&ww
# SECURITY WARNING: don't run with debug turned on in production! # SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True DEBUG = True
ALLOWED_HOSTS = ['192.168.1.102', '192.168.1.101', '192.168.1.5', '192.168.1.100'] ALLOWED_HOSTS = ['*']
# Application definition # Application definition
...@@ -121,6 +123,9 @@ USE_TZ = True ...@@ -121,6 +123,9 @@ USE_TZ = True
# https://docs.djangoproject.com/en/4.1/howto/static-files/ # https://docs.djangoproject.com/en/4.1/howto/static-files/
STATIC_URL = 'static/' STATIC_URL = 'static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),)
django_heroku.settings(locals())
# Default primary key field type # Default primary key field type
# https://docs.djangoproject.com/en/4.1/ref/settings/#default-auto-field # https://docs.djangoproject.com/en/4.1/ref/settings/#default-auto-field
......
This source diff could not be displayed because it is too large. You can view the blob instead.
<?xml version="1.0"?>
<rdf:RDF xmlns="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#"
xml:base="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:disease="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#">
<owl:Ontology rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease">
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Ontology for Dog Skin Disease Domain.</rdfs:comment>
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">This has been developed with the purpose of providing sufficient information to the users relevant to the most common skin diseases of dogs.</rdfs:comment>
</owl:Ontology>
<!--
///////////////////////////////////////////////////////////////////////////////////////
//
// Object Properties
//
///////////////////////////////////////////////////////////////////////////////////////
-->
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasArea -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasArea">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasCause -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasCause">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo"/>
<owl:inverseOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isCauseOf"/>
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseCause"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDiagnose -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDiagnose">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo"/>
<owl:inverseOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isDiagnoseOf"/>
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseDiagnose"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo"/>
<owl:inverseOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfectionOf"/>
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo">
<owl:inverseOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasPrevention -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasPrevention">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo"/>
<owl:inverseOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isPreventionOf"/>
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseasePrevention"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasSymptom -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasSymptom">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo"/>
<owl:inverseOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isSymptomOf"/>
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseSymptom"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasTreatment -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasTreatment">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfo"/>
<owl:inverseOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isTreatmentOf"/>
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseTreatment"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isCauseOf -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isCauseOf">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isDiagnoseOf -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isDiagnoseOf">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfectionOf -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfectionOf">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf"/>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isPreventionOf -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isPreventionOf">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isSymptomOf -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isSymptomOf">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf"/>
</owl:ObjectProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isTreatmentOf -->
<owl:ObjectProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isTreatmentOf">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isInfoOf"/>
</owl:ObjectProperty>
<!--
///////////////////////////////////////////////////////////////////////////////////////
//
// Data properties
//
///////////////////////////////////////////////////////////////////////////////////////
-->
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasAllergicType -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasAllergicType">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfectionType"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasAreaDescription -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasAreaDescription">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasBehaviouralSymptomDescription -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasBehaviouralSymptomDescription">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasCasueDescription -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasCasueDescription">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseCause"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDescription -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDescription">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDiagnoseDescription -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDiagnoseDescription">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasFungalType -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasFungalType">
<rdfs:subPropertyOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfectionType"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfectionType -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfectionType">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasPreventionDescription -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasPreventionDescription">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasScientificName -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasScientificName">
<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#FunctionalProperty"/>
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasSymptomDescription -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasSymptomDescription">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasTreatmentDescription -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasTreatmentDescription">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasType -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasType">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedCause -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedCause">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseCause"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedDiagnose -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedDiagnose">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseDiagnose"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedDisease -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedDisease">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedPrevention -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedPrevention">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseasePrevention"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedSymptom -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedSymptom">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseSymptom"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
</owl:DatatypeProperty>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedTreatment -->
<owl:DatatypeProperty rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#isApprovedTreatment">
<rdfs:domain rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseTreatment"/>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#boolean"/>
</owl:DatatypeProperty>
<!--
///////////////////////////////////////////////////////////////////////////////////////
//
// Classes
//
///////////////////////////////////////////////////////////////////////////////////////
-->
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Allergic -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Allergic">
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#AllergicDisease -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#AllergicDisease">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Allergic"/>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Bacterial -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Bacterial">
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#BacterialDisease -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#BacterialDisease">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Bacterial"/>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease">
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasArea"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseArea"/>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasDiagnose"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseDiagnose"/>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasPrevention"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseasePrevention"/>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasSymptom"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseSymptom"/>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasTreatment"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseTreatment"/>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseArea -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseArea"/>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseCause -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseCause"/>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseDiagnose -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseDiagnose"/>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseasePrevention -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseasePrevention"/>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseSymptom -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseSymptom"/>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseTreatment -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseTreatment"/>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Fleas -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Fleas">
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#FleasDisease -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#FleasDisease">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Fleas"/>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Fungal -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Fungal">
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#FungalDisease -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#FungalDisease">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Fungal"/>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#NamedDisease">
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Viral -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Viral">
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
</owl:Class>
<!-- http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#ViralDisease -->
<owl:Class rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#ViralDisease">
<owl:equivalentClass>
<owl:Class>
<owl:intersectionOf rdf:parseType="Collection">
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<owl:Restriction>
<owl:onProperty rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#hasInfection"/>
<owl:someValuesFrom rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Viral"/>
</owl:Restriction>
</owl:intersectionOf>
</owl:Class>
</owl:equivalentClass>
<rdfs:subClassOf rdf:resource="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
</owl:Class>
<!--
///////////////////////////////////////////////////////////////////////////////////////
//
// General axioms
//
///////////////////////////////////////////////////////////////////////////////////////
-->
<rdf:Description>
<rdf:type rdf:resource="http://www.w3.org/2002/07/owl#AllDisjointClasses"/>
<owl:members rdf:parseType="Collection">
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#Disease"/>
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseArea"/>
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseCause"/>
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseDiagnose"/>
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseInfection"/>
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseasePrevention"/>
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseSymptom"/>
<rdf:Description rdf:about="http://www.semanticweb.org/dogdisease/ontologies/2022/4/dogSkinDisease#DiseaseTreatment"/>
</owl:members>
</rdf:Description>
</rdf:RDF>
<!-- Generated by the OWL API (version 4.5.9.2019-02-01T07:24:44Z) https://github.com/owlcs/owlapi -->
<!DOCTYPE html>
<html lang="en">
{#<link rel="stylesheet" href="{{ url_for('static', filename='style.css')}}">#}
<head>
<meta charset="UTF-8">
<title>Chatbot</title>
</head>
<body>
<div class="container">
<div class="chatbox">
<div class="chatbox__support">
<div class="chatbox__header">
<div class="chatbox__image--header">
<img src="https://img.icons8.com/color/48/000000/circled-user-female-skin-type-5--v1.png" alt="image">
</div>
<div class="chatbox__content--header">
<h4 class="chatbox__heading--header">Chat support</h4>
<p class="chatbox__description--header">Hi. My name is Sam. How can I help you?</p>
</div>
</div>
<div class="chatbox__messages">
<div></div>
</div>
<div class="chatbox__footer">
<input type="text" placeholder="Write a message...">
<button class="chatbox__send--footer send__button">Send</button>
</div>
</div>
<div class="chatbox__button">
{# <button><img src="{{ url_for('static', filename='images/chatbox-icon.svg') }}" /></button>#}
</div>
</div>
</div>
</body>
</html>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment