Index: /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/VirtualCollectionRegistry.java
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/VirtualCollectionRegistry.java	(revision 225)
+++ /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/VirtualCollectionRegistry.java	(revision 226)
@@ -3,5 +3,4 @@
 import java.security.Principal;
 import java.util.Collections;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
@@ -15,6 +14,4 @@
 
 import eu.clarin.cmdi.virtualcollectionregistry.model.Handle;
-import eu.clarin.cmdi.virtualcollectionregistry.model.Resource;
-import eu.clarin.cmdi.virtualcollectionregistry.model.ResourceMetadata;
 import eu.clarin.cmdi.virtualcollectionregistry.model.User;
 import eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollection;
@@ -108,10 +105,4 @@
 			vc.setOwner(user);
 			vc.setPid(Handle.createPid());
-			for (Resource resource : vc.getResources()) {
-				if (resource instanceof ResourceMetadata) {
-					ResourceMetadata md = (ResourceMetadata) resource;
-					md.setPid(Handle.createPid());
-				}
-			}
 			em.persist(vc);			
 			em.getTransaction().commit();
@@ -120,11 +111,4 @@
 			em.getTransaction().begin();
 			em.persist(new Handle(vc.getPid(), Handle.Type.COLLECTION, vc.getId()));
-			for (Resource resource : vc.getResources()) {
-				if (resource instanceof ResourceMetadata) {
-					ResourceMetadata md = (ResourceMetadata) resource;
-					em.persist(new Handle(md.getPid(), Handle.Type.METADATA,
-											md.getId()));
-				}
-			}
 			em.getTransaction().commit();
 			return vc.getId();
@@ -167,27 +151,4 @@
 			c.updateFrom(vc);
 			validator.validate(c);
-
-			HashSet<String> newPids = new HashSet<String>();
-			for (Resource resource : c.getResources()) {
-				if (resource instanceof ResourceMetadata) {
-					ResourceMetadata md = (ResourceMetadata) resource;
-					if (md.getPid() == null) {
-						String pid = Handle.createPid();
-						md.setPid(pid);
-						newPids.add(pid);
-					}
-				}
-			}
-			em.getTransaction().commit();
-			em.getTransaction().begin();
-			for (Resource resource : c.getResources()) {
-				if (resource instanceof ResourceMetadata) {
-					ResourceMetadata md = (ResourceMetadata) resource;
-					if (newPids.contains(md.getPid())) {
-						em.persist(new Handle(md.getPid(),
-								Handle.Type.METADATA, md.getId()));
-					}
-				}
-			}
 			em.getTransaction().commit();
 			return vc.getId();
@@ -260,30 +221,4 @@
 					"error while retrieving virtual collection", e);
 		}
-	}
-
-	public ResourceMetadata retrieveMetadataResource(long id)
-			throws VirtualCollectionRegistryException {
-		if (id <= 0) {
-			throw new IllegalArgumentException("id <= 0");
-		}
-
-		try {
-			EntityManager em = datastore.getEntityManager();
-			em.getTransaction().begin();
-			ResourceMetadata md = em.find(ResourceMetadata.class, new Long(id));
-			em.getTransaction().commit();
-			if (md == null) {
-				throw new VirtualCollectionMetadataNotFoundException(id);
-			}
-			return md;
-		} catch (VirtualCollectionRegistryException e) {
-			throw e;
-		} catch (Exception e) {
-			logger.log(Level.SEVERE,
-					   "error while retrieving metadata resource", e);
-			throw new VirtualCollectionRegistryException(
-					"error while retrieving metadata resource", e);
-		}
-			
 	}
 
Index: /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/ClarinVirtualCollection.java
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/ClarinVirtualCollection.java	(revision 225)
+++ /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/ClarinVirtualCollection.java	(revision 226)
@@ -12,5 +12,4 @@
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlElements;
-import javax.xml.bind.annotation.XmlIDREF;
 import javax.xml.bind.annotation.XmlRootElement;
 import javax.xml.bind.annotation.XmlType;
