private function isNonRedirectableResource(ExpNsResource $expNsResource) { return $expNsResource->getNamespaceId() === 'swivt' || $expNsResource->getNamespaceId() === 'rdf' || $expNsResource->getNamespaceId() === 'rdfs' || $expNsResource->getNamespaceId() === 'property' && strrpos($expNsResource->getLocalName(), 'aux') || isset($expNsResource->isUserDefined) && !$expNsResource->isUserDefined; }
/** * Check if the given property is one of the special properties of the OWL * language that require their values to be classes or RDF lists of * classes. In these cases, it is necessary to declare this in the exported * data. * * @note The list of properties checked here is not complete for the OWL * language but covers what is used in SMW. * @note OWL 2 allows URIs to refer to both classes and individual elements * in different contexts. We only need declarations for classes that are * used as such, hence it is enough to check the property. Moreover, we do * not use OWL Datatypes in SMW, so rdf:type, rdfs:domain, etc. always * refer to classes. * @param SMWExpNsResource $property */ protected function isOWLClassTypeProperty(SMWExpNsResource $property) { $locname = $property->getLocalName(); if ($property->getNamespaceID() == 'rdf') { return $locname == 'type'; } elseif ($property->getNamespaceID() == 'owl') { return $locname == 'intersectionOf' || $locname == 'unionOf' || $locname == 'equivalentClass' || $locname == 'complementOf' || $locname == 'someValuesFrom' || $locname == 'allValuesFrom' || $locname == 'onClass'; } elseif ($property->getNamespaceID() == 'rdfs') { return $locname == 'subClassOf' || $locname == 'range' || $locname == 'domain'; } else { return false; } }