Skip to content

Commit 9cb8d10

Browse files
committed
TPC11
1 parent 1cf4828 commit 9cb8d10

File tree

8 files changed

+333
-0
lines changed

8 files changed

+333
-0
lines changed

.DS_Store

4 KB
Binary file not shown.

TPC10/.DS_Store

0 Bytes
Binary file not shown.

TPC11/.DS_Store

8 KB
Binary file not shown.

TPC11/pr/foto.jpg

224 KB
Loading

TPC11/pr/pr.dtd

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!ELEMENT pr (meta,workteam,abstract,deliverables) >
3+
4+
<!ELEMENT meta (keyname,title,subtitle?,bdate,edate,supervisor) >
5+
<!ELEMENT keyname (#PCDATA) >
6+
<!ELEMENT title (#PCDATA) >
7+
<!ELEMENT subtitle (#PCDATA) >
8+
<!ELEMENT bdate (#PCDATA) >
9+
<!ELEMENT edate (#PCDATA) >
10+
11+
<!ELEMENT supervisor (name,email?,homepage?) >
12+
<!ELEMENT name (#PCDATA) >
13+
<!ELEMENT email (#PCDATA) >
14+
<!ELEMENT homepage (#PCDATA) >
15+
16+
17+
<!ELEMENT workteam (member+) >
18+
<!ELEMENT member (identifier,name,email,photo?) >
19+
<!ELEMENT identifier (#PCDATA) >
20+
<!ELEMENT photo EMPTY >
21+
22+
<!ATTLIST photo
23+
path CDATA #REQUIRED >
24+
25+
<!ELEMENT abstract (p+) >
26+
<!ELEMENT p (#PCDATA |b|i|u|xref)* >
27+
<!ELEMENT b (#PCDATA|i|u|xref)* >
28+
<!ELEMENT i (#PCDATA|b|u|xref)* >
29+
<!ELEMENT u (#PCDATA|i|b|xref)* >
30+
31+
<!ELEMENT xref (#PCDATA) >
32+
<!ATTLIST xref
33+
url CDATA #REQUIRED>
34+
35+
<!ELEMENT deliverables (deliverable+) >
36+
<!ELEMENT deliverable (#PCDATA) >
37+
<!ATTLIST deliverable
38+
path CDATA #REQUIRED >
39+
40+
41+
42+
43+
44+
45+
46+

TPC11/pr/pr.xml

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
3+
<!DOCTYPE pr SYSTEM "file:/Users/shahzodyusupov/Desktop/PRC/TPC11/pr/pr.dtd">
4+
<pr>
5+
<meta>
6+
<keyname>TPC11</keyname>
7+
<title>Trabalho de casa 11</title>
8+
<subtitle>Processamento e Representaçāo de Conhecimento</subtitle>
9+
<bdate>Abril 2020</bdate>
10+
<edate>Maio 2020</edate>
11+
<supervisor >
12+
<name> José Carlos Ramalho</name>
13+
<email>[email protected] </email>
14+
<homepage> http://www4.di.uminho.pt/~jcr/ </homepage>
15+
</supervisor>
16+
</meta>
17+
<workteam>
18+
<member>
19+
<identifier>A82617</identifier>
20+
<name>Shahzod Yusupov</name>
21+
<email>[email protected]</email>
22+
<photo path="./PRC/TPC11/pr/foto.jpg"/>
23+
</member>
24+
</workteam>
25+
<abstract>
26+
<p>Este trabalho foi realizado no âmbito da Unidade Curricular de <b>Processamento e Representaçāo de Conhecimento</b></p>
27+
<p>Tinha como objetivo a elaboracão de queries em SPARQL de modo a retirar informacoes sobre a ontologia construida na aula relativa a uma
28+
àrvore genalógica. Eram necessárias queries para obter informações sobre familiares de um certo indivíduo, nomeadamente sobre os tios,
29+
primos, ancestrais,descendentes,cunhados e os sogros.
30+
<p> Foram criadas 3 novas relações, nomeadamente <b>hasWife</b> ,<b>hasHusband</b> e <b>hasPartner</b>, recorrendo às queries do tipo
31+
<i>Construct</i>, de modo a ser mais fácil obter as informacoes relativas aos cunhados e sogros de um certo indivíduo.</p>
32+
33+
34+
35+
36+
37+
</abstract>
38+
<deliverables>
39+
<deliverable path ="https://github.com/47Balboa/PRC">Git</deliverable>
40+
<deliverable path ="https://github.com/47Balboa/PRI/TPC11/pr">ProjectRecord</deliverable>
41+
42+
43+
</deliverables>
44+
</pr>

TPC11/pr/pr.xsl

+129
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3+
version="2.0">
4+
5+
<xsl:output method="xhtml" indent="yes" encoding="UTF-8"/>
6+
7+
<xsl:template match="/">
8+
<html>
9+
<head>
10+
<title><xsl:value-of select="pr/meta/title"/></title>
11+
<meta charset="UTF8" />
12+
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css"/>
13+
</head>
14+
<body>
15+
<h2><center>Project Record</center></h2>
16+
<hr/>
17+
<xsl:apply-templates/>
18+
</body>
19+
</html>
20+
</xsl:template>
21+
22+
<xsl:template match="pr">
23+
<xsl:apply-templates select="meta"/>
24+
<hr/>
25+
<hr/>
26+
<div class="w3-container">
27+
<xsl:apply-templates select="workteam"/>
28+
</div>
29+
<hr/>
30+
<hr/>
31+
<div class="w3-container">
32+
<xsl:apply-templates select="abstract"/>
33+
</div>
34+
<hr/>
35+
<hr/>
36+
<div class="w3-container bottom">
37+
<xsl:apply-templates select="deliverables"/>
38+
</div>
39+
40+
</xsl:template>
41+
42+
<xsl:template match="meta">
43+
<table style="width:100%">
44+
<tr>
45+
<td><b>KEY NAME:</b><xsl:value-of select="keyname"/></td>
46+
<td><b>BEGIN DATE:<xsl:value-of select="bdate"/></b></td>
47+
</tr>
48+
<tr>
49+
<td><b>TITLE:</b><xsl:value-of select="title"/></td>
50+
<td><b>END DATE:<xsl:value-of select="edate"/></b></td>
51+
</tr>
52+
<tr>
53+
<td><xsl:choose>
54+
<xsl:when test="subtitle">
55+
<b>Subtitle: </b>
56+
<xsl:value-of select="subtitle"/>
57+
</xsl:when>
58+
</xsl:choose>
59+
</td>
60+
<td><b>SUPERVISOR:<xsl:value-of select="supervisor"/></b></td>
61+
</tr>
62+
</table>
63+
</xsl:template>
64+
65+
<xsl:template match="workteam">
66+
<h4><b>Workteam:</b></h4>
67+
<xsl:apply-templates select="member"/>
68+
</xsl:template>
69+
70+
71+
<xsl:template match="member">
72+
73+
<p> <xsl:value-of select="identifier"/> -
74+
<xsl:value-of select="name"/> -
75+
<a href="mailto:{email}"><xsl:value-of select="email"/> </a> </p>
76+
<p> <img src="{photo/@path}" width="120" height="120"></img> </p>
77+
78+
79+
80+
</xsl:template>
81+
82+
<xsl:template match="abstract">
83+
<h4><b>Abstract:</b></h4>
84+
<xsl:apply-templates select="p"/>
85+
86+
</xsl:template>
87+
88+
<xsl:template match="p">
89+
<p><xsl:apply-templates/></p>
90+
</xsl:template>
91+
92+
<xsl:template match="i">
93+
<i><xsl:apply-templates/></i>
94+
</xsl:template>
95+
96+
<xsl:template match="b">
97+
<b><xsl:apply-templates/></b>
98+
</xsl:template>
99+
100+
<xsl:template match="u">
101+
<u><xsl:apply-templates/></u>
102+
</xsl:template>
103+
104+
<xsl:template match="xref">
105+
<a href="{@url}" target="_blank"><xsl:apply-templates/></a>
106+
</xsl:template>
107+
108+
<xsl:template match="deliverables">
109+
<h4><b>Deliverables:</b></h4>
110+
<ul>
111+
<xsl:apply-templates select="deliverable"/>
112+
</ul>
113+
</xsl:template>
114+
115+
<xsl:template match="deliverable">
116+
<li>
117+
<a href="{@path}" target="_blank"> <xsl:value-of select="."/></a>
118+
119+
</li>
120+
121+
</xsl:template>
122+
</xsl:stylesheet>
123+
124+
125+
126+
127+
128+
129+

TPC11/queries.txt

+114
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
Queries:
2+
3+
a)Devolver os tios de um individuo
4+
5+
PREFIX : <http://www.di.uminho.pt/prc2020/familyTree#>
6+
select ?a ?anome ?t ?tnome where{
7+
?a :name ?anome.
8+
?a :hasParent ?p.
9+
?p :hasSibling ?t.
10+
?t :name ?tnome.
11+
filter(?p != ?t).
12+
}
13+
14+
b)Devolver os primos de um individuo
15+
16+
PREFIX : <http://www.di.uminho.pt/prc2020/familyTree#>
17+
select ?a ?anome ?p ?pnome where{
18+
?a :name ?anome.
19+
?a :hasParent ?b.
20+
?b :hasSibling ?t.
21+
?t :hasChild ?p.
22+
?p :name ?pnome
23+
filter(?b != ?t).
24+
}
25+
26+
c) Devolver os ancestrais de um individuo
27+
28+
PREFIX : <http://www.di.uminho.pt/prc2020/familyTree#>
29+
select ?a ?anome ?p ?pnome where{
30+
?a :name ?anome.
31+
?a :hasParent+ ?p.
32+
?p :name ?pnome .
33+
}
34+
35+
d) Devolver os descendentes de um individuo
36+
37+
PREFIX : <http://www.di.uminho.pt/prc2020/familyTree#>
38+
select ?a ?anome ?c ?cnome where{
39+
?a :name ?anome.
40+
?a :hasChild+ ?c.
41+
?c :name ?cnome .
42+
43+
}
44+
45+
e) Devolver os cunhados de um individuo
46+
47+
PREFIX : <http://www.di.uminho.pt/prc2020/familyTree#>
48+
49+
50+
51+
52+
CONSTRUCT{
53+
?p :hasWife ?wife.
54+
55+
}
56+
where{
57+
?p a :Person.
58+
?p :hasChild ?ch.
59+
?wife :hasChild ?ch.
60+
?wife :sex "F" .
61+
filter(?p != ?wife).
62+
63+
}
64+
65+
----------------------------------------
66+
67+
CONSTRUCT{
68+
?p :hasHusband ?husband.
69+
70+
}
71+
where{
72+
?p a :Person.
73+
?p :hasChild ?ch.
74+
?husband :hasChild ?ch.
75+
?husband :sex "M" .
76+
filter(?p != ?husband).
77+
78+
}
79+
80+
------------------------------------------
81+
CONSTRUCT{
82+
?p :hasPartner ?partner.
83+
84+
}
85+
where{
86+
?p a :Person.
87+
?p :hasChild ?ch.
88+
?partner :hasChild ?ch.
89+
filter(?p != ?partner).
90+
91+
}
92+
93+
-----------------------------------------------------
94+
95+
PREFIX : <http://www.di.uminho.pt/prc2020/familyTree#>
96+
select ?a ?anome ?t ?tnome where{
97+
?a :name ?anome.
98+
?a :hasPartner ?p.
99+
?p :hasSibling ?t.
100+
?t :name ?tnome.
101+
filter(?p != ?t).
102+
}
103+
104+
105+
f) Devolver os sogros de um inividuo
106+
107+
PREFIX : <http://www.di.uminho.pt/prc2020/familyTree#>
108+
select ?a ?anome ?t ?tnome where{
109+
?a :name ?anome.
110+
?a :hasPartner ?p.
111+
?p :hasParent ?t.
112+
?t :name ?tnome.
113+
}
114+

0 commit comments

Comments
 (0)