@@ -66,5 +65,4 @@
 				 propOrder = { "type", "ref" })
 		public static class Proxy {
-			private ClarinVirtualCollection cvc;
 			private Resource resource;
 
@@ -72,6 +70,5 @@
 			}
 
-			private Proxy(ClarinVirtualCollection cvc, Resource resource) {
-				this.cvc = cvc;
+			private Proxy(Resource resource) {
 				this.resource = resource;
 			}
@@ -89,10 +86,5 @@
 			@XmlElement(name = "ResourceRef")
 			public String getRef() {
-				if (resource instanceof ResourceMetadata) {
-					return cvc.createHandleURI(
-							((ResourceMetadata) resource).getPid()).toString();
-				} else {
-					return ((ResourceProxy) resource).getRef();
-				}
+				return resource.getRef();
 			}
 		} // inner class Proxy
@@ -104,5 +96,5 @@
 		private Resources(ClarinVirtualCollection cvc) {
 			for (Resource r : cvc.getVirtualCollection().getResources()) {
-				proxies.add(new Proxy(cvc, r));
+				proxies.add(new Proxy(r));
 			}
 		}
@@ -120,35 +112,10 @@
 		@XmlAccessorType(XmlAccessType.NONE)
 		@XmlType(namespace = "urn:x-vcr:clarin-virtualcollection:components:vc",
-				propOrder = { "name", "description", "creationDate", "visibility", "origin", "creator", "copyOfResourceMetadata" })
+				propOrder = { "name", "description", "creationDate", "visibility", "origin", "creator" })
 		public static class VC {
-			@XmlAccessorType(XmlAccessType.NONE)
-			public static class CopyOfResources {
-				private List<Resource> copyRefs = new ArrayList<Resource>();
-
-				private void init(VirtualCollection vc) {
-					for (Resource resource : vc.getResources()) {
-						if (resource instanceof ResourceMetadata) {
-							copyRefs.add(resource);
-						}
-					}
-				}
-
-				@XmlIDREF
-				@XmlAttribute(name = "ref")
-				public List<Resource> getRefs() {
-					return copyRefs;
-				}
-				
-				public boolean isEmpty() {
-					return copyRefs.isEmpty();
-				}
-			} // inner class CopyOfResources
-
-			private CopyOfResources copyRefs = new CopyOfResources();
 			private VirtualCollection vc;
 
 			private void init(VirtualCollection vc) {
 				this.vc = vc;
-				this.copyRefs.init(vc);
 			}
 			
@@ -182,10 +149,4 @@
 			public Creator getCreator() {
 				return vc.getCreator();
-			}
-
-			
-			@XmlElement(name = "CopyOfResourceMetadata")
-			public CopyOfResources getCopyOfResourceMetadata() {
-				return copyRefs.isEmpty() ? null : copyRefs;
 			}
 		}
Index: /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/Resource.java
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/Resource.java	(revision 225)
+++ /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/Resource.java	(revision 226)
@@ -2,33 +2,43 @@
 
 import javax.persistence.Column;
-import javax.persistence.DiscriminatorColumn;
-import javax.persistence.DiscriminatorType;
 import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
-import javax.persistence.Inheritance;
-import javax.persistence.InheritanceType;
 import javax.persistence.Table;
 import javax.xml.bind.annotation.XmlAccessType;
 import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlID;
-import javax.xml.bind.annotation.XmlSeeAlso;
+import javax.xml.bind.annotation.XmlType;
+
+import org.apache.commons.lang.builder.HashCodeBuilder;
 
 @Entity
 @Table(name = "resource")
-@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
-@DiscriminatorColumn(discriminatorType=DiscriminatorType.STRING, length=1)
 @XmlAccessorType(XmlAccessType.NONE)
