vitro list views with CONSTRUCTs and improvement to null individual handling

This commit is contained in:
bjl23 2011-01-31 21:53:24 +00:00
parent c9cf713fed
commit eb55aa694f
4 changed files with 83 additions and 21 deletions

View file

@ -11,9 +11,9 @@
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?object ?name ?moniker WHERE {
GRAPH ?g1 { ?subject ?property ?object }
OPTIONAL { GRAPH ?g2 { ?object rdfs:label ?name } }
OPTIONAL { GRAPH ?g3 { ?object vitro:moniker ?moniker } }
?subject ?property ?object
OPTIONAL { ?object rdfs:label ?name }
OPTIONAL { ?object vitro:moniker ?moniker }
}
</query-base>
@ -22,15 +22,43 @@
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX afn: &lt;http://jena.hpl.hp.com/ARQ/function#&gt;
SELECT ?subclass ?object ?name ?moniker WHERE {
GRAPH ?g1 { ?subject ?property ?object }
OPTIONAL { GRAPH ?g2 { ?object rdfs:label ?name } }
OPTIONAL { GRAPH ?g3 { ?object vitro:moniker ?moniker } }
OPTIONAL { GRAPH ?g4 { ?object a ?subclass } }
SELECT ?subclass ?object ?name ?moniker {
?subject ?property ?object
OPTIONAL { ?object a ?subclass }
OPTIONAL { ?object rdfs:label ?name }
OPTIONAL { ?object vitro:moniker ?moniker }
FILTER ( afn:namespace(?subclass) != "http://vitro.mannlib.cornell.edu/ns/vitro/0.7#" )
} ORDER BY ?subclass
</query-collated>
<query-construct>
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?object .
?object a ?subclass .
?object rdfs:label ?name .
?object vitro:moniker ?moniker
} WHERE {
{
?subject ?property ?object
}
UNION {
?subject ?property ?object .
?object a ?subclass .
}
UNION {
?subject ?property ?object .
?object rdfs:label ?name .
}
UNION {
?subject ?property ?object .
?object vitro:moniker ?moniker .
}
}
</query-construct>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.DefaultListViewDataPostProcessor</postprocessor>
<template>propStatement-default.ftl</template>

View file

@ -14,12 +14,25 @@
(afn:localname(?link) AS ?linkName)
?anchor
?url WHERE {
GRAPH ?g1 { ?subject ?property ?link }
OPTIONAL { GRAPH ?g2 { ?link vitro:linkAnchor ?anchor } }
OPTIONAL { GRAPH ?g3 { ?link vitro:linkURL ?url } }
OPTIONAL { GRAPH ?g4 { ?link vitro:linkDisplayRank ?rank } }
?subject ?property ?link
OPTIONAL { ?link vitro:linkAnchor ?anchor }
OPTIONAL { ?link vitro:linkURL ?url }
OPTIONAL { ?link vitro:linkDisplayRank ?rank }
} ORDER BY ?rank
</query-base>
<query-construct>
CONSTRUCT {
?subject ?property ?link .
?link ?linkProp ?linkObj
} WHERE {
{ ?subject ?property ?link }
UNION {
?subject ?property ?link .
?link ?linkProp ?linkObj
}
}
</query-construct>
<template>propStatement-vitroLink.ftl</template>
</list-view-config>