diff --git a/lib/SimpleSAML/XML/MetaDataStore.php b/lib/SimpleSAML/XML/MetaDataStore.php
index dd426d32705a8e2d2b0fd1e5a5818f616cbd1984..ecba5b02fa1107ad0f7245b79a27e1d0c182b914 100644
--- a/lib/SimpleSAML/XML/MetaDataStore.php
+++ b/lib/SimpleSAML/XML/MetaDataStore.php
@@ -31,7 +31,8 @@ class SimpleSAML_XML_MetaDataStore {
 		$metadata = null;
 		if (!in_array($set, array(
 			'saml20-sp-hosted', 'saml20-sp-remote','saml20-idp-hosted', 'saml20-idp-remote',
-			'shib13-sp-hosted', 'shib13-sp-remote', 'shib13-idp-hosted', 'shib13-idp-remote'))) {
+			'shib13-sp-hosted', 'shib13-sp-remote', 'shib13-idp-hosted', 'shib13-idp-remote',
+			'openid-provider'))) {
 				throw new Exception('Trying to load illegal set of Meta data [' . $set . ']');
 		}
 		
@@ -148,6 +149,11 @@ class SimpleSAML_XML_MetaDataStore {
 				case 'SingleSignOnService' : 
 					return $baseurl . 'shib13/idp/SSOService.php';			
 			}
+		} elseif($set == 'openid-provider') {
+			switch ($property) {				
+				case 'server' : 
+					return $baseurl . 'openid/provider/server.php';			
+			}
 		}
 		
 		throw new Exception('Could not generate metadata property ' . $property . ' for set ' . $set . '.');