-@XmlSeeAlso({ ResourceProxy.class, ResourceMetadata.class })
-public abstract class Resource {
+@XmlType(propOrder = { "type", "ref" })
+public class Resource {
 	@Id
 	@GeneratedValue(strategy = GenerationType.AUTO)
 	@Column(name = "id", nullable = false, updatable = false, insertable = true)
 	private long id = -1;
+	@Column(name = "type", nullable = false)
+	@Enumerated(EnumType.ORDINAL)
+	private ResourceType type;
+	@Column(name = "ref", nullable = false)
+	private String ref;
 
-	protected Resource() {
+	private Resource() {
 		super();
+	}
+
+	public Resource(ResourceType type, String ref) {
+		this();
+		this.setType(type);
+		this.setRef(ref);
 	}
 
@@ -42,10 +52,35 @@
 		return "r" + id;
 	}
-	
-	public abstract ResourceType getType();
 
-	public abstract String getRef();
+	public void setType(ResourceType type) {
+		if (type == null) {
+			throw new NullPointerException("type == null");
+		}
+		this.type = type;
+	}
 
-	abstract int getSignature();
+	@XmlElement(name = "ResourceType")
+	public ResourceType getType() {
+		return type;
+	}
 
-} // abstract class Resource
+	public void setRef(String ref) {
+		if (ref == null) {
+			throw new NullPointerException("ref == null");
+		}
+		this.ref = ref;
+	}
+
+	@XmlElement(name = "ResourceRef")
+	public String getRef() {
+		return ref;
+	}
+
+	protected int getSignature() {
+		return new HashCodeBuilder(799, 51)
+			.append(type)
+			.append(ref)
+			.toHashCode();
+	}
+
+} // class Resource
Index: rtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/ResourceMetadata.java
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/ResourceMetadata.java	(revision 225)
+++ 	(revision )
@@ -1,113 +1,0 @@
-package eu.clarin.cmdi.virtualcollectionregistry.model;
-
-import javax.persistence.Column;
-import javax.persistence.DiscriminatorValue;
-import javax.persistence.Embedded;
-import javax.persistence.Entity;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlSeeAlso;
-import javax.xml.bind.annotation.XmlType;
-
-import org.apache.commons.lang.builder.HashCodeBuilder;
-
-@Entity
-@DiscriminatorValue("M")
-@XmlRootElement(name = "ResourceMetadata")
-@XmlAccessorType(XmlAccessType.NONE)
-@XmlType(namespace = "urn:x-vcr:virtualcollection:resourcemetadata",
-         propOrder = { "name", "description", "creator", "ref" })
-@XmlSeeAlso({ Resource.class, Creator.class })
-public class ResourceMetadata extends Resource {
-	@Column(name = "name")
-	private String name;
-	@Column(name = "description")
-	private String description;
-	@Embedded
-	private Creator creator;
-	@Column(name = "ref", nullable = false)
-	private String ref;
-	@Column(name = "pid")
-	private String pid;
-
-	@SuppressWarnings("unused")
-	private ResourceMetadata() {
-		super();
-	}
-	
-	public ResourceMetadata(String title, String description, String ref) {
-		super();
-		this.setName(title);
-		this.setDescriptione(description);
-		this.setRef(ref);
-	}
-
-	public ResourceType getType() {
-		return ResourceType.METADATA;
-	}
-	
-	public void setName(String name) {
-		if (name == null) {
-			throw new NullPointerException("name == null");
-		}
-		this.name = name;
-	}
-	
-	@XmlElement(name = "Name")
-	public String getName() {
-		return name;
-	}
-
-	public void setDescriptione(String description) {
-		this.description = description;
-	}
-	
-	@XmlElement(name = "Description")
-	public String getDescription() {
-		return description;
-	}
-
-	public void setCreator(Creator creator) {
-		this.creator = creator;
-	}
-
-	@XmlElement(name = "Creator")
-	public Creator getCreator() {
-		return creator;
-	}
-
-	public void setRef(String ref) {
-		if (ref == null) {
-			throw new NullPointerException("ref == null");
-		}
-		this.ref = ref;
-	}
-	
-	@XmlElement(name = "ResourceRef")
-	public String getRef() {
-		return ref;
-	}
-	
-	public void setPid(String pid) {
-		if (pid == null) {
-			throw new NullPointerException("pid == null");
-		}
-		this.pid = pid.trim();
-	}
-	
-	public String getPid() {
-		return pid;
-	}
-
-	int getSignature() {
-		return new HashCodeBuilder(859, 83)
-			.append(name)
-			.append(description)
-			.append((creator != null) ? creator.getSignature() : null)
-			.append(ref)
-			.toHashCode();
-	}
-
-} // class ResourceMetadata
Index: rtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/ResourceProxy.java
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/ResourceProxy.java	(revision 225)
+++ 	(revision )
@@ -1,73 +1,0 @@
-package eu.clarin.cmdi.virtualcollectionregistry.model;
-
-import javax.persistence.Column;
-import javax.persistence.DiscriminatorValue;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlRootElement;
-import javax.xml.bind.annotation.XmlSeeAlso;
-import javax.xml.bind.annotation.XmlType;
-
-import org.apache.commons.lang.builder.HashCodeBuilder;
-
-@Entity
-@DiscriminatorValue("P")
-@XmlRootElement(name = "ResourceProxy")
-@XmlAccessorType(XmlAccessType.NONE)
-@XmlType(namespace = "urn:x-vcr:virtualcollection:resourceproxy",
-         propOrder = { "type", "ref" })
-@XmlSeeAlso({ Resource.class })
-public class ResourceProxy extends Resource {
-	@Column(name = "type")
-	@Enumerated(EnumType.ORDINAL)
-	private ResourceType type = ResourceType.METADATA;
-	@Column(name = "ref", nullable = false)
-	private String ref;
-
-	@SuppressWarnings("unused")
-	private ResourceProxy() {
-		super();
-	}
-
-	public ResourceProxy(ResourceType type, String ref) {
-		super();
-		this.setType(type);
-		this.setRef(ref);
-	}
-
-	public void setType(ResourceType type) {
-		if (type == null) {
-			throw new NullPointerException("type == null");
-		}
-		this.type = type;
-	}
-
-	@XmlElement(name = "ResourceType")
-	public ResourceType getType() {
-		return type;
-	}
-
-	public void setRef(String ref) {
-		if (ref == null) {
-			throw new NullPointerException("ref == null");
-		}
-		this.ref = ref;
-	}
-
-	@XmlElement(name = "ResourceRef")
-	public String getRef() {
-		return ref;
-	}
-
-	int getSignature() {
-		return new HashCodeBuilder(799, 51)
-			.append(type)
-			.append(ref)
-			.toHashCode();
-	}
-
-} // class ResourceProxy
Index: /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/VirtualCollection.java
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/VirtualCollection.java	(revision 225)
+++ /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/model/VirtualCollection.java	(revision 226)
@@ -84,5 +84,5 @@
 	@Column(name = "id")
 	@XmlAttribute(name = "id")
