Skip to content
Snippets Groups Projects
Commit 0ed19ddb authored by alvaro's avatar alvaro
Browse files

Merge branch 'development'

parents bfaa1f2a e83b787e
No related branches found
No related tags found
No related merge requests found
......@@ -35,11 +35,23 @@ class Utils{
global $conf;
$ns = $conf['ns'];
$curie = $uri;
$aux = $uri;
foreach($ns as $k => $v){
$curie = preg_replace("|^$v|", "$k:", $uri);
if($curie != $uri){
$aux = preg_replace("|^$v|", "", $uri);
if($aux != $uri){
$uriSegments = explode("/", $aux);
$lastSegment = array_pop($uriSegments);
if(sizeof($uriSegments)>0){
$prefix = $k."_".(implode("_", $uriSegments));
//Adding "new" namespace
$conf['ns'][$prefix] = $v.implode("/", $uriSegments)."/";
}else{
$prefix = $k;
}
$curie = $prefix.":".$lastSegment;
break;
}
}
}
return $curie;
}
......@@ -52,8 +64,15 @@ class Utils{
if(preg_match('|^//|', $parts[1])){
return $curie;
}
if(sizeof($parts)>1 && isset($ns[$parts[0]])){
return $ns[$parts[0]].$parts[1];
if(sizeof($parts)>1 ){
if(!isset($ns[$parts[0]])){
$prefixSegments = explode("_", $parts[0]);
$realPrefix = array_shift($prefixSegments);
$conf['ns'][$parts[0]] = $ns[$realPrefix].join("/", $prefixSegments);
return $ns[$realPrefix].join("/", $prefixSegments)."/".$parts[1];
}else{
return $ns[$parts[0]].$parts[1];
}
}else{
return $curie;
}
......@@ -67,7 +86,7 @@ class Utils{
if(preg_match('|^//|', $parts[1])){
return $curie;
}
return array('ns' => $ns[$parts[0]], 'prefix' => $parts[0]);;
return array('ns' => $ns[$parts[0]], 'prefix' => $parts[0]);
}
public static function getTemplate($uri){
......@@ -468,10 +487,18 @@ class Utils{
}*/
}else{
if(isset($value['uri']) && $value['uri'] == 1){
if($conf['mirror_external_uris']){
if(isset($conf['mirror_external_uris']) && $conf['mirror_external_uris'] != false){
$value['mirroredUri'] = $value['value'];
if(is_bool($conf['mirror_external_uris'])){
$value['value'] = preg_replace("|^".$conf['ns']['local']."|", $conf['basedir'], $value['value']);
}elseif(is_string($conf['mirror_external_uris'])){
$value['value'] = preg_replace("|^".$conf['mirror_external_uris']."|", $conf['basedir'], $value['value']);
}else{
Utils::send500("Error in mirroring configuration");
exit(1);
}
}
$value['value'] = preg_replace("|^".$conf['ns']['local']."|", $conf['basedir'], $value['value']);
$value['curie'] = Utils::uri2curie($value['value']);
$array[$key] = $value;
}
......
......@@ -64,7 +64,7 @@ class ServiceModule extends abstractModule{
$prefixHeader = array();
for($i=0;$i<sizeof($params);$i++){
if($conf['mirror_external_uris']){
if($conf['mirror_external_uris'] != false){
$altUri = Utils::curie2uri($params[$i]);
$altUri = preg_replace("|^".$conf['basedir']."|", $conf['ns']['local'], $altUri);
$params[$i] = Utils::uri2curie($altUri);
......@@ -73,6 +73,8 @@ class ServiceModule extends abstractModule{
$segmentConnector = "";
for($i=0;$i<sizeof($params);$i++){
Utils::curie2uri($params[$i]);
//echo $params[$i]." ".Utils::curie2uri($params[$i]);exit(0);
$auxPrefix = Utils::getPrefix($params[$i]);
if($auxPrefix['ns'] != NULL){
$prefixHeader[] = $auxPrefix;
......
......@@ -47,7 +47,7 @@ class TypeModule extends abstractModule{
}
$uri = $res;
if($conf['mirror_external_uris']){
if($conf['mirror_external_uris'] != false){
$localUri = preg_replace("|^".$conf['ns']['local']."|", $conf['basedir'], $res);
}
......
......@@ -67,7 +67,7 @@ class UriModule extends abstractModule{
}
$uri = $res;
if($conf['mirror_external_uris']){
if($conf['mirror_external_uris'] != false){
$localUri = preg_replace("|^".$conf['ns']['local']."|", $conf['basedir'], $res);
}
......
......@@ -59,9 +59,18 @@ if($uri == $conf['basedir']){
}
//Configure external URIs if necessary
if($conf['mirror_external_uris']){
$uri = $conf['ns']['local'].$_GET['q'];
if(isset($conf['mirror_external_uris']) && $conf['mirror_external_uris'] != false){
$localUri = $conf['basedir'].$_GET['q'];
if(is_bool($conf['mirror_external_uris'])){
$uri = $conf['ns']['local'].$_GET['q'];
}elseif(is_string($conf['mirror_external_uris'])){
$uri = $conf['mirror_external_uris'].$_GET['q'];
}else{
Utils::send500("Error in mirroring configuration");
exit(1);
}
}
......
......@@ -53,7 +53,7 @@ while [ "$everything_ok" != "y" ]; do
if [[ "$basedir" =~ ^"$ns" ]]; then
external="false"
else
external="true"
external=$ns
extra="\$conf['ns']['base'] = '$basedir';"
fi
......@@ -94,7 +94,7 @@ LODSPEAKR_HOME=`pwd`/
\$conf['home'] = '$LODSPEAKR_HOME';
\$conf['basedir'] = '$basedir';
\$conf['debug'] = false;
\$conf['mirror_external_uris'] = $external;
\$conf['mirror_external_uris'] = '$external';
/*ATTENTION: By default this application is available to
* be exported and copied (its configuration)
......
......@@ -2,7 +2,11 @@
PREFIX {{h.prefix}}: <{{h.ns}}>
{%endfor%}
SELECT DISTINCT ?resource WHERE {
{%if base.args.arg0 %}GRAPH <{{base.args.arg0}}>{%else%} GRAPH ?g {%endif%} {
?x a ?resource .
{
{%if base.args.arg0 %}GRAPH <{{base.args.arg0}}>{%else%} GRAPH ?g {%endif%} {
?x a ?resource .
}
}UNION{
?x a ?resource .
}
}
}order by ?resource
......@@ -2,7 +2,12 @@
PREFIX {{h.prefix}}: <{{h.ns}}>
{%endfor%}
SELECT DISTINCT ?resource WHERE {
GRAPH ?g{
?resource a {{lodspk.args.arg0}}
{
GRAPH ?g{
?resource a {{lodspk.args.arg0}}
}
}UNION{
?resource a {{lodspk.args.arg0}}
}
}
}order by ?resource
limit 1000
......@@ -3,3 +3,4 @@ SELECT DISTINCT ?g WHERE {
[] ?p ?resource .
}
}
order by ?g
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment