List view improvements for Vitro

This commit is contained in:
Graham Triggs 2017-10-19 11:21:37 +01:00
parent 0ef3018ae3
commit 95e336d862
4 changed files with 26 additions and 59 deletions

View file

@ -39,7 +39,10 @@ public class FoafNameToRdfsLabelPreprocessor implements ModelChangePreprocessor
"?individualVcard <http://www.w3.org/2006/vcard/ns#hasName> ?fullName ." + "?individualVcard <http://www.w3.org/2006/vcard/ns#hasName> ?fullName ." +
"?fullName <http://www.w3.org/2006/vcard/ns#givenName> ?firstName ." + "?fullName <http://www.w3.org/2006/vcard/ns#givenName> ?firstName ." +
"?fullName <http://www.w3.org/2006/vcard/ns#familyName> ?lastName ." + "?fullName <http://www.w3.org/2006/vcard/ns#familyName> ?lastName ." +
"OPTIONAL {?subject <http://vivoweb.org/ontology/core#middleName> ?middleName .}" + "OPTIONAL {" +
"?subject <http://purl.obolibrary.org/obo/ARG_2000028> ?individualVcard ." +
"?individualVcard <http://www.w3.org/2006/vcard/ns#hasName> ?fullName ." +
"?fullName <http://vivoweb.org/ontology/core#middleName> ?middleName .}" +
"}"; "}";
return queryStr; return queryStr;
} }

View file

@ -15,13 +15,5 @@
} ORDER BY ?value } ORDER BY ?value
</query-select> </query-select>
<query-construct>
CONSTRUCT {
?subject ?property ?value
} WHERE {
?subject ?property ?value
}
</query-construct>
<template>propStatement-dataDefault.ftl</template> <template>propStatement-dataDefault.ftl</template>
</list-view-config> </list-view-config>

View file

@ -14,16 +14,20 @@
SELECT <collated> ?subclass </collated> SELECT <collated> ?subclass </collated>
?object ?object
?label ?label
?localName WHERE { ?localName
WHERE {
?subject ?property ?object ?subject ?property ?object .
LET (?localName := afn:localname(?object)) LET (?localName := afn:localname(?object))
OPTIONAL { ?object rdfs:label ?label } OPTIONAL {
<precise-subquery>?subject ?property ?object .</precise-subquery>
?object rdfs:label ?label .
}
<collated> <collated>
OPTIONAL { OPTIONAL {
?object a ?subclass. <precise-subquery>?subject ?property ?object .</precise-subquery>
?object a ?subclass .
# Require the subclasses retrieved to be in a classgroup, since others are not generally # Require the subclasses retrieved to be in a classgroup, since others are not generally
# for display. See vivo-dev-all thread titled "Internal Entity and mostSpecificType," # for display. See vivo-dev-all thread titled "Internal Entity and mostSpecificType,"
# Aug 9-10, 2011. # Aug 9-10, 2011.
@ -35,31 +39,5 @@
} ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?label ) ASC( ?localName ) } ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?label ) ASC( ?localName )
</query-select> </query-select>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?object .
?object a ?subclass .
?subclass vitro:inClassGroup ?classgroup .
?object rdfs:label ?label .
} WHERE {
{
?subject ?property ?object
} UNION {
?subject ?property ?object .
?object a ?subclass .
} UNION {
?subject ?property ?object .
?object a ?subclass .
?subclass vitro:inClassGroup ?classgroup
} UNION {
?subject ?property ?object .
?object rdfs:label ?label .
}
}
</query-construct>
<template>propStatement-default.ftl</template> <template>propStatement-default.ftl</template>
</list-view-config> </list-view-config>

View file

@ -13,25 +13,19 @@
SELECT ?menuItem SELECT ?menuItem
(afn:localname(?menuItem) AS ?menuItemName) (afn:localname(?menuItem) AS ?menuItemName)
?linkText ?linkText
?menuPosition WHERE { ?menuPosition
?subject ?property ?menuItem WHERE {
OPTIONAL { ?menuItem display:linkText ?linkText } ?subject ?property ?menuItem .
OPTIONAL { ?menuItem display:menuPosition ?menuPosition } OPTIONAL {
<precise-subquery>?subject ?property ?menuItem .</precise-subquery>
?menuItem display:linkText ?linkText .
}
OPTIONAL {
<precise-subquery>?subject ?property ?menuItem .</precise-subquery>
?menuItem display:menuPosition ?menuPosition .
}
} ORDER BY ?menuPosition } ORDER BY ?menuPosition
</query-select> </query-select>
<query-construct>
CONSTRUCT {
?subject ?property ?menuItem .
?menuItem ?menuItemProp ?menuItemObj
} WHERE {
{ ?subject ?property ?menuItem }
UNION {
?subject ?property ?menuItem .
?menuItem ?menuItemProp ?menuItemObj
}
}
</query-construct>
<template>propStatement-hasElement.ftl</template> <template>propStatement-hasElement.ftl</template>
</list-view-config> </list-view-config>