-	private long id;
+	private long id = -1;
 	@ManyToOne(cascade = { CascadeType.PERSIST,
 						   CascadeType.REFRESH,
@@ -126,8 +126,6 @@
 	@OrderBy("id")
 	@XmlElementWrapper(name = "Resources")
-	@XmlElements({ @XmlElement(name = "ResourceProxy",
-                               type = ResourceProxy.class),
-                   @XmlElement(name = "ResourceMetadata",
-                		       type = ResourceMetadata.class) })
+	@XmlElements({ @XmlElement(name = "Resource",
+                               type = Resource.class) })
 	private Set<Resource> resources = new LinkedHashSet<Resource>();
 	@Column(name = "created", nullable = false, updatable = false)
Index: /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/rest/VirtualCollectionRegistryRestService.java
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/rest/VirtualCollectionRegistryRestService.java	(revision 225)
+++ /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/java/eu/clarin/cmdi/virtualcollectionregistry/rest/VirtualCollectionRegistryRestService.java	(revision 226)
@@ -33,5 +33,4 @@
 import eu.clarin.cmdi.virtualcollectionregistry.model.ClarinVirtualCollection;
 import eu.clarin.cmdi.virtualcollectionregistry.model.Handle;
-import eu.clarin.cmdi.virtualcollectionregistry.model.ResourceMetadata;
 import eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollection;
 import eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollectionList;
@@ -219,14 +218,4 @@
 		};
 		return Response.ok(writer).build();
-	}
-
-	@GET
-	@Path("/clarin-metadata/{id}")
-	@Produces({ MediaType.TEXT_XML, MediaType.APPLICATION_XML })
-	public Response getClarinMetadata(@PathParam("id") long id)
-			throws VirtualCollectionRegistryException {
-		System.err.println("Metadata!");
-		ResourceMetadata md = registry.retrieveMetadataResource(id);
-		return Response.ok(md).build();
 	}
 
Index: /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/resources/META-INF/VirtualCollection.xsd
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/resources/META-INF/VirtualCollection.xsd	(revision 225)
+++ /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/resources/META-INF/VirtualCollection.xsd	(revision 226)
@@ -2,100 +2,87 @@
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
 
-    <xs:element name="VirtualCollection" type="VirtualCollectionType"/>
+	<xs:element name="VirtualCollection" type="VirtualCollectionType" />
 
-    <xs:element name="VirtualCollections" type="VirtualCollectionsType"/>
+	<xs:element name="VirtualCollections" type="VirtualCollectionsType" />
 
-    <xs:complexType name="VirtualCollectionsType">
-        <xs:sequence maxOccurs="unbounded">
-            <xs:element ref="VirtualCollection"/>
-        </xs:sequence>
-        <xs:attribute name="totalCount" type="xs:integer"/>
-        <xs:attribute name="offset" type="xs:integer"/>
-        <xs:attribute name="result">
-            <xs:simpleType>
-                <xs:restriction base="xs:string">
-                    <xs:enumeration value="full"></xs:enumeration>
-                    <xs:enumeration value="partial"></xs:enumeration>
-                </xs:restriction>
-            </xs:simpleType>
-        </xs:attribute>
-    </xs:complexType>
+	<xs:complexType name="VirtualCollectionsType">
+		<xs:sequence maxOccurs="unbounded">
+			<xs:element ref="VirtualCollection" />
+		</xs:sequence>
+		<xs:attribute name="totalCount" type="xs:integer" />
+		<xs:attribute name="offset" type="xs:integer" />
+		<xs:attribute name="result">
+			<xs:simpleType>
+				<xs:restriction base="xs:string">
+					<xs:enumeration value="full" />
+					<xs:enumeration value="partial" />
+				</xs:restriction>
+			</xs:simpleType>
+		</xs:attribute>
+	</xs:complexType>
 
-    <xs:complexType name="VirtualCollectionType">
-        <xs:sequence>
-            <xs:element name="Name" type="xs:string"/>
-            <xs:element minOccurs="0" name="Description" type="xs:string"/>
-            <xs:element minOccurs="0" name="CreationDate" type="xs:date"/>
-            <xs:element minOccurs="0" name="Visibility" type="VisibilityType"/>
-            <xs:element name="Type" type="TypeType"/>
-            <xs:element minOccurs="0" name="Origin" type="xs:string"/>
-            <xs:element minOccurs="0" name="Creator" type="CreatorType"/>
-            <xs:element name="Resources" type="ResourcesType"/>
-        </xs:sequence>
-        <xs:attribute name="id" type="xs:long"/>
-        <xs:attribute name="persistentId" type="xs:string"/>
-    </xs:complexType>
+	<xs:complexType name="VirtualCollectionType">
+		<xs:sequence>
+			<xs:element name="Name" type="xs:string" />
+			<xs:element minOccurs="0" name="Description" type="xs:string" />
+			<xs:element minOccurs="0" name="CreationDate" type="xs:date" />
+			<xs:element minOccurs="0" name="Visibility" type="VisibilityType" />
+			<xs:element name="Type" type="TypeType" />
+			<xs:element minOccurs="0" name="Origin" type="xs:string" />
+			<xs:element minOccurs="0" name="Creator" type="CreatorType" />
+			<xs:element name="Resources" type="ResourcesType" />
+		</xs:sequence>
+		<xs:attribute name="id" type="xs:long" use="optional" />
+		<xs:attribute name="persistentId" type="xs:string" use="optional" />
+	</xs:complexType>
 
 
-    <xs:complexType name="ResourcesType">
-        <xs:sequence maxOccurs="unbounded">
-            <xs:choice>
-                <xs:element name="ResourceProxy" type="ResourceProxyType"/>
-                <xs:element name="ResourceMetadata" type="ResourceMetadataType"/>
-            </xs:choice>
-        </xs:sequence>
-    </xs:complexType>
+	<xs:complexType name="ResourcesType">
+		<xs:sequence maxOccurs="unbounded">
+			<xs:element name="Resource" type="ResourceType" />
+		</xs:sequence>
+	</xs:complexType>
 
-    <xs:complexType name="ResourceProxyType">
-        <xs:sequence>
-            <xs:element name="ResourceType" type="ResourceTypeType"/>
-            <xs:element name="ResourceRef" type="ResourceRefType"/>
-        </xs:sequence>
-        <xs:attribute name="id" type="xs:ID"/>
-    </xs:complexType>
+	<xs:complexType name="ResourceType">
+		<xs:sequence>
+			<xs:element name="ResourceType" type="ResourceTypeType" />
+			<xs:element name="ResourceRef" type="ResourceRefType" />
+		</xs:sequence>
+		<xs:attribute name="id" type="xs:ID" use="required" />
+	</xs:complexType>
 
-    <xs:complexType name="ResourceMetadataType">
-        <xs:sequence>
-            <xs:element name="Name" type="xs:string"/>
-            <xs:element name="Description" type="xs:string" minOccurs="0"/>
-            <xs:element name="Creator" type="CreatorType" minOccurs="0"/>
-            <xs:element name="ResourceRef" type="ResourceRefType"/>
-        </xs:sequence>
-        <xs:attribute name="id" type="xs:ID"/>
-    </xs:complexType>
+	<xs:complexType name="CreatorType">
+		<xs:sequence>
+			<xs:element name="Name" type="xs:string" />
+			<xs:element minOccurs="0" name="Email" type="xs:string" />
+			<xs:element minOccurs="0" name="Organisation" type="xs:string" />
+		</xs:sequence>
+		<xs:attribute name="ref" type="xs:IDREF" />
+	</xs:complexType>
 
-    <xs:complexType name="CreatorType">
-        <xs:sequence>
-            <xs:element name="Name" type="xs:string"/>
-            <xs:element minOccurs="0" name="Email" type="xs:string"/>
-            <xs:element minOccurs="0" name="Organisation" type="xs:string"/>
-        </xs:sequence>
-        <xs:attribute name="ref" type="xs:IDREF"/>
-    </xs:complexType>
+	<xs:simpleType name="ResourceTypeType">
+		<xs:restriction base="xs:string">
+			<xs:enumeration value="Metadata" />
+			<xs:enumeration value="Resource" />
+		</xs:restriction>
+	</xs:simpleType>
 
-    <xs:simpleType name="ResourceTypeType">
-        <xs:restriction base="xs:string">
-            <xs:enumeration value="Metadata"/>
-            <xs:enumeration value="Resource"/>
-        </xs:restriction>
-    </xs:simpleType>
+	<xs:simpleType name="ResourceRefType">
+		<xs:restriction base="xs:anyURI" />
+	</xs:simpleType>
 
-    <xs:simpleType name="ResourceRefType">
-        <xs:restriction base="xs:anyURI"/>
-    </xs:simpleType>
+	<xs:simpleType name="VisibilityType">
+		<xs:restriction base="xs:string">
+			<xs:enumeration value="advertised" />
+			<xs:enumeration value="non-advertised" />
+		</xs:restriction>
+	</xs:simpleType>
 
-    <xs:simpleType name="VisibilityType">
-        <xs:restriction base="xs:string">
-            <xs:enumeration value="advertised"/>
-            <xs:enumeration value="non-advertised"/>
-        </xs:restriction>
-    </xs:simpleType>
-
-    <xs:simpleType name="TypeType">
-        <xs:restriction base="xs:string">
-            <xs:enumeration value="extensional"/>
-            <xs:enumeration value="intensional"/>
-        </xs:restriction>
-    </xs:simpleType>
+	<xs:simpleType name="TypeType">
+		<xs:restriction base="xs:string">
+			<xs:enumeration value="extensional" />
+			<xs:enumeration value="intensional" />
+		</xs:restriction>
+	</xs:simpleType>
 
 </xs:schema>
Index: /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/resources/META-INF/persistence.xml
===================================================================
--- /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/resources/META-INF/persistence.xml	(revision 225)
+++ /VirtualCollectionRegistry/trunk/VirtualCollectionRegistry/src/main/resources/META-INF/persistence.xml	(revision 226)
@@ -1,25 +1,23 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <persistence xmlns="http://java.sun.com/xml/ns/persistence"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
-  version="2.0">
-  <persistence-unit name="VirtualCollectionStore"
-    transaction-type="RESOURCE_LOCAL">
-    <provider>org.hibernate.ejb.HibernatePersistence</provider>
-    <jta-data-source>java:comp/env/jdbc/VirtualCollectionStore</jta-data-source>
-    <class>eu.clarin.cmdi.virtualcollectionregistry.model.User</class>
-    <class>eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollection</class>
-    <class>eu.clarin.cmdi.virtualcollectionregistry.model.Creator</class>
-    <class>eu.clarin.cmdi.virtualcollectionregistry.model.Resource</class>
-    <class>eu.clarin.cmdi.virtualcollectionregistry.model.ResourceProxy</class>
-    <class>eu.clarin.cmdi.virtualcollectionregistry.model.ResourceMetadata</class>
-    <class>eu.clarin.cmdi.virtualcollectionregistry.model.Handle</class>
-    <properties>
-      <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
-      <property name="hibernate.max_fetch_depth" value="3" />
-      <property name="hibernate.hbm2ddl.auto" value="update" />
-      <property name="hibernate.show_sql" value="false" />
-      <property name="hibernate.format_sql" value="false"/>
-    </properties>
-  </persistence-unit>
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
+	version="2.0">
+	<persistence-unit name="VirtualCollectionStore"
+		transaction-type="RESOURCE_LOCAL">
+		<provider>org.hibernate.ejb.HibernatePersistence</provider>
+		<jta-data-source>java:comp/env/jdbc/VirtualCollectionStore</jta-data-source>
+		<class>eu.clarin.cmdi.virtualcollectionregistry.model.User</class>
+		<class>eu.clarin.cmdi.virtualcollectionregistry.model.VirtualCollection</class>
+		<class>eu.clarin.cmdi.virtualcollectionregistry.model.Creator</class>
+		<class>eu.clarin.cmdi.virtualcollectionregistry.model.Resource</class>
+		<class>eu.clarin.cmdi.virtualcollectionregistry.model.Handle</class>
+		<properties>
+			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
+			<property name="hibernate.max_fetch_depth" value="3" />
+			<property name="hibernate.hbm2ddl.auto" value="update" />
+			<property name="hibernate.show_sql" value="false" />
+			<property name="hibernate.format_sql" value="false" />
+		</properties>
+	</persistence-unit>
 </persistence>
