<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>chemistry-commits@incubator.apache.org Archives</title>
<link rel="self" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/?format=atom"/>
<link href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/"/>
<id>http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/</id>
<updated>2009-12-09T10:27:32Z</updated>
<entry>
<title>svn commit: r888506 - in /incubator/chemistry/trunk/chemistry: chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/ chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/ chemistry-commons/src/test/java/org/apache/chem...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200912.mbox/%3c20091208183555.A285223888DC@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091208183555-A285223888DC@eris-apache-org%3e</id>
<updated>2009-12-08T18:35:55Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Tue Dec  8 18:35:54 2009
New Revision: 888506

URL: http://svn.apache.org/viewvc?rev=888506&amp;view=rev
Log:
CMIS-67: don't crash on AtomPub entries with no atom:content or cmisra:content

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleContentStream.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java?rev=888506&amp;r1=888505&amp;r2=888506&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
Tue Dec  8 18:35:54 2009
@@ -353,8 +353,9 @@
             switch (baseType) {
             case DOCUMENT:
                 String filename = (String) posted.properties.get(Property.CONTENT_STREAM_FILE_NAME);
-                ContentStream contentStream = new SimpleContentStream(
-                        posted.stream, posted.mimeType, filename);
+                ContentStream contentStream = posted.stream == null ? null
+                        : new SimpleContentStream(posted.stream,
+                                posted.mimeType, filename);
                 VersioningState versioningState = null; // TODO
                 objectId = spi.createDocument(posted.properties, folderId,
                         contentStream, versioningState);
@@ -422,8 +423,9 @@
                 if (filename == null) {
                     filename = (String) object.getValue(Property.CONTENT_STREAM_FILE_NAME);
                 }
-                ContentStream contentStream = new SimpleContentStream(
-                        put.stream, put.mimeType, filename);
+                ContentStream contentStream = put.stream == null ? null
+                        : new SimpleContentStream(put.stream, put.mimeType,
+                                filename);
                 spi.setContentStream(object, true, contentStream);
             }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleContentStream.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleContentStream.java?rev=888506&amp;r1=888505&amp;r2=888506&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleContentStream.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleContentStream.java
Tue Dec  8 18:35:54 2009
@@ -47,8 +47,8 @@
             String filename) throws IOException {
         this.mimeType = mimeType;
         this.filename = filename;
-        bytes = getBytes(stream);
-        length = bytes.length;
+        bytes = stream == null ? null : getBytes(stream);
+        length = bytes == null ? 0 : bytes.length;
     }
 
     protected static byte[] getBytes(InputStream stream) throws IOException {
@@ -74,7 +74,7 @@
     }
 
     public InputStream getStream() {
-        return new ByteArrayInputStream(bytes);
+        return bytes == null ? null : new ByteArrayInputStream(bytes);
     }
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java?rev=888506&amp;r1=888505&amp;r2=888506&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java
Tue Dec  8 18:35:54 2009
@@ -16,6 +16,7 @@
  */
 package org.apache.chemistry.impl.simple;
 
+import java.io.InputStream;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
@@ -201,6 +202,10 @@
 
         byte[] bytes = SimpleContentStream.getBytes(cs.getStream());
         assertEquals(string, new String(bytes, "UTF-8"));
+
+        InputStream stream = null;
+        cs = new SimpleContentStream(stream, null, "empty.txt");
+        assertNull(cs.getStream());
     }
 
     public void testRemoveDocument() throws Exception {




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r888503 - in /incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src: main/java/org/apache/chemistry/atompub/server/ test/java/org/apache/chemistry/atompub/server/</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200912.mbox/%3c20091208182721.25FC5238889D@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091208182721-25FC5238889D@eris-apache-org%3e</id>
<updated>2009-12-08T18:27:20Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Tue Dec  8 18:27:20 2009
New Revision: 888503

URL: http://svn.apache.org/viewvc?rev=888503&amp;view=rev
Log:
CMIS-66: make AtomPub object fetching take parameters into account

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java?rev=888503&amp;r1=888502&amp;r2=888503&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
Tue Dec  8 18:27:20 2009
@@ -41,6 +41,7 @@
 import org.apache.abdera.protocol.server.ProviderHelper;
 import org.apache.abdera.protocol.server.RequestContext;
 import org.apache.abdera.protocol.server.ResponseContext;
+import org.apache.abdera.protocol.server.Target;
 import org.apache.abdera.protocol.server.context.AbstractResponseContext;
 import org.apache.abdera.protocol.server.context.BaseResponseContext;
 import org.apache.abdera.protocol.server.context.EmptyResponseContext;
@@ -531,16 +532,23 @@
             throws ResponseContextException {
         SPI spi = repository.getSPI();
         try {
+            Target target = request.getTarget();
+            String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
+            boolean includeAllowableActions = getParameter(request,
+                    AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS, false);
+            boolean includeRelationships = getParameter(request,
+                    AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS, false);
             if ("path".equals(getType())) {
                 String path = resourceName;
                 if (!path.startsWith("/")) {
                     path = "/" + path;
                 }
-                return spi.getObjectByPath(path, null, false, false);
+                return spi.getObjectByPath(path, filter,
+                        includeAllowableActions, includeRelationships);
             } else { // object
                 String id = resourceName;
-                return spi.getProperties(spi.newObjectId(id), null, false,
-                        false);
+                return spi.getProperties(spi.newObjectId(id), filter,
+                        includeAllowableActions, includeRelationships);
             }
         } finally {
             spi.close();

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java?rev=888503&amp;r1=888502&amp;r2=888503&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
Tue Dec  8 18:27:20 2009
@@ -65,8 +65,8 @@
         // entry
         targetBuilder.setTemplate(TargetType.TYPE_ENTRY,
                 "{target_base}/{entrytype}/{id}");
-        targetResolver.setPattern("/object/([^/?]+)", TargetType.TYPE_ENTRY,
-                "objectid");
+        targetResolver.setPattern("/object/([^/?]+)(\\?.*)?",
+                TargetType.TYPE_ENTRY, "objectid");
         targetResolver.setPattern("/allowableactions/([^/?]+)",
                 TargetType.TYPE_ENTRY, "objectid"); // XXX entry?
         targetResolver.setPattern("/type/([^/?]+)(\\?.*)?",

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java?rev=888503&amp;r1=888502&amp;r2=888503&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java
Tue Dec  8 18:27:20 2009
@@ -188,6 +188,12 @@
         Element ob = resp.getDocument().getRoot();
         assertNotNull(ob);
 
+        resp = client.get(base + "/object/" + doc3id + '?'
+                + AtomPubCMIS.PARAM_FILTER + "=cmis:name");
+        assertEquals(200, resp.getStatus());
+        ob = resp.getDocument().getRoot();
+        assertNotNull(ob);
+
         HttpMethod method = new GetMethod(base + "/file/" + doc3id);
         int status = new HttpClient().executeMethod(method);
         assertEquals(HttpStatus.SC_OK, status);




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r888501 - /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentNoContent.atomentry.xml</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200912.mbox/%3c20091208181620.F1C8E238888F@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091208181620-F1C8E238888F@eris-apache-org%3e</id>
<updated>2009-12-08T18:16:20Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Tue Dec  8 18:16:20 2009
New Revision: 888501

URL: http://svn.apache.org/viewvc?rev=888501&amp;view=rev
Log:
CMIS-65: make AtomPub entry valid

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentNoContent.atomentry.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentNoContent.atomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentNoContent.atomentry.xml?rev=888501&amp;r1=888500&amp;r2=888501&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentNoContent.atomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentNoContent.atomentry.xml
Tue Dec  8 18:16:20 2009
@@ -1,6 +1,8 @@
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
 &lt;entry xmlns="http://www.w3.org/2005/Atom" xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"&gt;
+  &lt;id&gt;urn:uuid:00000000-0000-0000-0000-000000000000&lt;/id&gt;
   &lt;title&gt;${NAME}&lt;/title&gt;
+  &lt;link rel="alternate" href=""/&gt;
   &lt;summary&gt;${NAME} (summary)&lt;/summary&gt;
   &lt;cmisra:object&gt;
     &lt;cmis:properties&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r888500 - in /incubator/chemistry/trunk/chemistry: chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/ chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200912.mbox/%3c20091208181320.830EE23888DD@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091208181320-830EE23888DD@eris-apache-org%3e</id>
<updated>2009-12-08T18:13:20Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Tue Dec  8 18:13:19 2009
New Revision: 888500

URL: http://svn.apache.org/viewvc?rev=888500&amp;view=rev
Log:
CMIS-64: generate proper AtomPub paging URI

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/FolderChildrenTest.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java?rev=888500&amp;r1=888499&amp;r2=888500&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
Tue Dec  8 18:13:19 2009
@@ -108,7 +108,7 @@
                     0);
             skipCount += entries.size();
             // compute new URI
-            String uri = request.getUri().toString();
+            String uri = request.getResolvedUri().toString();
             Pattern pat = Pattern.compile("(.*[?&amp;]"
                     + AtomPubCMIS.PARAM_SKIP_COUNT + "=)(-?[0-9]+)(.*)");
             Matcher m = pat.matcher(uri);

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/FolderChildrenTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/FolderChildrenTest.java?rev=888500&amp;r1=888499&amp;r2=888500&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/FolderChildrenTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/FolderChildrenTest.java
Tue Dec  8 18:13:19 2009
@@ -41,7 +41,7 @@
  * CMIS Folder Children Tests
  */
 public class FolderChildrenTest extends TCKTest {
-    
+
     public void testGetChildren() throws Exception {
         EntryTree folder = fixture.createTestTree("children", 1, 3, null, null);
 
@@ -72,7 +72,9 @@
         int pageCount = 0;
         while (nextLink != null) {
             pageCount++;
-            Feed children = client.getFeed(nextLink.getHref(), args);
+            IRI nextLinkHref = nextLink.getHref();
+            assertNotNull(nextLinkHref.getHost());
+            Feed children = client.getFeed(nextLinkHref, args);
             Assert.assertNotNull(children);
             Assert.assertEquals(pageCount &lt; 4 ? 4 : 3, children.getEntries().size());
 
@@ -130,7 +132,7 @@
         Assert.assertNotNull(objectTypePropDef);
         String objectTypeIdQueryName = objectTypePropDef.getQueryName();
         Assert.assertNotNull(objectTypeIdQueryName);
-        
+
         // get children with object_id only
         Link childrenLink = client.getChildrenLink(folder.entry);
         Map&lt;String, String&gt; args = new HashMap&lt;String, String&gt;();




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r886201 - in /incubator/chemistry/trunk/chemistry: chemistry-api/src/main/java/org/apache/chemistry/ chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/ chemistry-atompub-client/src/main/java/org/apache/chemistry/ato...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200912.mbox/%3c20091202164427.F32042388962@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091202164427-F32042388962@eris-apache-org%3e</id>
<updated>2009-12-02T16:44:21Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Wed Dec  2 16:44:15 2009
New Revision: 886201

URL: http://svn.apache.org/viewvc?rev=886201&amp;view=rev
Log:
Implemented setContentStream/deleteContentStream for AtomPub client and server

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentStream.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPDocument.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISParentsCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentStream.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentStream.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentStream.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentStream.java
Wed Dec  2 16:44:15 2009
@@ -41,6 +41,9 @@
 
     /**
      * The actual byte stream for this content stream.
+     * &lt;p&gt;
+     * Note that some implementations may allow the stream to be fetched and
+     * read only once.
      *
      * @throws IOException
      */

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
Wed Dec  2 16:44:15 2009
@@ -19,6 +19,7 @@
 package org.apache.chemistry.atompub.client;
 
 import java.io.IOException;
+import java.io.InputStream;
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -60,6 +61,7 @@
 import org.apache.chemistry.atompub.client.connector.Response;
 import org.apache.chemistry.atompub.client.stax.ReadContext;
 import org.apache.chemistry.atompub.client.stax.XmlProperty;
+import org.apache.chemistry.impl.simple.SimpleContentStream;
 import org.apache.chemistry.impl.simple.SimpleListPage;
 import org.apache.chemistry.impl.simple.SimpleObjectId;
 
@@ -296,38 +298,16 @@
      * ----- Object Services -----
      */
 
-    /*
-     * TODO hardcoded Chemistry URL pattern here...
-     */
+    // TODO add hints about what we'd like to fetch from the entry (stream,
+    // props, etc.)
     protected APPObjectEntry getObjectEntry(ObjectId objectId) {
         if (objectId instanceof APPObjectEntry) {
-            return ((APPObjectEntry) objectId);
+            return (APPObjectEntry) objectId;
         }
-        String href;
         URITemplate uriTemplate = repository.getURITemplate(AtomPubCMIS.URITMPL_OBJECT_BY_ID);
-        if (uriTemplate != null) {
-            // use entry-by-id URI template
-            href = uriTemplate.template;
-            // TODO proper URI template syntax
-            href = href.replace("{id}", objectId.getId());
-        } else {
-            // TODO do a search (maybe 4 searches as base type unknown)
-
-            // XXX hardcoded Chemistry URL pattern
-            href = repository.getCollectionHref(AtomPubCMIS.COL_ROOT);
-            if (href.matches(".*/children/[0-9a-f-]{36}")) {
-                href = href.substring(0, href.length() - "/children/".length()
-                        - 36);
-            } else {
-                if (href.matches(".*/children$")) {
-                    href = href.substring(0, href.length()
-                            - "/children".length());
-                } else {
-                    throw new AssertionError(href);
-                }
-            }
-            href += "/object/" + objectId.getId();
-        }
+        String href = uriTemplate.template;
+        // TODO proper URI template syntax
+        href = href.replace("{id}", objectId.getId());
         Response resp = connector.get(new Request(href));
         if (!resp.isOk()) {
             throw new ContentManagerException(
@@ -443,26 +423,92 @@
     }
 
     public boolean hasContentStream(ObjectId document) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        APPObjectEntry current = getObjectEntry(document);
+        ContentStream cs = current.getContentStream();
+        if (cs == null) {
+            return false;
+        }
+        if (cs != APPObjectEntry.REMOTE_CONTENT_STREAM) {
+            return true;
+        }
+        String href = current.getContentHref();
+        return href != null;
     }
 
     public ContentStream getContentStream(ObjectId object,
             String contentStreamId) throws IOException {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        APPObjectEntry current = getObjectEntry(object);
+        ContentStream cs = current.getContentStream();
+        if (cs != APPObjectEntry.REMOTE_CONTENT_STREAM) {
+            return cs;
+        }
+
+        // must fetch the content stream
+        String href = current.getContentHref();
+        if (href == null) {
+            throw new RuntimeException("Object is missing content src");
+        }
+        Request req = new Request(href);
+        Response resp = connector.get(req);
+        if (!resp.isOk()) {
+            // TODO exceptions
+            throw new ContentManagerException(
+                    "Remote server returned error code: "
+                            + resp.getStatusCode());
+        }
+        // get MIME type and filename from entry
+        InputStream stream = resp.getStream();
+        // String mimeType = resp.getHeader("Content-Type");
+        String mimeType = (String) current.getValue(Property.CONTENT_STREAM_MIME_TYPE);
+        String filename = (String) current.getValue(Property.CONTENT_STREAM_FILE_NAME);
+        cs = new SimpleContentStream(stream, mimeType, filename);
+        // current.localContentStream = cs; // problem reusing the stream
+        return cs;
     }
 
     public ObjectId setContentStream(ObjectId document, boolean overwrite,
-            ContentStream contentStream) {
-        // LINK_EDIT_MEDIA
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+            ContentStream cs) throws IOException {
+        APPObjectEntry current = getObjectEntry(document);
+        String href = current.getLink(AtomPub.LINK_EDIT_MEDIA);
+        if (href == null) {
+            throw new RuntimeException("Document is missing link "
+                    + AtomPub.LINK_EDIT_MEDIA);
+        }
+        Request req = new Request(href);
+        String filename = cs.getFileName();
+        if (filename != null) {
+            // Use Slug: header for filename
+            req.setHeader(AtomPub.HEADER_SLUG, filename);
+        }
+        Response resp = connector.put(req, cs.getStream(), cs.getLength(),
+                cs.getMimeType());
+        if (!resp.isOk()) {
+            // TODO exceptions
+            throw new ContentManagerException(
+                    "Remote server returned error code: "
+                            + resp.getStatusCode());
+        }
+        // TODO AtomPub cannot return a new id... (autoversioning)
+        return new SimpleObjectId(document.getId());
     }
 
     public ObjectId deleteContentStream(ObjectId document) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        APPObjectEntry current = getObjectEntry(document);
+        String href = current.getLink(AtomPub.LINK_EDIT_MEDIA);
+        if (href == null) {
+            throw new RuntimeException("Document is missing link "
+                    + AtomPub.LINK_EDIT_MEDIA);
+        }
+        Response resp = connector.delete(new Request(href));
+        if (!resp.isOk()) {
+            // TODO exceptions
+            throw new ContentManagerException(
+                    "Remote server returned error code: "
+                            + resp.getStatusCode());
+        }
+
+        // TODO AtomPub cannot return a new id... (autoversioning)
+        return new SimpleObjectId(document.getId());
     }
 
     public ObjectId updateProperties(ObjectId object, String changeToken,
@@ -478,6 +524,10 @@
         update._setValue(Property.NAME, current.getValue(Property.NAME));
 
         String href = current.getLink(AtomPub.LINK_EDIT);
+        if (href == null) {
+            throw new RuntimeException("Object is missing link "
+                    + AtomPub.LINK_EDIT);
+        }
         Request req = new Request(href);
         req.setHeader("Content-Type", AtomPub.MEDIA_TYPE_ATOM_ENTRY);
         Response resp = connector.putObject(req, update);

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPDocument.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPDocument.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPDocument.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPDocument.java
Wed Dec  2 16:44:15 2009
@@ -28,7 +28,6 @@
 import org.apache.chemistry.Document;
 import org.apache.chemistry.Property;
 import org.apache.chemistry.Type;
-import org.apache.chemistry.atompub.AtomPub;
 import org.apache.chemistry.atompub.client.connector.Connector;
 import org.apache.chemistry.atompub.client.connector.Request;
 import org.apache.chemistry.atompub.client.connector.Response;
@@ -58,7 +57,7 @@
         if (contentStream != APPObjectEntry.REMOTE_CONTENT_STREAM) {
             return contentStream;
         }
-        String url = entry.getLink(AtomPub.LINK_EDIT_MEDIA);
+        String url = entry.getContentHref();
         return url == null ? null : new APPContentStream(url);
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java
Wed Dec  2 16:44:15 2009
@@ -61,6 +61,10 @@
 
     protected Map&lt;QName, Boolean&gt; allowableActions;
 
+    protected String remoteContentHref;
+
+    protected String remoteContentType;
+
     protected final List&lt;Link&gt; links;
 
     public static class Link {
@@ -112,6 +116,15 @@
         links = new ArrayList&lt;Link&gt;();
     }
 
+    public void addContentHref(String href, String type) {
+        remoteContentHref = href;
+        remoteContentType = type;
+    }
+
+    public String getContentHref() {
+        return remoteContentHref;
+    }
+
     public void addLink(String rel, String href, String type) {
         links.add(new Link(rel, href, type));
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
Wed Dec  2 16:44:15 2009
@@ -69,7 +69,12 @@
     @Override
     protected void readAtomElement(ReadContext ctx, StaxReader reader,
             APPObjectEntry object) throws XMLStreamException {
-        if (AtomPub.ATOM_LINK.equals(reader.getName())) {
+        QName name = reader.getName();
+        if (AtomPub.ATOM_CONTENT.equals(name)) {
+            String href = reader.getAttributeValue(AtomPub.ATOM_NS, "src");
+            String type = reader.getAttributeValue(AtomPub.ATOM_NS, "type");
+            object.addContentHref(href, type);
+        } else if (AtomPub.ATOM_LINK.equals(name)) {
             String rel = reader.getAttributeValue(AtomPub.ATOM_NS, "rel");
             String href = reader.getAttributeValue(AtomPub.ATOM_NS, "href");
             String type = reader.getAttributeValue(AtomPub.ATOM_NS, "type");

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java
Wed Dec  2 16:44:15 2009
@@ -16,6 +16,7 @@
  */
 package org.apache.chemistry.atompub.client.connector;
 
+import java.io.InputStream;
 import java.util.List;
 
 import org.apache.chemistry.ObjectEntry;
@@ -40,6 +41,9 @@
     &lt;T&gt; Response put(Request operation, XmlObjectWriter&lt;T&gt; writer, T object)
             throws ContentManagerException;
 
+    Response put(Request operation, InputStream in, long length, String type)
+            throws ContentManagerException;
+
     Response get(Request operation) throws ContentManagerException;
 
     Response head(Request operation) throws ContentManagerException;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java
Wed Dec  2 16:44:15 2009
@@ -18,6 +18,7 @@
 package org.apache.chemistry.atompub.client.connector;
 
 import java.io.IOException;
+import java.io.InputStream;
 import java.io.OutputStream;
 import java.util.List;
 
@@ -35,6 +36,7 @@
 import org.apache.commons.httpclient.methods.DeleteMethod;
 import org.apache.commons.httpclient.methods.GetMethod;
 import org.apache.commons.httpclient.methods.HeadMethod;
+import org.apache.commons.httpclient.methods.InputStreamRequestEntity;
 import org.apache.commons.httpclient.methods.PostMethod;
 import org.apache.commons.httpclient.methods.PutMethod;
 import org.apache.commons.httpclient.methods.RequestEntity;
@@ -149,6 +151,20 @@
         }
     }
 
+    public Response put(Request request, InputStream in, long length,
+            String type) throws ContentManagerException {
+        try {
+            PutMethod method = new PutMethod(request.getUrl());
+            setMethodParams(method, request);
+            setMethodHeaders(method, request);
+            method.setRequestEntity(new InputStreamRequestEntity(in, length, type));
+            client.executeMethod(method);
+            return new HttpClientResponse(method, io);
+        } catch (Exception e) {
+            throw new ContentManagerException("PUT request failed", e);
+        }
+    }
+
     public Type getType(ReadContext ctx, String href) {
         Request req = new Request(href);
         Response resp = get(req);

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
Wed Dec  2 16:44:15 2009
@@ -60,22 +60,27 @@
     @Override
     public Iterable&lt;ObjectEntry&gt; getEntries(RequestContext request)
             throws ResponseContextException {
-        SPI spi = repository.getSPI(); // TODO XXX connection leak
-        Target target = request.getTarget();
-        String folderIdString = target.getParameter(AtomPubCMIS.PARAM_FOLDER_ID);
-        ObjectId folderId = folderIdString == null ? null
-                : spi.newObjectId(folderIdString);
-        String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
-        int maxItems = getParameter(request, AtomPubCMIS.PARAM_MAX_ITEMS, 0);
-        int skipCount = getParameter(request, AtomPubCMIS.PARAM_SKIP_COUNT, 0);
-        boolean includeAllowableActions = getParameter(request,
-                AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS, false);
-        boolean includeRelationships = getParameter(request,
-                AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS, false);
-        ListPage&lt;ObjectEntry&gt; objectEntries = spi.getCheckedOutDocuments(
-                folderId, filter, includeAllowableActions,
-                includeRelationships, new Paging(maxItems, skipCount));
-        return objectEntries;
+        SPI spi = repository.getSPI();
+        try {
+            Target target = request.getTarget();
+            String folderIdString = target.getParameter(AtomPubCMIS.PARAM_FOLDER_ID);
+            ObjectId folderId = folderIdString == null ? null
+                    : spi.newObjectId(folderIdString);
+            String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
+            int maxItems = getParameter(request, AtomPubCMIS.PARAM_MAX_ITEMS, 0);
+            int skipCount = getParameter(request, AtomPubCMIS.PARAM_SKIP_COUNT,
+                    0);
+            boolean includeAllowableActions = getParameter(request,
+                    AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS, false);
+            boolean includeRelationships = getParameter(request,
+                    AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS, false);
+            ListPage&lt;ObjectEntry&gt; objectEntries = spi.getCheckedOutDocuments(
+                    folderId, filter, includeAllowableActions,
+                    includeRelationships, new Paging(maxItems, skipCount));
+            return objectEntries;
+        } finally {
+            spi.close();
+        }
     }
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
Wed Dec  2 16:44:15 2009
@@ -17,11 +17,15 @@
  */
 package org.apache.chemistry.atompub.server;
 
+import java.io.IOException;
+import java.io.InputStream;
 import java.util.Date;
 import java.util.List;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+import javax.activation.MimeType;
+
 import org.apache.abdera.i18n.iri.IRI;
 import org.apache.abdera.model.Entry;
 import org.apache.abdera.model.Feed;
@@ -31,6 +35,8 @@
 import org.apache.abdera.protocol.server.Target;
 import org.apache.abdera.protocol.server.context.ResponseContextException;
 import org.apache.axiom.om.OMElement;
+import org.apache.chemistry.ContentAlreadyExistsException;
+import org.apache.chemistry.ContentStream;
 import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
@@ -38,9 +44,12 @@
 import org.apache.chemistry.Property;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.SPI;
+import org.apache.chemistry.UpdateConflictException;
 import org.apache.chemistry.atompub.AtomPub;
 import org.apache.chemistry.atompub.AtomPubCMIS;
+import org.apache.chemistry.impl.simple.SimpleContentStream;
 import org.apache.chemistry.impl.simple.SimpleListPage;
+import org.apache.chemistry.impl.simple.SimpleObjectId;
 
 /**
  * CMIS Collection for the children of an object.
@@ -75,9 +84,13 @@
                 AtomPub.MEDIA_TYPE_ATOM_FEED, null, null, -1);
 
         // link to parent children feed, needs parent id
+        ObjectEntry entry;
         SPI spi = repository.getSPI();
-        ObjectEntry entry = spi.getProperties(spi.newObjectId(id), null, false,
-                false);
+        try {
+            entry = spi.getProperties(spi.newObjectId(id), null, false, false);
+        } finally {
+            spi.close();
+        }
         if (entry == null) {
             throw new ResponseContextException("Not found: " + id, 404);
         }
@@ -86,7 +99,6 @@
             feed.addLink(getChildrenLink(pid, request), AtomPub.LINK_UP,
                     AtomPub.MEDIA_TYPE_ATOM_FEED, null, null, -1);
         }
-        spi.close();
 
         // AtomPub paging
         // next
@@ -144,37 +156,77 @@
     @Override
     public ListPage&lt;ObjectEntry&gt; getEntries(RequestContext request)
             throws ResponseContextException {
-        SPI spi = repository.getSPI(); // TODO XXX connection leak
-        ObjectId objectId = spi.newObjectId(id);
-        Target target = request.getTarget();
-        String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
-        boolean includeAllowableActions = getParameter(request,
-                AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS, false);
-        boolean includeRelationships = getParameter(request,
-                AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS, false);
-        // TODO proper renditionFilter use
-        boolean includeRenditions = target.getParameter(AtomPubCMIS.PARAM_RENDITION_FILTER)
== null ? false
-                : true;
-        String orderBy = target.getParameter(AtomPubCMIS.PARAM_ORDER_BY);
-        if ("descendants".equals(getType())) {
-            int depth = getParameter(request, AtomPubCMIS.PARAM_DEPTH, 1);
-            List&lt;ObjectEntry&gt; descendants = spi.getDescendants(objectId, depth,
-                    filter, includeAllowableActions, includeRelationships,
-                    includeRenditions, orderBy);
-            SimpleListPage&lt;ObjectEntry&gt; page = new SimpleListPage&lt;ObjectEntry&gt;(
-                    descendants);
-            page.setHasMoreItems(false);
-            page.setNumItems(page.size());
-            return page;
-        } else {
-            int maxItems = getParameter(request, AtomPubCMIS.PARAM_MAX_ITEMS, 0);
-            int skipCount = getParameter(request, AtomPubCMIS.PARAM_SKIP_COUNT,
-                    0);
-            ListPage&lt;ObjectEntry&gt; children = spi.getChildren(objectId, filter,
-                    includeAllowableActions, includeRelationships,
-                    includeRenditions, orderBy, new Paging(maxItems, skipCount));
-            return children;
+        SPI spi = repository.getSPI();
+        try {
+            ObjectId objectId = spi.newObjectId(id);
+            Target target = request.getTarget();
+            String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
+            boolean includeAllowableActions = getParameter(request,
+                    AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS, false);
+            boolean includeRelationships = getParameter(request,
+                    AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS, false);
+            // TODO proper renditionFilter use
+            boolean includeRenditions = target.getParameter(AtomPubCMIS.PARAM_RENDITION_FILTER)
== null ? false
+                    : true;
+            String orderBy = target.getParameter(AtomPubCMIS.PARAM_ORDER_BY);
+            if ("descendants".equals(getType())) {
+                int depth = getParameter(request, AtomPubCMIS.PARAM_DEPTH, 1);
+                List&lt;ObjectEntry&gt; descendants = spi.getDescendants(objectId,
+                        depth, filter, includeAllowableActions,
+                        includeRelationships, includeRenditions, orderBy);
+                SimpleListPage&lt;ObjectEntry&gt; page = new SimpleListPage&lt;ObjectEntry&gt;(
+                        descendants);
+                page.setHasMoreItems(false);
+                page.setNumItems(page.size());
+                return page;
+            } else {
+                int maxItems = getParameter(request,
+                        AtomPubCMIS.PARAM_MAX_ITEMS, 0);
+                int skipCount = getParameter(request,
+                        AtomPubCMIS.PARAM_SKIP_COUNT, 0);
+                ListPage&lt;ObjectEntry&gt; children = spi.getChildren(objectId,
+                        filter, includeAllowableActions, includeRelationships,
+                        includeRenditions, orderBy, new Paging(maxItems,
+                                skipCount));
+                return children;
+            }
+        } finally {
+            spi.close();
+        }
+    }
+
+    @Override
+    public void putMedia(ObjectEntry entry, MimeType contentType, String slug,
+            InputStream in, RequestContext request)
+            throws ResponseContextException {
+        SPI spi = repository.getSPI();
+        try {
+            ContentStream cs = new SimpleContentStream(in,
+                    contentType.toString(), slug);
+            spi.setContentStream(entry, true, cs);
+        } catch (IOException e) {
+            throw new ResponseContextException(e.toString(), 500);
+        } catch (UpdateConflictException e) {
+            throw new ResponseContextException(e.toString(), 409); // Conflict
+        } catch (ContentAlreadyExistsException e) {
+            // cannot happen, overwrite = true
+            throw new ResponseContextException(e.toString(), 409); // Conflict
+        } finally {
+            spi.close();
         }
     }
 
+    @Override
+    public void deleteMedia(String resourceName, RequestContext request)
+            throws ResponseContextException {
+        SPI spi = repository.getSPI();
+        try {
+            String id = getResourceName(request);
+            spi.deleteContentStream(new SimpleObjectId(id));
+        } catch (UpdateConflictException e) {
+            throw new ResponseContextException(e.toString(), 409); // Conflict
+        } finally {
+            spi.close();
+        }
+    }
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
Wed Dec  2 16:44:15 2009
@@ -116,6 +116,15 @@
         return rc;
     }
 
+    protected ResponseContext buildCreateMediaResponse(String mediaLink,
+            Entry entry) {
+        BaseResponseContext&lt;Entry&gt; rc = new BaseResponseContext&lt;Entry&gt;(entry);
+        rc.setLocation(mediaLink);
+        rc.setContentLocation(mediaLink);
+        rc.setStatus(201);
+        return rc;
+    }
+
     /*
      * ----- CollectionInfo -----
      */
@@ -179,6 +188,8 @@
             entry.addLink(getDescendantsLink(oid, request), AtomPub.LINK_DOWN,
                     AtomPubCMIS.MEDIA_TYPE_CMIS_TREE, null, null, -1);
         } else if (baseType == BaseType.DOCUMENT) {
+            // edit-media link always needed for setContentStream
+            entry.addLink(getMediaLink(oid, request), AtomPub.LINK_EDIT_MEDIA);
             // TODO don't add link if no parents
             entry.addLink(getParentsLink(oid, request), AtomPub.LINK_UP,
                     AtomPub.MEDIA_TYPE_ATOM_FEED, null, null, -1);
@@ -330,10 +341,10 @@
     public ResponseContext postEntry(RequestContext request) {
         // TODO parameter sourceFolderId
         // TODO parameter versioningState
+        SPI spi = repository.getSPI();
         try {
             PropertiesAndStream posted = extractCMISProperties(request, null);
 
-            SPI spi = repository.getSPI(); // TODO XXX connection leak
             ObjectId folderId = spi.newObjectId(id);
             ObjectId objectId;
             String typeId = (String) posted.properties.get(Property.TYPE_ID);
@@ -374,6 +385,8 @@
             return createErrorResponse(new ResponseContextException(500, e));
         } catch (Exception e) {
             return createErrorResponse(new ResponseContextException(500, e));
+        } finally {
+            spi.close();
         }
     }
 
@@ -387,10 +400,10 @@
 
     @Override
     public ResponseContext putEntry(RequestContext request) {
+        SPI spi = repository.getSPI();
         try {
             // existing object
             String id = getResourceName(request);
-            SPI spi = repository.getSPI(); // TODO XXX connection leak
             ObjectEntry object = spi.getProperties(spi.newObjectId(id), null,
                     false, false);
             if (object == null) {
@@ -423,7 +436,8 @@
             } else {
                 addContent(entry, object, request);
             }
-            return buildGetEntryResponse(request, entry);
+            String mediaLink = getMediaLink(object.getId(), request);
+            return buildCreateMediaResponse(mediaLink, entry);
 
         } catch (ResponseContextException e) {
             return createErrorResponse(e);
@@ -431,6 +445,8 @@
             return createErrorResponse(new ResponseContextException(500, e));
         } catch (Exception e) {
             return createErrorResponse(new ResponseContextException(500, e));
+        } finally {
+            spi.close();
         }
     }
 
@@ -467,9 +483,14 @@
     @Override
     public boolean isMediaEntry(ObjectEntry object)
             throws ResponseContextException {
-        SPI spi = repository.getSPI(); // TODO XXX connection leak
-        return getContentType(object) != null &amp;&amp; getContentSize(object) != -1
-                &amp;&amp; spi.hasContentStream(object);
+        SPI spi = repository.getSPI();
+        try {
+            return getContentType(object) != null
+                    &amp;&amp; getContentSize(object) != -1
+                    &amp;&amp; spi.hasContentStream(object);
+        } finally {
+            spi.close();
+        }
     }
 
     @Override
@@ -478,8 +499,7 @@
             throws ResponseContextException {
         String mediaLink = getMediaLink(object.getId(), request);
         entry.setContent(new IRI(mediaLink), getContentType(object));
-        entry.addLink(mediaLink, AtomPub.LINK_EDIT_MEDIA,
-                getContentType(object), null, null, getContentSize(object));
+        // LINK_EDIT_MEDIA already added (always) by addEntryDetails
         return mediaLink;
     }
 
@@ -487,12 +507,9 @@
     @Override
     public Object getContent(ObjectEntry object, RequestContext request)
             throws ResponseContextException {
-        Factory factory = request.getAbdera().getFactory();
-        Content content = factory.newContent();
-        content.setContentType(null);
-        String mediaLink = getMediaLink(object.getId(), request);
-        content.setSrc(mediaLink);
-        return content;
+        // no content (content stream is exposed as media entry)
+        // mandatory LINK_ALTERNATE already added by addEntryDetails
+        return null;
     }
 
     public long getContentSize(ObjectEntry object) {
@@ -512,16 +529,21 @@
     @Override
     public ObjectEntry getEntry(String resourceName, RequestContext request)
             throws ResponseContextException {
-        SPI spi = repository.getSPI(); // TODO XXX connection leak
-        if ("path".equals(getType())) {
-            String path = resourceName;
-            if (!path.startsWith("/")) {
-                path = "/" + path;
-            }
-            return spi.getObjectByPath(path, null, false, false);
-        } else { // object
-            String id = resourceName;
-            return spi.getProperties(spi.newObjectId(id), null, false, false);
+        SPI spi = repository.getSPI();
+        try {
+            if ("path".equals(getType())) {
+                String path = resourceName;
+                if (!path.startsWith("/")) {
+                    path = "/" + path;
+                }
+                return spi.getObjectByPath(path, null, false, false);
+            } else { // object
+                String id = resourceName;
+                return spi.getProperties(spi.newObjectId(id), null, false,
+                        false);
+            }
+        } finally {
+            spi.close();
         }
     }
 
@@ -553,12 +575,14 @@
     public InputStream getMediaStream(ObjectEntry object)
             throws ResponseContextException {
         // TODO entry was fetched for mostly nothing...
-        SPI spi = repository.getSPI(); // TODO XXX connection leak
+        SPI spi = repository.getSPI();
         try {
             ContentStream contentStream = spi.getContentStream(object, null);
             return contentStream == null ? null : contentStream.getStream();
         } catch (IOException e) {
             throw new ResponseContextException(500, e);
+        } finally {
+            spi.close();
         }
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISParentsCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISParentsCollection.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISParentsCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISParentsCollection.java
Wed Dec  2 16:44:15 2009
@@ -54,10 +54,15 @@
     @Override
     public Iterable&lt;ObjectEntry&gt; getEntries(RequestContext request)
             throws ResponseContextException {
-        SPI spi = repository.getSPI(); // TODO XXX connection leak
-        ObjectId objectId = spi.newObjectId(id);
-        Collection&lt;ObjectEntry&gt; parents = spi.getObjectParents(objectId, null);
-        return parents;
+        SPI spi = repository.getSPI();
+        try {
+            ObjectId objectId = spi.newObjectId(id);
+            Collection&lt;ObjectEntry&gt; parents = spi.getObjectParents(objectId,
+                    null);
+            return parents;
+        } finally {
+            spi.close();
+        }
     }
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java
Wed Dec  2 16:44:15 2009
@@ -92,17 +92,22 @@
     @Override
     public Iterable&lt;ObjectEntry&gt; getEntries(RequestContext request)
             throws ResponseContextException {
-        SPI spi = repository.getSPI(); // TODO XXX connection leak
-        boolean searchAllVersions = false;
-        boolean includeAllowableActions = false;
-        boolean includeRelationships = false;
-        boolean includeRenditions = false;
-        int maxItems = -1;
-        int skipCount = 0;
-        ListPage&lt;ObjectEntry&gt; results = spi.query(statement, searchAllVersions,
-                includeAllowableActions, includeRelationships,
-                includeRenditions, new Paging(maxItems, skipCount));
-        return results;
+        SPI spi = repository.getSPI();
+        try {
+            boolean searchAllVersions = false;
+            boolean includeAllowableActions = false;
+            boolean includeRelationships = false;
+            boolean includeRenditions = false;
+            int maxItems = -1;
+            int skipCount = 0;
+            ListPage&lt;ObjectEntry&gt; results = spi.query(statement,
+                    searchAllVersions, includeAllowableActions,
+                    includeRelationships, includeRenditions, new Paging(
+                            maxItems, skipCount));
+            return results;
+        } finally {
+            spi.close();
+        }
     }
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java
Wed Dec  2 16:44:15 2009
@@ -43,11 +43,19 @@
 
     public static final QName ATOM_ENTRY = new QName(ATOM_NS, "entry");
 
+    public static final QName ATOM_CONTENT = new QName(ATOM_NS, "content");
+
     public static final QName ATOM_LINK = new QName(ATOM_NS, "link");
 
     public static final QName APP_COLLECTION = new QName(APP_NS, "collection");
 
     /*
+     * ----- Headers -----
+     */
+
+    public static final String HEADER_SLUG = "Slug";
+
+    /*
      * ----- Media Types -----
      */
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
Wed Dec  2 16:44:15 2009
@@ -617,8 +617,7 @@
     }
 
     public ObjectId deleteContentStream(ObjectId document) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        return setContentStream(document, true, null);
     }
 
     public ObjectId updateProperties(ObjectId object, String changeToken,

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java?rev=886201&amp;r1=886200&amp;r2=886201&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
Wed Dec  2 16:44:15 2009
@@ -53,6 +53,7 @@
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.Type;
 import org.apache.chemistry.impl.simple.SimpleContentStream;
+import org.apache.chemistry.impl.simple.SimpleObjectId;
 import org.apache.chemistry.util.GregorianCalendar;
 import org.apache.commons.io.IOUtils;
 
@@ -324,6 +325,37 @@
         assertEquals(array.length, cs.getLength());
     }
 
+    public void testContentStreamSPI() throws Exception {
+        // set
+        ObjectEntry ob = spi.getObjectByPath("/folder 1/doc 1", null, false,
+                false);
+        SimpleObjectId id = new SimpleObjectId(ob.getId());
+        assertFalse(spi.hasContentStream(id)); // unfetched
+        assertFalse(spi.hasContentStream(ob)); // fetched
+        byte[] blobBytes = "A file...\n".getBytes("UTF-8");
+        String filename = "doc.txt";
+        ContentStream cs = new SimpleContentStream(blobBytes,
+                "text/plain;charset=UTF-8", filename);
+        spi.setContentStream(ob, true, cs);
+
+        // refetch
+        assertTrue(spi.hasContentStream(id));
+        cs = spi.getContentStream(id, null);
+        assertNotNull(cs);
+        assertEquals(filename, cs.getFileName());
+        assertEquals("text/plain;charset=UTF-8", cs.getMimeType().replace(" ",
+                ""));
+        InputStream in = cs.getStream();
+        assertNotNull(in);
+        byte[] array = IOUtils.toByteArray(in);
+        assertEquals(blobBytes.length, array.length);
+        assertEquals(blobBytes.length, cs.getLength());
+
+        // delete
+        spi.deleteContentStream(id);
+        assertFalse(spi.hasContentStream(id));
+    }
+
     public void testNewDocument() throws Exception {
         Folder root = conn.getRootFolder();
         assertNull(getDocumentChild(root));




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r886097 - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates: createdocumentBase64.cmisatomentry.xml updatedocument.cmisatomentry.xml</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200912.mbox/%3c20091202100438.EB8E323888C5@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091202100438-EB8E323888C5@eris-apache-org%3e</id>
<updated>2009-12-02T10:04:38Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Wed Dec  2 10:04:36 2009
New Revision: 886097

URL: http://svn.apache.org/viewvc?rev=886097&amp;view=rev
Log:
fix whitespace

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml?rev=886097&amp;r1=886096&amp;r2=886097&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
Wed Dec  2 10:04:36 2009
@@ -6,10 +6,10 @@
   &lt;author&gt;admin&lt;/author&gt;
   &lt;summary&gt;${NAME} (summary)&lt;/summary&gt;
   &lt;content type="text"&gt;Must be ignored - overridden by cmisra:content&lt;/content&gt;
- Â &lt;cmisra:content&gt;
- Â  Â &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;
- Â  Â &lt;cmisra:base64&gt;${CMISCONTENT}&lt;/cmisra:base64&gt;
- Â &lt;/cmisra:content&gt;
+  &lt;cmisra:content&gt;
+    &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;
+    &lt;cmisra:base64&gt;${CMISCONTENT}&lt;/cmisra:base64&gt;
+  &lt;/cmisra:content&gt;
   &lt;cmisra:object&gt;
     &lt;cmis:properties&gt;
       &lt;cmis:propertyId propertyDefinitionId="cmis:objectTypeId"&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml?rev=886097&amp;r1=886096&amp;r2=886097&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
Wed Dec  2 10:04:36 2009
@@ -4,8 +4,8 @@
   &lt;title&gt;Updated Title ${NAME}&lt;/title&gt;
   &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
   &lt;content&gt;this content must be ignored ${NAME}&lt;/content&gt;   &lt;!--  must be
overridden by cmisra:content --&gt;
- Â &lt;cmisra:content&gt;
- Â  Â &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;
- Â  Â &lt;cmisra:base64&gt;${CMISCONTENT}&lt;/cmisra:base64&gt;
- Â &lt;/cmisra:content&gt;
+  &lt;cmisra:content&gt;
+    &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;
+    &lt;cmisra:base64&gt;${CMISCONTENT}&lt;/cmisra:base64&gt;
+  &lt;/cmisra:content&gt;
 &lt;/entry&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r886095 - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates: createdocumentBase64.cmisatomentry.xml updatedocument.cmisatomentry.xml</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200912.mbox/%3c20091202095750.8BE7423889DA@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091202095750-8BE7423889DA@eris-apache-org%3e</id>
<updated>2009-12-02T09:57:49Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Wed Dec  2 09:57:48 2009
New Revision: 886095

URL: http://svn.apache.org/viewvc?rev=886095&amp;view=rev
Log:
revert r885852 in light of probably resolution for http://tools.oasis-open.org/issues/browse/CMIS-601

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml?rev=886095&amp;r1=886094&amp;r2=886095&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
Wed Dec  2 09:57:48 2009
@@ -6,7 +6,10 @@
   &lt;author&gt;admin&lt;/author&gt;
   &lt;summary&gt;${NAME} (summary)&lt;/summary&gt;
   &lt;content type="text"&gt;Must be ignored - overridden by cmisra:content&lt;/content&gt;
-  &lt;cmisra:content&gt;${CMISCONTENT}&lt;/cmisra:content&gt;
+ Â &lt;cmisra:content&gt;
+ Â  Â &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;
+ Â  Â &lt;cmisra:base64&gt;${CMISCONTENT}&lt;/cmisra:base64&gt;
+ Â &lt;/cmisra:content&gt;
   &lt;cmisra:object&gt;
     &lt;cmis:properties&gt;
       &lt;cmis:propertyId propertyDefinitionId="cmis:objectTypeId"&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml?rev=886095&amp;r1=886094&amp;r2=886095&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
Wed Dec  2 09:57:48 2009
@@ -4,5 +4,8 @@
   &lt;title&gt;Updated Title ${NAME}&lt;/title&gt;
   &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
   &lt;content&gt;this content must be ignored ${NAME}&lt;/content&gt;   &lt;!--  must be
overridden by cmisra:content --&gt;
-  &lt;cmisra:content&gt;${CMISCONTENT}&lt;/cmisra:content&gt;
+ Â &lt;cmisra:content&gt;
+ Â  Â &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;
+ Â  Â &lt;cmisra:base64&gt;${CMISCONTENT}&lt;/cmisra:base64&gt;
+ Â &lt;/cmisra:content&gt;
 &lt;/entry&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r885852 - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates: createdocumentBase64.cmisatomentry.xml updatedocument.cmisatomentry.xml</title>
<author><name>sfermigier@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200912.mbox/%3c20091201181210.7054923888DC@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091201181210-7054923888DC@eris-apache-org%3e</id>
<updated>2009-12-01T18:12:10Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: sfermigier
Date: Tue Dec  1 18:12:09 2009
New Revision: 885852

URL: http://svn.apache.org/viewvc?rev=885852&amp;view=rev
Log:
Fix misuse of cmisra:base64 and cmisra:mediatype, according to the 1.0 specs.


Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml?rev=885852&amp;r1=885851&amp;r2=885852&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
Tue Dec  1 18:12:09 2009
@@ -6,10 +6,7 @@
   &lt;author&gt;admin&lt;/author&gt;
   &lt;summary&gt;${NAME} (summary)&lt;/summary&gt;
   &lt;content type="text"&gt;Must be ignored - overridden by cmisra:content&lt;/content&gt;
-  &lt;cmisra:content&gt;
-    &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;
-    &lt;cmisra:base64&gt;${CMISCONTENT}&lt;/cmisra:base64&gt;
-  &lt;/cmisra:content&gt;
+  &lt;cmisra:content&gt;${CMISCONTENT}&lt;/cmisra:content&gt;
   &lt;cmisra:object&gt;
     &lt;cmis:properties&gt;
       &lt;cmis:propertyId propertyDefinitionId="cmis:objectTypeId"&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml?rev=885852&amp;r1=885851&amp;r2=885852&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
Tue Dec  1 18:12:09 2009
@@ -4,8 +4,5 @@
   &lt;title&gt;Updated Title ${NAME}&lt;/title&gt;
   &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
   &lt;content&gt;this content must be ignored ${NAME}&lt;/content&gt;   &lt;!--  must be
overridden by cmisra:content --&gt;
-  &lt;cmisra:content&gt;
-    &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;
-    &lt;cmisra:base64&gt;${CMISCONTENT}&lt;/cmisra:base64&gt;
-  &lt;/cmisra:content&gt;
+  &lt;cmisra:content&gt;${CMISCONTENT}&lt;/cmisra:content&gt;
 &lt;/entry&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r883013 - in /incubator/chemistry/trunk/chemistry: chemistry-api/src/main/java/org/apache/chemistry/ chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/ chemistry-atompub-server/src/test/java/org/apache/chemistry/ato...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091121230622.39C4923888C5@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091121230622-39C4923888C5@eris-apache-org%3e</id>
<updated>2009-11-21T23:06:20Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Sat Nov 21 23:06:15 2009
New Revision: 883013

URL: http://svn.apache.org/viewvc?rev=883013&amp;view=rev
Log:
CMIS-42: added exception management

Added:
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISRuntimeException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ConstraintViolationException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentAlreadyExistsException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/FilterNotValidException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/NameConstraintViolationException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ObjectNotFoundException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PermissionDeniedException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StorageException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StreamNotSupportedException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/UpdateConflictException.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/VersioningException.java   (with props)
Modified:
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISObject.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Document.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Folder.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/TypeManager.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleFolder.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java
    incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicHelper.java
    incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,42 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The base class for CMIS checked exceptions.
+ */
+public class CMISException extends Exception {
+
+    private static final long serialVersionUID = 1L;
+
+    public CMISException() {
+        super();
+    }
+
+    public CMISException(String message) {
+        super(message);
+    }
+
+    public CMISException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public CMISException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISObject.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISObject.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISObject.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISObject.java Sat Nov 21 23:06:15 2009
@@ -56,8 +56,19 @@
      *
      * @param targetFolder the target folder
      * @param sourceFolder the source folder, or {@code null}
+     *
+     * @throws IllegalArgumentException if sourceFolder is not a parent of the
+     *             object
+     * @throws ConstraintViolationException if the object's type isn't allowed
+     *             as a child object type in targetFolder
+     * @throws NameConstraintViolationException if the object name is not legal
+     *             in its new parent folder
+     * @throws UpdateConflictException if the object is no longer current
+     * @throws VersioningException if the move cannot be done to a non-latest
+     *             version
      */
-    void move(Folder targetFolder, Folder sourceFolder);
+    void move(Folder targetFolder, Folder sourceFolder)
+            throws NameConstraintViolationException, UpdateConflictException;
 
     /**
      * Deletes this object.
@@ -70,8 +81,11 @@
      * &lt;p&gt;
      * Deletion of a private working copy (checked out version) is the same as
      * to cancel checkout.
+     *
+     * @throws ConstraintViolationException if the object is a non-empty folder
+     * @throws UpdateConflictException if the object is no longer current
      */
-    void delete();
+    void delete() throws UpdateConflictException;
 
     /**
      * Unfiles this non-folder object.
@@ -99,20 +113,20 @@
      * parent (for the root folder).
      * &lt;p&gt;
      * For a non-folder, if the object is single-filed then the folder in which
-     * it is filed is returned, otherwise if the folder is unfiled then {@code
-     * null} is returned. An exception is raised if the object is multi-filed,
-     * so in doubt use {@link #getParents}.
+     * it is filed is returned, otherwise if the object is unfiled or not
+     * fileable then {@code null} is returned. An exception is raised if the
+     * object is multi-filed, so in doubt use {@link #getParents}.
      *
      * @return the parent folder, or {@code null}.
      *
+     * @throws ConstraintViolationException if the object is multi-filed
+     *
      * @see #getParents
      */
     Folder getParent();
 
     /**
      * Gets the direct parents of this object.
-     * &lt;p&gt;
-     * The object must be a non-folder, fileable object.
      *
      * @return the collection of parent folders
      *
@@ -154,6 +168,8 @@
      * The object must be controllable.
      *
      * @param policy the policy
+     *
+     * @throws ConstraintViolationException if the object is not controllable
      */
     void applyPolicy(Policy policy);
 
@@ -166,6 +182,8 @@
      * The object must be controllable.
      *
      * @param policy the policy
+     *
+     * @throws ConstraintViolationException if the object is not controllable
      */
     void removePolicy(Policy policy);
 
@@ -227,8 +245,17 @@
      *
      * @param id the property ID
      * @param value the property value, or {@code null}
+     *
+     * @throws ConstraintViolationException if the value is not legal, for
+     *             instance if a min/max/required/length constraint is violated
+     * @throws NameConstraintViolationException if the name is set and is not
+     *             legal
+     * @throws UpdateConflictException if the object is no longer current
+     * @throws VersioningException if the update cannot be applied to a
+     *             non-latest version
      */
-    void setValue(String id, Serializable value);
+    void setValue(String id, Serializable value)
+            throws NameConstraintViolationException, UpdateConflictException;
 
     /**
      * Sets several property values.
@@ -239,15 +266,27 @@
      * see {@link #save()}.
      *
      * @param values the property values
+     *
+     * @throws ConstraintViolationException if the values are not legal, for
+     *             instance if any of the value violates the
+     *             min/max/required/length constraints specified in the relevant
+     *             property definition
+     * @throws NameConstraintViolationException if the name is set and is not
+     *             legal
+     * @throws UpdateConflictException if the object is no longer current
+     * @throws VersioningException if the update cannot be applied to a
+     *             non-latest version
      */
-    void setValues(Map&lt;String, Serializable&gt; values);
+    void setValues(Map&lt;String, Serializable&gt; values)
+            throws NameConstraintViolationException, UpdateConflictException;
 
     /**
      * Gets a content stream for this document.
      *
      * @param contentStreamId the content stream ID, or {@code null} for the
      *            primary content stream
-     * @return the content stream
+     * @return the content stream, or {@code null} if the object does not have a
+     *         content stream or rendition stream
      *
      * @throws IOException
      */
@@ -263,8 +302,19 @@
      * &lt;p&gt;
      * Calling {#link #save} is needed for objects newly created through
      * {@link Connection#newDocument} and similar methods.
+     *
+     * @throws ConstraintViolationException if the saved values are not legal,
+     *             for instance if any of the value violates the
+     *             min/max/required/length constraints specified in the relevant
+     *             property definition
+     * @throws NameConstraintViolationException if the name is set and is not
+     *             legal
+     * @throws UpdateConflictException if the object is no longer current
+     * @throws VersioningException if the update cannot be applied to a
+     *             non-latest version
      */
-    void save();
+    void save() throws NameConstraintViolationException,
+            UpdateConflictException;
 
     /*
      * ----- convenience methods -----
@@ -350,6 +400,11 @@
      * ----- convenience methods for specific properties (setter) -----
      */
 
-    void setName(String value);
+    /**
+     * Sets the name.
+     *
+     * @throws NameConstraintViolationException if the name is not legal
+     */
+    void setName(String value) throws NameConstraintViolationException;
 
 }

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISRuntimeException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISRuntimeException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISRuntimeException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISRuntimeException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,42 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The base class for CMIS unchecked exceptions.
+ */
+public class CMISRuntimeException extends RuntimeException {
+
+    private static final long serialVersionUID = 1L;
+
+    public CMISRuntimeException() {
+        super();
+    }
+
+    public CMISRuntimeException(String message) {
+        super(message);
+    }
+
+    public CMISRuntimeException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public CMISRuntimeException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISRuntimeException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMISRuntimeException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ConstraintViolationException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ConstraintViolationException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ConstraintViolationException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ConstraintViolationException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,43 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The operation violates a repository- or object-level constraint defined in
+ * the CMIS domain model.
+ */
+public class ConstraintViolationException extends CMISRuntimeException {
+
+    private static final long serialVersionUID = 1L;
+
+    public ConstraintViolationException() {
+        super();
+    }
+
+    public ConstraintViolationException(String message) {
+        super(message);
+    }
+
+    public ConstraintViolationException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public ConstraintViolationException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ConstraintViolationException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ConstraintViolationException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentAlreadyExistsException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentAlreadyExistsException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentAlreadyExistsException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentAlreadyExistsException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,44 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The operation attempts to set the content stream for a {@link Document} that
+ * already has a content stream without explicitly specifying the {@code
+ * overwrite} parameter.
+ */
+public class ContentAlreadyExistsException extends CMISException {
+
+    private static final long serialVersionUID = 1L;
+
+    public ContentAlreadyExistsException() {
+        super();
+    }
+
+    public ContentAlreadyExistsException(String message) {
+        super(message);
+    }
+
+    public ContentAlreadyExistsException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public ContentAlreadyExistsException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentAlreadyExistsException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ContentAlreadyExistsException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Document.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Document.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Document.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Document.java Sat Nov 21 23:06:15 2009
@@ -49,8 +49,13 @@
      * check-out or not is repository-specific.
      *
      * @return the private working copy
+     *
+     * @throws ConstraintViolationException if the document is not versionable
+     * @throws UpdateConflictException if the document is no longer current
+     * @throws VersioningException if the checkout cannot be applied to a
+     *             non-latest version
      */
-    Document checkOut();
+    Document checkOut() throws UpdateConflictException;
 
     /**
      * Cancels a check-out of a private working copy.
@@ -58,8 +63,13 @@
      * Reverses the effect of a check-out. Removes the private working copy of
      * the checked-out document, allowing other documents in the version series
      * of this document to be checked out again.
+     *
+     * @throws ConstraintViolationException if the document is not versionable
+     * @throws UpdateConflictException if the document is no longer current
+     * @throws VersioningException if the checkout cannot be applied to a
+     *             non-latest version
      */
-    void cancelCheckOut();
+    void cancelCheckOut() throws UpdateConflictException;
 
     /**
      * Checks in a private working copy.
@@ -69,8 +79,14 @@
      * @param major {@code true} if the version is a major version
      * @param comment a check-in comment, or {@code null}
      * @return the the new version of the document
+     *
+     * @throws ConstraintViolationException if the document is not versionable
+     * @throws StreamNotSupportedException if a content stream is being set but
+     *             is not supported on the document
+     * @throws UpdateConflictException if the document is no longer current
      */
-    Document checkIn(boolean major, String comment);
+    Document checkIn(boolean major, String comment)
+            throws UpdateConflictException;
 
     /**
      * Gets the latest version of this document.
@@ -81,6 +97,9 @@
      * @param major {@code true} if the latest major version is requested
      * @return the latest version or latest major version, or {@code null} if
      *         not found
+     *
+     * @throws ObjectNotFoundException if &lt;em&gt;major&lt;/em&gt; is {@code true} and the
+     *             version series contains no major version
      */
     Document getLatestVersion(boolean major);
 
@@ -99,9 +118,12 @@
     /**
      * Deletes all the versions of this document.
      * &lt;p&gt;
-     * Deletes all document versions in the version series of this document.
+     * Deletes all document versions in the version series of this document,
+     * including the private working copy if it exists.
+     *
+     * @throws UpdateConflictException if the object is no longer current
      */
-    void deleteAllVersions();
+    void deleteAllVersions() throws UpdateConflictException;
 
     /*
      * ----- data access -----
@@ -110,7 +132,10 @@
     /**
      * Gets the primary content stream for this document.
      *
-     * @return the content stream
+     * @return the content stream, or {@code null} if the document does not have
+     *         a content stream
+     *
+     * @throws IOException if the stream could not be read
      */
     ContentStream getContentStream() throws IOException;
 
@@ -118,8 +143,15 @@
      * Sets the primary content stream for this document.
      *
      * @param contentStream
-     * @throws IOException if the stream could not be read
+     *
+     * @throws IOException if the stream could not be written
+     * @throws StreamNotSupportedException if a content stream is not allowed on
+     *             the document
+     * @throws UpdateConflictException if the document is no longer current
+     * @throws VersioningException if the update cannot be applied to a
+     *             non-latest version
      */
-    void setContentStream(ContentStream contentStream) throws IOException;
+    void setContentStream(ContentStream contentStream) throws IOException,
+            UpdateConflictException;
 
 }

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/FilterNotValidException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/FilterNotValidException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/FilterNotValidException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/FilterNotValidException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,42 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The property filter or rendition filter is not valid.
+ */
+public class FilterNotValidException extends IllegalArgumentException {
+
+    private static final long serialVersionUID = 1L;
+
+    public FilterNotValidException() {
+        super();
+    }
+
+    public FilterNotValidException(String message) {
+        super(message);
+    }
+
+    public FilterNotValidException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public FilterNotValidException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/FilterNotValidException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/FilterNotValidException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Folder.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Folder.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Folder.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Folder.java Sat Nov 21 23:06:15 2009
@@ -32,6 +32,9 @@
      * Adds an existing non-folder, fileable object to this folder.
      *
      * @param object the object
+     *
+     * @throws ConstraintViolationException if the object's type isn't allowed
+     *             as a child object type in the folder
      */
     void add(CMISObject object);
 
@@ -46,6 +49,9 @@
      *
      * @see CMISObject#delete
      * @see CMISObject#unfile
+     *
+     * @throws ConstraintViolationException if removing the object would delete
+     *             it
      */
     void remove(CMISObject object);
 
@@ -80,8 +86,11 @@
      * @param unfiling how to unfile non-folder objects, if {@code null} then
      *            same as {@link Unfiling#DELETE}
      * @return the collection of IDs of objects that could not be deleted
+     *
+     * @throws UpdateConflictException if the folder is no longer current
      */
-    Collection&lt;ObjectId&gt; deleteTree(Unfiling unfiling);
+    Collection&lt;ObjectId&gt; deleteTree(Unfiling unfiling)
+            throws UpdateConflictException;
 
     /*
      * ----- Navigation Services -----
@@ -90,7 +99,7 @@
     /**
      * Gets the direct children of this folder.
      * &lt;p&gt;
-     * The order of returned children is implementation-dependant.
+     * The order of returned children is implementation-dependent.
      *
      * @return the list of children
      */
@@ -104,11 +113,17 @@
 
     /**
      * Creates a new, unsaved document as a child of this folder.
+     *
+     * @throws ConstraintViolationException if the type isn't allowed as a child
+     *             object type in the folder
      */
     Document newDocument(String typeId);
 
     /**
      * Creates a new, unsaved folder as a child of this folder.
+     *
+     * @throws ConstraintViolationException if the type isn't allowed as a child
+     *             object type in the folder
      */
     Folder newFolder(String typeId);
 

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/NameConstraintViolationException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/NameConstraintViolationException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/NameConstraintViolationException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/NameConstraintViolationException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,43 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The repository is not able to store the object that the user is
+ * creating/updating due to a name constraint violation.
+ */
+public class NameConstraintViolationException extends CMISException {
+
+    private static final long serialVersionUID = 1L;
+
+    public NameConstraintViolationException() {
+        super();
+    }
+
+    public NameConstraintViolationException(String message) {
+        super(message);
+    }
+
+    public NameConstraintViolationException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public NameConstraintViolationException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/NameConstraintViolationException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/NameConstraintViolationException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ObjectNotFoundException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ObjectNotFoundException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ObjectNotFoundException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ObjectNotFoundException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,42 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The call has specified an object that does not exist in the repository.
+ */
+public class ObjectNotFoundException extends CMISRuntimeException {
+
+    private static final long serialVersionUID = 1L;
+
+    public ObjectNotFoundException() {
+        super();
+    }
+
+    public ObjectNotFoundException(String message) {
+        super(message);
+    }
+
+    public ObjectNotFoundException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public ObjectNotFoundException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ObjectNotFoundException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ObjectNotFoundException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PermissionDeniedException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PermissionDeniedException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PermissionDeniedException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PermissionDeniedException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,42 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The caller does not have sufficient permissions to perform the operation.
+ */
+public class PermissionDeniedException extends CMISRuntimeException {
+
+    private static final long serialVersionUID = 1L;
+
+    public PermissionDeniedException() {
+        super();
+    }
+
+    public PermissionDeniedException(String message) {
+        super(message);
+    }
+
+    public PermissionDeniedException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public PermissionDeniedException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PermissionDeniedException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PermissionDeniedException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java Sat Nov 21 23:06:15 2009
@@ -74,6 +74,10 @@
      * @param depth the depth, or {@code -1} for all levels
      * @param filter the properties filter, or {@code null} for all properties
      * @param includeAllowableActions {@code true} to include allowable actions
+     *
+     * @throws FilterNotValidException if the filter is not valid
+     * @throws IllegalArgumentException if the object is not a folder or the
+     *             depth is invalid
      */
     List&lt;ObjectEntry&gt; getFolderTree(ObjectId folder, int depth, String filter,
             boolean includeAllowableActions);
@@ -114,6 +118,10 @@
      * @param includeRenditions {@code true} if renditions should be included as
      *            well
      * @param orderBy an {@code ORDER BY} clause, or {@code null}
+     *
+     * @throws FilterNotValidException if the filter is not valid
+     * @throws IllegalArgumentException if the object is not a folder or the
+     *             depth is invalid
      */
     // TODO return type for a tree
     List&lt;ObjectEntry&gt; getDescendants(ObjectId folder, int depth, String filter,
@@ -151,6 +159,9 @@
      * @param orderBy an {@code ORDER BY} clause, or {@code null}
      * @param paging paging information, or {@code null} for a
      *            repository-specific default
+     *
+     * @throws FilterNotValidException if the filter is not valid
+     * @throws IllegalArgumentException if the object is not a folder
      */
     ListPage&lt;ObjectEntry&gt; getChildren(ObjectId folder, String filter,
             boolean includeAllowableActions, boolean includeRelationships,
@@ -166,6 +177,10 @@
      * @param folder the folder
      * @param filter the properties filter, or {@code null} for all properties
      * @return the parents and optionally relationships
+     *
+     * @throws FilterNotValidException if the filter is not valid
+     * @throws IllegalArgumentException if the folder is not a folder or is the
+     *             root
      */
     ObjectEntry getFolderParent(ObjectId folder, String filter);
 
@@ -179,6 +194,10 @@
      * @param object the object
      * @param filter the properties filter, or {@code null} for all properties
      * @return the collection of parent folders
+     *
+     * @throws ConstraintViolationException if the object is not fileable
+     * @throws FilterNotValidException if the filter is not valid
+     * @throws IllegalArgumentException if the object is a folder
      */
     Collection&lt;ObjectEntry&gt; getObjectParents(ObjectId object, String filter);
 
@@ -200,6 +219,9 @@
      *            included as well
      * @param paging paging information, or {@code null} for a
      *            repository-specific default
+     *
+     * @throws FilterNotValidException if the filter is not valid
+     * @throws IllegalArgumentException if the object is not a folder
      */
     ListPage&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folder,
             String filter, boolean includeAllowableActions,
@@ -225,29 +247,41 @@
      * @param folder the containing folder, or {@code null}
      * @param contentStream the content stream, or {@code null}
      * @param versioningState the versioning state
-     *
      * @return the ID of the created document
+     *
+     * @throws ConstraintViolationException if the properties are not legal
+     * @throws StreamNotSupportedException if &lt;em&gt;contentStream&lt;/em&gt; is not
+     *             {@code null} and a content stream is not supported on the
+     *             document
+     * @throws NameConstraintViolationException if the name is not legal
      */
     ObjectId createDocument(Map&lt;String, Serializable&gt; properties,
             ObjectId folder, ContentStream contentStream,
-            VersioningState versioningState);
+            VersioningState versioningState)
+            throws NameConstraintViolationException;
+
+    // TODO 1.0 createDocumentFromSource
 
     /**
      * Creates a folder.
      *
      * @param properties the properties
      * @param folder the containing folder
-     *
      * @return the ID of the created folder
+     *
+     * @throws ConstraintViolationException if the properties are not legal
+     * @throws NameConstraintViolationException if the name is not legal
      */
-    ObjectId createFolder(Map&lt;String, Serializable&gt; properties, ObjectId folder);
+    ObjectId createFolder(Map&lt;String, Serializable&gt; properties, ObjectId folder)
+            throws NameConstraintViolationException;
 
     /**
      * Creates a relationship.
      *
      * @param properties the properties
-     *
      * @return the ID of the created relationship
+     *
+     * @throws ConstraintViolationException if the properties are not legal
      */
     ObjectId createRelationship(Map&lt;String, Serializable&gt; properties);
 
@@ -259,8 +293,9 @@
      *
      * @param properties the properties
      * @param folder the containing folder, or {@code null}
-     *
      * @return the ID of the created policy
+     *
+     * @throws ConstraintViolationException if the properties are not legal
      */
     ObjectId createPolicy(Map&lt;String, Serializable&gt; properties, ObjectId folder);
 
@@ -276,6 +311,8 @@
      */
     Collection&lt;QName&gt; getAllowableActions(ObjectId object);
 
+    // TODO 1.0 getObject
+
     /**
      * Gets the properties of an object.
      * &lt;p&gt;
@@ -296,6 +333,8 @@
      *            included as well
      * @return the properties of the object, or {@code null} if the object is
      *         not found
+     *
+     * @throws FilterNotValidException if the filter is not valid
      */
     ObjectEntry getProperties(ObjectId object, String filter,
             boolean includeAllowableActions, boolean includeRelationships);
@@ -310,6 +349,8 @@
      *            included as well
      * @return the properties of the object, or {@code null} if the object is
      *         not found
+     *
+     * @throws FilterNotValidException if the filter is not valid
      */
     ObjectEntry getObjectByPath(String path, String filter,
             boolean includeAllowableActions, boolean includeRelationships);
@@ -355,11 +396,15 @@
      * @param contentStreamId the content stream ID, or {@code null}
      * @return the content stream
      *
+     * @throws ConstraintViolationException if the object does not have a
+     *             content stream or rendition stream
      * @throws IOException
      */
     ContentStream getContentStream(ObjectId object, String contentStreamId)
             throws IOException;
 
+    // TODO 1.0 getRenditions
+
     /**
      * Sets the content stream for a document.
      * &lt;p&gt;
@@ -379,10 +424,20 @@
      * @param contentStream the content stream to set
      * @return the resulting document, which may differ from the one passed as
      *         input
+     *
+     * @throws StreamNotSupportedException if a content stream is not allowed on
+     *             the document
+     * @throws ContentAlreadyExistsException if the document already has a
+     *             content stream and {@code overwrite} is {@code false}
+     * @throws UpdateConflictException if the document is no longer current
+     * @throws VersioningException if the update cannot be applied to a
+     *             non-latest version
+     * @throws IOException
      */
     // TODO return ObjectId or ObjectEntry?
     ObjectId setContentStream(ObjectId document, boolean overwrite,
-            ContentStream contentStream);
+            ContentStream contentStream) throws IOException,
+            ContentAlreadyExistsException, UpdateConflictException;
 
     /**
      * Deletes the content stream for a document.
@@ -399,8 +454,15 @@
      * @param document the document
      * @return the resulting document, which may differ from the one passed as
      *         input
+     *
+     * @throws ConstraintViolationException if a content stream is required on
+     *             the document
+     * @throws UpdateConflictException if the document is no longer current
+     * @throws VersioningException if the update cannot be applied to a
+     *             non-latest version
      */
-    ObjectId deleteContentStream(ObjectId document);
+    ObjectId deleteContentStream(ObjectId document)
+            throws UpdateConflictException;
 
     /**
      * Updates the properties of an object.
@@ -424,10 +486,20 @@
      * @param properties the properties to change
      * @return the resulting object, which may differ from the one passed as
      *         input
+     *
+     * @throws ConstraintViolationException if the properties are not legal, for
+     *             instance if any of the property violates the
+     *             min/max/required/length constraints specified in the relevant
+     *             property definition
+     * @throws NameConstraintViolationException if the name is not legal
+     * @throws UpdateConflictException if the object is no longer current
+     * @throws VersioningException if the update cannot be applied to a
+     *             non-latest version
      */
     // TODO return ObjectId or ObjectEntry?
     ObjectId updateProperties(ObjectId object, String changeToken,
-            Map&lt;String, Serializable&gt; properties);
+            Map&lt;String, Serializable&gt; properties)
+            throws NameConstraintViolationException, UpdateConflictException;
 
     /**
      * Moves the specified filed object from one folder to another.
@@ -441,9 +513,20 @@
      * @param sourceFolder the source folder, or {@code null}
      * @return the resulting object, which may differ from the one passed as
      *         input
+     *
+     * @throws IllegalArgumentException if sourceFolder is not a parent of the
+     *             object
+     * @throws ConstraintViolationException if the object's type isn't allowed
+     *             as a child object type in the targetFolder
+     * @throws NameConstraintViolationException if the object name is not legal
+     *             in its new parent folder
+     * @throws UpdateConflictException if the object is no longer current
+     * @throws VersioningException if the move cannot be done to a non-latest
+     *             version
      */
     ObjectId moveObject(ObjectId object, ObjectId targetFolder,
-            ObjectId sourceFolder);
+            ObjectId sourceFolder) throws NameConstraintViolationException,
+            UpdateConflictException;
 
     /**
      * Deletes the specified object.
@@ -456,12 +539,16 @@
      * series is deleted.
      * &lt;p&gt;
      * Deletion of a private working copy (checked out version) is the same as
-     * the cancelling of a checkout.
+     * the canceling of a checkout.
      *
      * @param object the object to delete
      * @param allVersions if {@code true}, then delete all versions as well
+     *
+     * @throws ConstraintViolationException if the object is a non-empty folder
+     * @throws UpdateConflictException if the object is no longer current
      */
-    void deleteObject(ObjectId object, boolean allVersions);
+    void deleteObject(ObjectId object, boolean allVersions)
+            throws UpdateConflictException;
 
     /**
      * Deletes a tree of objects.
@@ -500,15 +587,25 @@
      * @param continueOnFailure {@code true} if failure to delete one object
      *            should not stop deletion of other objects
      * @return the collection of IDs of objects that could not be deleted
+     *
+     * @throws UpdateConflictException if the object is no longer current
      */
     Collection&lt;ObjectId&gt; deleteTree(ObjectId folder, Unfiling unfiling,
-            boolean continueOnFailure);
+            boolean continueOnFailure) throws UpdateConflictException;
+
+    /*
+     * ----- Multi-Filing Services -----
+     */
 
     /**
      * Adds an existing non-folder, fileable object to a folder.
      *
      * @param object the object
      * @param folder the folder
+     * @param allVersions TODO
+     *
+     * @throws ConstraintViolationException if the object's type isn't allowed
+     *             as a child object type in the folder
      */
     void addObjectToFolder(ObjectId object, ObjectId folder);
 
@@ -524,6 +621,9 @@
      *
      * @param object the object
      * @param folder the folder, or {@code null} for all folders
+     *
+     * @throws ConstraintViolationException if removing the object would delete
+     *             it
      */
     void removeObjectFromFolder(ObjectId object, ObjectId folder);
 
@@ -568,6 +668,8 @@
      * @param paging paging information, or {@code null} for a
      *            repository-specific default
      * @return the matching objects
+     *
+     * @throws IllegalArgumentException if the statement is invalid
      */
     // TODO returns a result set actually, there may be computed values
     ListPage&lt;ObjectEntry&gt; query(String statement, boolean searchAllVersions,
@@ -598,9 +700,14 @@
      *            repository-specific default
      * @return a paged list of change events
      *
+     * @throws ConstraintViolationException if the event corresponding to
+     *             {@code changeLogToken} is no longer available in the change
+     *             log
+     *
      * @see Repository#getInfo
      * @see RepositoryInfo#getLatestChangeLogToken
      */
+    // TODO 1.0 rename to getContentChanges
     ListPage&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
             boolean includeProperties, Paging paging,
             String[] latestChangeLogToken);
@@ -632,8 +739,14 @@
      * @param document the document
      * @param contentCopied a return array of size 1
      * @return a reference to the private working copy
+     *
+     * @throws ConstraintViolationException if the document is not versionable
+     * @throws UpdateConflictException if the object is no longer current
+     * @throws VersioningException if the checkout cannot be applied to a
+     *             non-latest version
      */
-    ObjectId checkOut(ObjectId document, boolean[] contentCopied);
+    ObjectId checkOut(ObjectId document, boolean[] contentCopied)
+            throws UpdateConflictException;
 
     /**
      * Cancels a check-out.
@@ -643,8 +756,13 @@
      * to be checked out again.
      *
      * @param document the private working copy
+     *
+     * @throws ConstraintViolationException if the document is not versionable
+     * @throws UpdateConflictException if the object is no longer current
+     * @throws VersioningException if the checkout cannot be applied to a
+     *             non-latest version
      */
-    void cancelCheckOut(ObjectId document);
+    void cancelCheckOut(ObjectId document) throws UpdateConflictException;
 
     /**
      * Checks in a private working copy.
@@ -658,10 +776,18 @@
      *            {@code null}
      * @param comment a check-in comment, or {@code null}
      * @return a reference to the new version of the document
+     *
+     * @throws ConstraintViolationException if the document is not versionable
+     * @throws StreamNotSupportedException if &lt;em&gt;contentStream&lt;/em&gt; is not
+     *             {@code null} and a content stream is not supported on the
+     *             document
+     * @throws UpdateConflictException if the object is no longer current
      */
     ObjectId checkIn(ObjectId document, boolean major,
             Map&lt;String, Serializable&gt; properties, ContentStream contentStream,
-            String comment);
+            String comment) throws UpdateConflictException;
+
+    // TODO 1.0 getObjectOfLatestVersion
 
     /**
      * Gets the properties of the latest version.
@@ -676,6 +802,10 @@
      * @param major {@code true} if the last major version is requested
      * @param filter the properties filter, or {@code null} for all properties
      * @return a collection of properties
+     *
+     * @throws FilterNotValidException if the filter is not valid
+     * @throws ObjectNotFoundException if &lt;em&gt;major&lt;/em&gt; is {@code true} and the
+     *             version series contains no major version
      */
     Map&lt;String, Serializable&gt; getPropertiesOfLatestVersion(
             String versionSeriesId, boolean major, String filter);
@@ -690,6 +820,8 @@
      *
      * @param versionSeriesId the version series ID
      * @param filter the properties filter, or {@code null} for all properties
+     *
+     * @throws FilterNotValidException if the filter is not valid
      */
     Collection&lt;ObjectEntry&gt; getAllVersions(String versionSeriesId, String filter);
 
@@ -698,7 +830,7 @@
      */
 
     /**
-     * Gets the relationships having as source or target a given document.
+     * Gets the relationships having as source or target a given object.
      * &lt;p&gt;
      * Returns a list of relationships associated with the given object,
      * optionally of a specified relationship type, and optionally in a
@@ -718,7 +850,10 @@
      * @param paging paging information, or {@code null} for a
      *            repository-specific default
      * @return the list of relationships
+     *
+     * @throws FilterNotValidException if the filter is not valid
      */
+    // TODO rename to getObjectRelationships
     ListPage&lt;ObjectEntry&gt; getRelationships(ObjectId object,
             RelationshipDirection direction, String typeId,
             boolean includeSubRelationshipTypes, String filter,
@@ -735,6 +870,8 @@
      *
      * @param object the target object
      * @param policy the policy
+     *
+     * @throws ConstraintViolationException if the object is not controllable
      */
     void applyPolicy(ObjectId object, ObjectId policy);
 
@@ -748,6 +885,8 @@
      *
      * @param object the target object
      * @param policy the policy
+     *
+     * @throws ConstraintViolationException if the object is not controllable
      */
     void removePolicy(ObjectId object, ObjectId policy);
 
@@ -762,6 +901,8 @@
      *
      * @param object the target object
      * @param filter the properties filter, or {@code null} for all properties
+     *
+     * @throws FilterNotValidException if the filter is not valid
      */
     Collection&lt;ObjectEntry&gt; getAppliedPolicies(ObjectId object, String filter);
 
@@ -799,6 +940,10 @@
      * @param removeACEs the ACEs to remove
      * @param propagation the ACL propagation to use
      * @return the new ACL
+     *
+     * @throws ConstraintViolationException if the object is not controllable,
+     *             the propagation value is not legal, or an ACE's permission is
+     *             not legal
      */
     List&lt;ACE&gt; applyACL(ObjectId object, List&lt;ACE&gt; addACEs,
             List&lt;ACE&gt; removeACEs, ACLPropagation propagation, boolean[] exact,

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StorageException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StorageException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StorageException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StorageException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,43 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The repository is not able to store the object that the user is
+ * creating/updating due to an internal storage problem.
+ */
+public class StorageException extends CMISRuntimeException {
+
+    private static final long serialVersionUID = 1L;
+
+    public StorageException() {
+        super();
+    }
+
+    public StorageException(String message) {
+        super(message);
+    }
+
+    public StorageException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public StorageException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StorageException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StorageException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StreamNotSupportedException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StreamNotSupportedException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StreamNotSupportedException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StreamNotSupportedException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,44 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The operation is attempting to get or set a content stream for a
+ * {@link Document} whose {@link Type} specifies that a content stream is not
+ * allowed.
+ */
+public class StreamNotSupportedException extends ConstraintViolationException {
+
+    private static final long serialVersionUID = 1L;
+
+    public StreamNotSupportedException() {
+        super();
+    }
+
+    public StreamNotSupportedException(String message) {
+        super(message);
+    }
+
+    public StreamNotSupportedException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public StreamNotSupportedException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StreamNotSupportedException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/StreamNotSupportedException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/TypeManager.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/TypeManager.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/TypeManager.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/TypeManager.java Sat Nov 21 23:06:15 2009
@@ -74,6 +74,8 @@
      * @param returnPropertyDefinitions {@code false} to skip property
      *            definitions
      * @return the types, or a subset of them
+     *
+     * @throws IllegalArgumentException if the depth is invalid
      */
     Collection&lt;Type&gt; getTypes(String typeId, int depth,
             boolean returnPropertyDefinitions);

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/UpdateConflictException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/UpdateConflictException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/UpdateConflictException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/UpdateConflictException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,43 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The operation is attempting to update an object that is no longer current (as
+ * determined by the repository).
+ */
+public class UpdateConflictException extends CMISException {
+
+    private static final long serialVersionUID = 1L;
+
+    public UpdateConflictException() {
+        super();
+    }
+
+    public UpdateConflictException(String message) {
+        super(message);
+    }
+
+    public UpdateConflictException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public UpdateConflictException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/UpdateConflictException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/UpdateConflictException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/VersioningException.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/VersioningException.java?rev=883013&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/VersioningException.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/VersioningException.java Sat Nov 21 23:06:15 2009
@@ -0,0 +1,43 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * The operation is attempting to perform an action on a non-latest version of a
+ * {@link Document} but this is not possible.
+ */
+public class VersioningException extends CMISRuntimeException {
+
+    private static final long serialVersionUID = 1L;
+
+    public VersioningException() {
+        super();
+    }
+
+    public VersioningException(String message) {
+        super(message);
+    }
+
+    public VersioningException(String message, Throwable cause) {
+        super(message, cause);
+    }
+
+    public VersioningException(Throwable cause) {
+        super(cause);
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/VersioningException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/VersioningException.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java Sat Nov 21 23:06:15 2009
@@ -48,6 +48,7 @@
 import org.apache.abdera.util.EntityTag;
 import org.apache.chemistry.BaseType;
 import org.apache.chemistry.CMIS;
+import org.apache.chemistry.CMISRuntimeException;
 import org.apache.chemistry.ContentStream;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
@@ -340,13 +341,8 @@
             switch (baseType) {
             case DOCUMENT:
                 String filename = (String) posted.properties.get(Property.CONTENT_STREAM_FILE_NAME);
-                ContentStream contentStream;
-                try {
-                    contentStream = new SimpleContentStream(posted.stream,
-                            posted.mimeType, filename);
-                } catch (IOException e) {
-                    throw new ResponseContextException(500, e);
-                }
+                ContentStream contentStream = new SimpleContentStream(
+                        posted.stream, posted.mimeType, filename);
                 VersioningState versioningState = null; // TODO
                 objectId = spi.createDocument(posted.properties, folderId,
                         contentStream, versioningState);
@@ -374,6 +370,10 @@
             return buildCreateEntryResponse(link, entry);
         } catch (ResponseContextException e) {
             return createErrorResponse(e);
+        } catch (CMISRuntimeException e) {
+            return createErrorResponse(new ResponseContextException(500, e));
+        } catch (Exception e) {
+            return createErrorResponse(new ResponseContextException(500, e));
         }
     }
 
@@ -408,13 +408,8 @@
                 if (filename == null) {
                     filename = (String) object.getValue(Property.CONTENT_STREAM_FILE_NAME);
                 }
-                ContentStream contentStream;
-                try {
-                    contentStream = new SimpleContentStream(put.stream,
-                            put.mimeType, filename);
-                } catch (IOException e) {
-                    throw new ResponseContextException(500, e);
-                }
+                ContentStream contentStream = new SimpleContentStream(
+                        put.stream, put.mimeType, filename);
                 spi.setContentStream(object, true, contentStream);
             }
 
@@ -432,6 +427,10 @@
 
         } catch (ResponseContextException e) {
             return createErrorResponse(e);
+        } catch (CMISRuntimeException e) {
+            return createErrorResponse(new ResponseContextException(500, e));
+        } catch (Exception e) {
+            return createErrorResponse(new ResponseContextException(500, e));
         }
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java Sat Nov 21 23:06:15 2009
@@ -16,7 +16,6 @@
  */
 package org.apache.chemistry.atompub.server;
 
-import java.io.IOException;
 import java.util.Arrays;
 
 import junit.framework.TestCase;
@@ -92,7 +91,7 @@
         server.stop();
     }
 
-    public static Repository makeRepository(String rootId) throws IOException {
+    public static Repository makeRepository(String rootId) throws Exception {
         PropertyDefinition p1 = new SimplePropertyDefinition("title",
                 "def:title", null, "title", "Title", "", false,
                 PropertyType.STRING, false, null, false, false, "",
@@ -229,8 +228,8 @@
             sw.startElement("query", CMIS.CMIS_NS, CMIS.CMIS_PREFIX);
             sw.startElement("statement", CMIS.CMIS_NS, CMIS.CMIS_PREFIX).writeElementText(
                     statement).endElement();
-            sw.startElement("searchAllVersions", CMIS.CMIS_NS,
-                    CMIS.CMIS_PREFIX).writeElementText("false").endElement();
+            sw.startElement("searchAllVersions", CMIS.CMIS_NS, CMIS.CMIS_PREFIX).writeElementText(
+                    "false").endElement();
             sw.startElement("pageSize", CMIS.CMIS_NS, CMIS.CMIS_PREFIX).writeElementText(
                     0).endElement();
             sw.startElement("skipCount", CMIS.CMIS_NS, CMIS.CMIS_PREFIX).writeElementText(

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleFolder.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleFolder.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleFolder.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleFolder.java Sat Nov 21 23:06:15 2009
@@ -26,6 +26,7 @@
 import org.apache.chemistry.Folder;
 import org.apache.chemistry.ObjectId;
 import org.apache.chemistry.Unfiling;
+import org.apache.chemistry.UpdateConflictException;
 
 public class SimpleFolder extends SimpleObject implements Folder {
 
@@ -43,7 +44,8 @@
         throw new UnsupportedOperationException();
     }
 
-    public Collection&lt;ObjectId&gt; deleteTree(Unfiling unfiling) {
+    public Collection&lt;ObjectId&gt; deleteTree(Unfiling unfiling)
+            throws UpdateConflictException {
         return entry.connection.getSPI().deleteTree(this, unfiling, true);
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java Sat Nov 21 23:06:15 2009
@@ -31,6 +31,7 @@
 import org.apache.chemistry.Relationship;
 import org.apache.chemistry.RelationshipDirection;
 import org.apache.chemistry.Type;
+import org.apache.chemistry.UpdateConflictException;
 import org.apache.chemistry.impl.base.BaseObject;
 
 /**
@@ -69,7 +70,7 @@
         throw new UnsupportedOperationException();
     }
 
-    public void delete() {
+    public void delete() throws UpdateConflictException {
         entry.connection.getSPI().deleteObject(this, false);
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java Sat Nov 21 23:06:15 2009
@@ -24,16 +24,16 @@
 
 import org.apache.chemistry.BaseType;
 import org.apache.chemistry.CMISObject;
+import org.apache.chemistry.CapabilityJoin;
+import org.apache.chemistry.CapabilityQuery;
 import org.apache.chemistry.Connection;
 import org.apache.chemistry.ContentStream;
 import org.apache.chemistry.ContentStreamPresence;
 import org.apache.chemistry.Document;
 import org.apache.chemistry.Folder;
-import org.apache.chemistry.CapabilityJoin;
 import org.apache.chemistry.Property;
 import org.apache.chemistry.PropertyDefinition;
 import org.apache.chemistry.PropertyType;
-import org.apache.chemistry.CapabilityQuery;
 import org.apache.chemistry.RepositoryCapabilities;
 import org.apache.chemistry.RepositoryInfo;
 import org.apache.chemistry.Type;
@@ -203,7 +203,7 @@
         assertEquals(string, new String(bytes, "UTF-8"));
     }
 
-    public void testRemoveDocument() {
+    public void testRemoveDocument() throws Exception {
         Connection conn = repo.getConnection(null);
         Folder root = conn.getRootFolder();
         Document d1 = root.newDocument("doc");
@@ -212,7 +212,7 @@
         assertNull(conn.getObject(d1));
     }
 
-    public void testRemoveFolder() {
+    public void testRemoveFolder() throws Exception {
         Connection conn = repo.getConnection(null);
         Folder root = conn.getRootFolder();
         try {
@@ -236,7 +236,7 @@
         assertNull(conn.getObject(d1));
     }
 
-    public void testBasicQuery() {
+    public void testBasicQuery() throws Exception {
         Connection conn = repo.getConnection(null);
         Folder root = conn.getRootFolder();
         Document d1 = root.newDocument("doc");
@@ -249,8 +249,7 @@
         assertEquals(0, res.size());
         res = conn.query("SELECT * FROM doc", false);
         assertEquals(1, res.size());
-        res = conn.query(
-                "SELECT * FROM cmis:folder WHERE cmis:name = ''",
+        res = conn.query("SELECT * FROM cmis:folder WHERE cmis:name = ''",
                 false);
         assertEquals(1, res.size());
         res = conn.query("SELECT * FROM doc WHERE cmis:objectId = 'nosuchid'",

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java Sat Nov 21 23:06:15 2009
@@ -41,6 +41,7 @@
 import org.apache.chemistry.Document;
 import org.apache.chemistry.Folder;
 import org.apache.chemistry.ListPage;
+import org.apache.chemistry.NameConstraintViolationException;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
 import org.apache.chemistry.Paging;
@@ -188,7 +189,8 @@
     // TODO add IOException to throws clause
     public ObjectId createDocument(Map&lt;String, Serializable&gt; properties,
             ObjectId folderId, ContentStream contentStream,
-            VersioningState versioningState) {
+            VersioningState versioningState)
+            throws NameConstraintViolationException {
 
         try {
             JcrFolder folder = (JcrFolder) getObject(folderId);
@@ -201,7 +203,7 @@
             }
             doc.save();
             return new SimpleObjectId(doc.getId());
-        } catch (IOException e) {
+        } catch (Exception e) {
             String msg = "Unable to create document.";
             log.error(msg, e);
         }

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicHelper.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicHelper.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicHelper.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicHelper.java Sat Nov 21 23:06:15 2009
@@ -16,7 +16,6 @@
  */
 package org.apache.chemistry.test;
 
-import java.io.IOException;
 import java.io.InputStream;
 import java.util.Arrays;
 
@@ -46,7 +45,7 @@
 
     public static final String TEST_FILE_CONTENT = "This is a test file.\nTesting, testing...\n";
 
-    public static Repository makeRepository(String rootId) throws IOException {
+    public static Repository makeRepository(String rootId) throws Exception {
         PropertyDefinition p1 = new SimplePropertyDefinition("title",
                 "def:title", null, "title", "Title", "", false,
                 PropertyType.STRING, false, null, false, false, "(no title)",

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java?rev=883013&amp;r1=883012&amp;r2=883013&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java Sat Nov 21 23:06:15 2009
@@ -373,7 +373,7 @@
         assertEquals(blobBytes.length, cs.getLength());
     }
 
-    public void testNewFolder() {
+    public void testNewFolder() throws Exception {
         Folder root = conn.getRootFolder();
         assertNull(getDocumentChild(root));
         Folder fold = root.newFolder("fold");
@@ -401,7 +401,7 @@
         assertEquals("mytitle", fold.getString("title"));
     }
 
-    public void testUpdateSPI() {
+    public void testUpdateSPI() throws Exception {
         ObjectEntry ob = spi.getObjectByPath("/folder 1/doc 1", null, false,
                 false);
         assertEquals("doc 1 title", ob.getValue("title"));




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r882549 - in /incubator/chemistry/trunk/chemistry: chemistry-api/src/main/java/org/apache/chemistry/ chemistry-api/src/main/java/org/apache/chemistry/property/ chemistry-api/src/main/java/org/apache/chemistry/repository/ chemistry-api/src/m...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091120134533.7756923888D6@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091120134533-7756923888D6@eris-apache-org%3e</id>
<updated>2009-11-20T13:45:31Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Fri Nov 20 13:45:27 2009
New Revision: 882549

URL: http://svn.apache.org/viewvc?rev=882549&amp;view=rev
Log:
CMIS-63: add paging to API and implement it for AtomPub and Simple

Added:
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ListPage.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Paging.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleListPage.java   (with props)
Removed:
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/property/
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/repository/
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/type/
Modified:
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectFeedReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeFeedReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/DefaultIOProvider.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientResponse.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/IOProvider.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Response.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/AbstractFeedReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ListPage.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ListPage.java?rev=882549&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ListPage.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ListPage.java Fri Nov 20 13:45:27 2009
@@ -0,0 +1,52 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+import java.util.List;
+
+/**
+ * A {@link List} with paging information.
+ * &lt;p&gt;
+ * The list is a sublist (a page) of a bigger underlying list, and information
+ * about the page in the underlying list can be retrieved.
+ */
+public interface ListPage&lt;T&gt; extends List&lt;T&gt; {
+
+    /**
+     * Checks whether the underlying list has more items (skipped due to paging)
+     * after those included in the list.
+     * &lt;p&gt;
+     * If {@code true}, a request with a larger {@link Paging#skipCount} or
+     * larger {@link Paging#maxItems} is expected to return additional results.
+     * &lt;p&gt;
+     * A client should never rely on this value to be exact, because the
+     * contents of the repository may change between two calls.
+     */
+    boolean getHasMoreItems();
+
+    /**
+     * Gets the total number of items in the underlying list (ignoring any
+     * paging).
+     * &lt;p&gt;
+     * If not known, this will be {@code -1}.
+     * &lt;p&gt;
+     * A client should never rely on this value to be exact, because the
+     * contents of the repository may change between two calls.
+     */
+    int getNumItems();
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ListPage.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/ListPage.java
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Paging.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Paging.java?rev=882549&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Paging.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Paging.java Fri Nov 20 13:45:27 2009
@@ -0,0 +1,50 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry;
+
+/**
+ * Paging requested.
+ * &lt;p&gt;
+ * An instance of this class is provided to methods that will return a
+ * {@link ListPage}.
+ */
+public class Paging {
+
+    /**
+     * The maximum number of objects to return, or {@code 0} for a
+     * repository-specific default
+     */
+    public final int maxItems;
+
+    /**
+     * The number of objects to skip in the returned list. {@code 0} means start
+     */
+    public final int skipCount;
+
+    /**
+     * Constructs paging information with the given parameters
+     *
+     * @param maxItems the maximum number of objects to return, or {@code 0} for
+     *            a repository-specific default
+     * @param skipCount the number of objects to skip in the returned list
+     */
+    public Paging(int maxItems, int skipCount) {
+        this.maxItems = maxItems;
+        this.skipCount = skipCount;
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Paging.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Paging.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java Fri Nov 20 13:45:27 2009
@@ -19,7 +19,6 @@
 import java.io.IOException;
 import java.io.Serializable;
 import java.util.Collection;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
@@ -141,8 +140,6 @@
      * If includeAllowableActions is {@code true}, the repository will return
      * the allowable actions for the current user for object as part of the
      * results.
-     * &lt;p&gt;
-     * The return value hasMoreItems is filled if {@code maxItems &gt; 0}.
      *
      * @param folder the folder
      * @param filter the properties filter, or {@code null} for all properties
@@ -151,17 +148,13 @@
      *            included as well
      * @param includeRenditions {@code true} if renditions should be included as
      *            well
-     * @param maxItems the maximum number of objects to return, or {@code 0} for
-     *            a repository-specific default
-     * @param skipCount the skip count
      * @param orderBy an {@code ORDER BY} clause, or {@code null}
-     * @param hasMoreItems a 1-value boolean array to return a flag stating if
-     *            there are more items
+     * @param paging paging information, or {@code null} for a
+     *            repository-specific default
      */
-    List&lt;ObjectEntry&gt; getChildren(ObjectId folder, String filter,
+    ListPage&lt;ObjectEntry&gt; getChildren(ObjectId folder, String filter,
             boolean includeAllowableActions, boolean includeRelationships,
-            boolean includeRenditions, int maxItems, int skipCount,
-            String orderBy, boolean[] hasMoreItems);
+            boolean includeRenditions, String orderBy, Paging paging);
 
     /**
      * Gets the parent of a folder.
@@ -199,23 +192,18 @@
      * &lt;p&gt;
      * If folder is not {@code null}, then the results include only direct
      * children of that folder.
-     * &lt;p&gt;
-     * The return value hasMoreItems is filled if {@code maxItems &gt; 0}.
      *
      * @param folder the folder, or {@code null}
      * @param filter
      * @param includeAllowableActions
      * @param includeRelationships {@code true} if relationships should be
      *            included as well
-     * @param maxItems
-     * @param hasMoreItems a 1-value boolean array to return a flag stating if
-     *            there are more items
-     * @param skipCount
+     * @param paging paging information, or {@code null} for a
+     *            repository-specific default
      */
-    Collection&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folder,
+    ListPage&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folder,
             String filter, boolean includeAllowableActions,
-            boolean includeRelationships, int maxItems, int skipCount,
-            boolean[] hasMoreItems);
+            boolean includeRelationships, Paging paging);
 
     /*
      * ----- Object Services -----
@@ -337,9 +325,8 @@
      *
      * @param object the object
      * @param filter a rendition filter, or {@code null} for none
-     * @param maxItems the maximum number of renditions to return, or {@code 0}
-     *            for a repository-specific default
-     * @param skipCount the skip count
+     * @param paging paging information, or {@code null} for a
+     *            repository-specific default
      * @return the list of renditions
      *
      * @throws UnsupportedOperationException if renditions are not supported
@@ -347,8 +334,7 @@
      * @see Rendition#FILTER_ALL
      * @see Rendition#FILTER_NONE
      */
-    List&lt;Rendition&gt; getRenditions(ObjectId object, String filter, int maxItems,
-            int skipCount);
+    List&lt;Rendition&gt; getRenditions(ObjectId object, String filter, Paging paging);
 
     /**
      * Checks if the document has an associated content stream.
@@ -570,8 +556,6 @@
      * ). If each row in the output table does not correspond to a specific
      * object and includeAllowableActions is {@code true}, then an exception
      * will be thrown.
-     * &lt;p&gt;
-     * The return value hasMoreItems is filled if {@code maxItems &gt; 0}.
      *
      * @param statement the SQL statement
      * @param searchAllVersions {@code true} if all versions (not only that
@@ -581,17 +565,14 @@
      *            included as well
      * @param includeRenditions {@code true} if renditions should be included as
      *            well
-     * @param maxItems the maximum number of objects to return, or {@code 0} for
-     *            a repository-specific default
-     * @param skipCount the skip count
-     * @param hasMoreItems
+     * @param paging paging information, or {@code null} for a
+     *            repository-specific default
      * @return the matching objects
      */
     // TODO returns a result set actually, there may be computed values
-    Collection&lt;ObjectEntry&gt; query(String statement, boolean searchAllVersions,
+    ListPage&lt;ObjectEntry&gt; query(String statement, boolean searchAllVersions,
             boolean includeAllowableActions, boolean includeRelationships,
-            boolean includeRenditions, int maxItems, int skipCount,
-            boolean[] hasMoreItems);
+            boolean includeRenditions, Paging paging);
 
     /**
      * Gets a list of content changes.
@@ -607,23 +588,21 @@
      * The latest change log token for a repository can be acquired via
      * {@link RepositoryInfo#getLatestChangeToken}.
      * &lt;p&gt;
-     * The return value hasMoreItems is filled if {@code maxItems &gt; 0}.
-     * &lt;p&gt;
-     * The return value latestChangeLogToken contains the change token of the last
-     * change event returned by the iterator.
+     * The return value latestChangeLogToken contains the change token of the
+     * last change event returned by the iterator.
      *
      * @param changeLogToken the change log token, or {@code null}
      * @param includeProperties {@code true} if values are returned in the
      *            change events for updated objects
-     * @param maxItems the maximum number of change events to return, or {@code
-     *            0} for a repository-specific default
-     * @return an iterator over the change events
+     * @param paging paging information, or {@code null} for a
+     *            repository-specific default
+     * @return a paged list of change events
      *
      * @see Repository#getInfo
      * @see RepositoryInfo#getLatestChangeLogToken
      */
-    Iterator&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
-            boolean includeProperties, int maxItems, boolean[] hasMoreItems,
+    ListPage&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
+            boolean includeProperties, Paging paging,
             String[] latestChangeLogToken);
 
     /*
@@ -736,18 +715,14 @@
      *            sub-type of typeId are to be returned as well
      * @param filter the properties filter, or {@code null} for all properties
      * @param includeAllowableActions {@code true} to include allowable actions
-     * @param maxItems the maximum number of objects to return, or {@code 0} for
-     *            a repository-specific default
-     * @param skipCount the skip count
-     * @param hasMoreItems a 1-value boolean array to return a flag stating if
-     *            there are more items
+     * @param paging paging information, or {@code null} for a
+     *            repository-specific default
      * @return the list of relationships
      */
-    List&lt;ObjectEntry&gt; getRelationships(ObjectId object,
+    ListPage&lt;ObjectEntry&gt; getRelationships(ObjectId object,
             RelationshipDirection direction, String typeId,
             boolean includeSubRelationshipTypes, String filter,
-            String includeAllowableActions, int maxItems, int skipCount,
-            boolean[] hasMoreItems);
+            String includeAllowableActions, Paging paging);
 
     /*
      * ----- Policy Services -----

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java Fri Nov 20 13:45:27 2009
@@ -25,8 +25,6 @@
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 
@@ -40,8 +38,10 @@
 import org.apache.chemistry.ContentStream;
 import org.apache.chemistry.Document;
 import org.apache.chemistry.Folder;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Policy;
 import org.apache.chemistry.Property;
 import org.apache.chemistry.Relationship;
@@ -60,6 +60,7 @@
 import org.apache.chemistry.atompub.client.connector.Response;
 import org.apache.chemistry.atompub.client.stax.ReadContext;
 import org.apache.chemistry.atompub.client.stax.XmlProperty;
+import org.apache.chemistry.impl.simple.SimpleListPage;
 import org.apache.chemistry.impl.simple.SimpleObjectId;
 
 /**
@@ -183,8 +184,8 @@
     protected void accumulateFolders(ObjectId folder, int depth, String filter,
             boolean includeAllowableActions, List&lt;ObjectEntry&gt; list) {
         List&lt;ObjectEntry&gt; children = getChildren(folder, filter,
-                includeAllowableActions, false, false, Integer.MAX_VALUE, 0,
-                null, new boolean[1]);
+                includeAllowableActions, false, false, null, new Paging(
+                        Integer.MAX_VALUE, 0));
         for (ObjectEntry child : children) {
             if (child.getBaseType() != BaseType.FOLDER) {
                 continue;
@@ -224,50 +225,26 @@
         return resp.getObjectFeed(new ReadContext(this));
     }
 
-    public List&lt;ObjectEntry&gt; getChildren(ObjectId folder, String filter,
+    public ListPage&lt;ObjectEntry&gt; getChildren(ObjectId folder, String filter,
             boolean includeAllowableActions, boolean includeRelationships,
-            boolean includeRenditions, int maxItems, int skipCount,
-            String orderBy, boolean[] hasMoreItems) {
+            boolean includeRenditions, String orderBy, Paging paging) {
         // TODO filter, includeRelationship, includeAllowableActions, orderBy
-        if (maxItems &lt;= 0) {
-            maxItems = DEFAULT_MAX_CHILDREN;
-        }
-        if (skipCount &lt; 0) {
-            skipCount = 0;
-        }
-
         String href = getObjectEntry(folder).getLink(AtomPub.LINK_DOWN,
                 AtomPub.MEDIA_TYPE_ATOM_FEED);
-        Response resp = connector.get(new Request(href));
+        Request req = new Request(href);
+        if (paging != null) {
+            req.setParameter(AtomPubCMIS.PARAM_MAX_ITEMS,
+                    Integer.toString(paging.maxItems));
+            req.setParameter(AtomPubCMIS.PARAM_SKIP_COUNT,
+                    Integer.toString(paging.skipCount));
+        }
+        Response resp = connector.get(req);
         if (!resp.isOk()) {
             throw new ContentManagerException(
                     "Remote server returned error code: "
                             + resp.getStatusCode());
         }
-        List&lt;ObjectEntry&gt; feed = resp.getObjectFeed(new ReadContext(this));
-
-        List&lt;ObjectEntry&gt; result = new LinkedList&lt;ObjectEntry&gt;();
-        hasMoreItems[0] = false;
-        boolean done = false;
-        for (ObjectEntry entry : feed) {
-            // skip
-            if (skipCount &gt; 0) {
-                skipCount--;
-                continue;
-            }
-            // entry is ok
-            if (done) {
-                hasMoreItems[0] = true;
-                break;
-            }
-            result.add(entry);
-            if (result.size() &gt;= maxItems) {
-                done = true;
-                // don't break now, we still have to find out if there are more
-                // non-filtered entries to fill in hasMoreItems
-            }
-        }
-        return result;
+        return resp.getObjectFeed(new ReadContext(this));
     }
 
     public ObjectEntry getFolderParent(ObjectId folder, String filter) {
@@ -308,10 +285,9 @@
         return resp.getObjectFeed(new ReadContext(this));
     }
 
-    public Collection&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folder,
+    public ListPage&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folder,
             String filter, boolean includeAllowableActions,
-            boolean includeRelationships, int maxItems, int skipCount,
-            boolean[] hasMoreItems) {
+            boolean includeRelationships, Paging paging) {
         // TODO Auto-generated method stub
         throw new UnsupportedOperationException();
     }
@@ -462,7 +438,7 @@
     }
 
     public List&lt;Rendition&gt; getRenditions(ObjectId object, String filter,
-            int maxItems, int skipCount) {
+            Paging paging) {
         return Collections.emptyList();
     }
 
@@ -544,27 +520,26 @@
      * ----- Discovery Services -----
      */
 
-    public Collection&lt;ObjectEntry&gt; query(String statement,
+    public ListPage&lt;ObjectEntry&gt; query(String statement,
             boolean searchAllVersions, boolean includeAllowableActions,
             boolean includeRelationships, boolean includeRenditions,
-            int maxItems, int skipCount, boolean[] hasMoreItems) {
+            Paging paging) {
         String href = repository.getCollectionHref(AtomPubCMIS.COL_QUERY);
         Response resp = connector.postQuery(new Request(href), statement,
-                searchAllVersions, maxItems, skipCount, includeAllowableActions);
+                searchAllVersions, includeAllowableActions, paging);
         if (!resp.isOk()) {
             throw new ContentManagerException(
                     "Remote server returned error code: "
                             + resp.getStatusCode());
         }
-        List&lt;ObjectEntry&gt; objects = resp.getObjectFeed(new ReadContext(this));
+        ListPage&lt;ObjectEntry&gt; objects = resp.getObjectFeed(new ReadContext(this));
         return objects;
     }
 
     public Collection&lt;CMISObject&gt; query(String statement,
             boolean searchAllVersions) {
-        boolean[] hasMoreItems = new boolean[1];
-        Collection&lt;ObjectEntry&gt; res = query(statement, searchAllVersions,
-                false, false, false, -1, 0, hasMoreItems);
+        ListPage&lt;ObjectEntry&gt; res = query(statement, searchAllVersions, false,
+                false, false, new Paging(-1, 0));
         List&lt;CMISObject&gt; objects = new ArrayList&lt;CMISObject&gt;(res.size());
         for (ObjectEntry e : res) {
             objects.add(APPObject.construct((APPObjectEntry) e));
@@ -572,12 +547,11 @@
         return objects;
     }
 
-    public Iterator&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
-            boolean includeProperties, int maxItems, boolean[] hasMoreItems,
+    public ListPage&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
+            boolean includeProperties, Paging paging,
             String[] latestChangeLogToken) {
-        hasMoreItems[0] = false;
         latestChangeLogToken[0] = null;
-        return Collections.&lt;ObjectEntry&gt; emptyList().iterator();
+        return SimpleListPage.emptyList();
     }
 
     /*
@@ -617,11 +591,10 @@
      * ----- Relationship Services -----
      */
 
-    public List&lt;ObjectEntry&gt; getRelationships(ObjectId object,
+    public ListPage&lt;ObjectEntry&gt; getRelationships(ObjectId object,
             RelationshipDirection direction, String typeId,
             boolean includeSubRelationshipTypes, String filter,
-            String includeAllowableActions, int maxItems, int skipCount,
-            boolean[] hasMoreItems) {
+            String includeAllowableActions, Paging paging) {
         // TODO Auto-generated method stub
         throw new UnsupportedOperationException();
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java Fri Nov 20 13:45:27 2009
@@ -69,8 +69,7 @@
     @Override
     protected void readAtomElement(ReadContext ctx, StaxReader reader,
             APPObjectEntry object) throws XMLStreamException {
-        String name = reader.getLocalName();
-        if ("link".equals(name)) {
+        if (AtomPub.ATOM_LINK.equals(reader.getName())) {
             String rel = reader.getAttributeValue(AtomPub.ATOM_NS, "rel");
             String href = reader.getAttributeValue(AtomPub.ATOM_NS, "href");
             String type = reader.getAttributeValue(AtomPub.ATOM_NS, "type");

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectFeedReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectFeedReader.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectFeedReader.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectFeedReader.java Fri Nov 20 13:45:27 2009
@@ -16,19 +16,18 @@
  */
 package org.apache.chemistry.atompub.client;
 
-import java.util.ArrayList;
-import java.util.List;
-
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.atompub.client.stax.AbstractFeedReader;
 import org.apache.chemistry.atompub.client.stax.EntryReader;
+import org.apache.chemistry.impl.simple.SimpleListPage;
 import org.apache.chemistry.xml.stax.StaxReader;
 
 /**
  *
  */
 public class APPObjectFeedReader extends
-        AbstractFeedReader&lt;List&lt;ObjectEntry&gt;, APPObjectEntry&gt; {
+        AbstractFeedReader&lt;ListPage&lt;ObjectEntry&gt;, APPObjectEntry&gt; {
 
     private static APPObjectFeedReader builder = new APPObjectFeedReader();
 
@@ -46,13 +45,24 @@
     }
 
     @Override
-    protected List&lt;ObjectEntry&gt; createFeed(StaxReader reader) {
-        return new ArrayList&lt;ObjectEntry&gt;();
+    protected ListPage&lt;ObjectEntry&gt; createFeed(StaxReader reader) {
+        return new SimpleListPage&lt;ObjectEntry&gt;();
     }
 
     @Override
-    protected void addEntry(List&lt;ObjectEntry&gt; feed, APPObjectEntry entry) {
+    protected void addEntry(ListPage&lt;ObjectEntry&gt; feed, APPObjectEntry entry) {
         feed.add(entry);
     }
 
+    @Override
+    protected void setHasMoreItems(ListPage&lt;ObjectEntry&gt; feed,
+            boolean hasMoreItems) {
+        ((SimpleListPage&lt;ObjectEntry&gt;) feed).setHasMoreItems(hasMoreItems);
+    }
+
+    @Override
+    protected void setNumItems(ListPage&lt;ObjectEntry&gt; feed, int numItems) {
+        ((SimpleListPage&lt;ObjectEntry&gt;) feed).setNumItems(numItems);
+    }
+
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeFeedReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeFeedReader.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeFeedReader.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeFeedReader.java Fri Nov 20 13:45:27 2009
@@ -38,13 +38,23 @@
     }
 
     @Override
+    protected TypeManager createFeed(StaxReader reader) {
+        return new SimpleTypeManager();
+    }
+
+    @Override
     protected void addEntry(TypeManager typeManager, APPType type) {
         typeManager.addType(type);
     }
 
     @Override
-    protected TypeManager createFeed(StaxReader reader) {
-        return new SimpleTypeManager();
+    protected void setHasMoreItems(TypeManager typeManager, boolean hasMoreItems) {
+        // nothing
+    }
+
+    @Override
+    protected void setNumItems(TypeManager typeManager, int numItems) {
+        // nothing
     }
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Connector.java Fri Nov 20 13:45:27 2009
@@ -19,6 +19,7 @@
 import java.util.List;
 
 import org.apache.chemistry.ObjectEntry;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.Type;
 import org.apache.chemistry.atompub.client.ContentManagerException;
@@ -63,14 +64,14 @@
             throws ContentManagerException;
 
     Response putQuery(Request req, String query, boolean searchAllVersions,
-            long maxItems, long skipCount, boolean includeAllowableActions)
+            boolean includeAllowableActions, Paging paging)
             throws ContentManagerException;
 
     Response postObject(Request req, ObjectEntry entry)
             throws ContentManagerException;
 
     Response postQuery(Request req, String query, boolean searchAllVersions,
-            long maxItems, long skipCount, boolean includeAllowableActions)
+            boolean includeAllowableActions, Paging paging)
             throws ContentManagerException;
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/DefaultIOProvider.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/DefaultIOProvider.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/DefaultIOProvider.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/DefaultIOProvider.java Fri Nov 20 13:45:27 2009
@@ -18,11 +18,11 @@
  */
 package org.apache.chemistry.atompub.client.connector;
 
-import java.util.List;
-
-import org.apache.chemistry.TypeManager;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Type;
+import org.apache.chemistry.TypeManager;
 import org.apache.chemistry.atompub.client.APPObjectEntryReader;
 import org.apache.chemistry.atompub.client.APPObjectEntryWriter;
 import org.apache.chemistry.atompub.client.APPObjectFeedReader;
@@ -57,7 +57,7 @@
         return objectReader;
     }
 
-    public FeedReader&lt;List&lt;ObjectEntry&gt;&gt; getObjectFeedReader() {
+    public FeedReader&lt;ListPage&lt;ObjectEntry&gt;&gt; getObjectFeedReader() {
         return objectFeedReader;
     }
 
@@ -78,11 +78,13 @@
     }
 
     public XmlObjectWriter&lt;String&gt; getQueryWriter(boolean searchAllVersions,
-            long maxItems, long skipCount, boolean includeAllowableActions) {
+            boolean includeAllowableActions, Paging paging) {
         QueryWriter queryWriter = new QueryWriter();
         queryWriter.setSearchAllVersions(searchAllVersions);
-        queryWriter.setMaxItems(maxItems);
-        queryWriter.setSkipCount(skipCount);
+        if (paging != null) {
+            queryWriter.setMaxItems(paging.maxItems);
+            queryWriter.setSkipCount(paging.skipCount);
+        }
         queryWriter.setIncludeAllowableActions(includeAllowableActions);
         return queryWriter;
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientConnector.java Fri Nov 20 13:45:27 2009
@@ -22,6 +22,7 @@
 import java.util.List;
 
 import org.apache.chemistry.ObjectEntry;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.Type;
 import org.apache.chemistry.atompub.client.ContentManagerException;
@@ -212,10 +213,10 @@
     }
 
     public Response putQuery(Request req, String query,
-            boolean searchAllVersions, long maxItems, long skipCount,
-            boolean includeAllowableActions) throws ContentManagerException {
-        return put(req, io.getQueryWriter(searchAllVersions, maxItems,
-                skipCount, includeAllowableActions), query);
+            boolean searchAllVersions, boolean includeAllowableActions,
+            Paging paging) throws ContentManagerException {
+        return put(req, io.getQueryWriter(searchAllVersions,
+                includeAllowableActions, paging), query);
     }
 
     public Response postObject(Request req, ObjectEntry entry)
@@ -224,10 +225,10 @@
     }
 
     public Response postQuery(Request req, String query,
-            boolean searchAllVersions, long maxItems, long skipCount,
-            boolean includeAllowableActions) throws ContentManagerException {
-        return post(req, io.getQueryWriter(searchAllVersions, maxItems,
-                skipCount, includeAllowableActions), query);
+            boolean searchAllVersions, boolean includeAllowableActions,
+            Paging paging) throws ContentManagerException {
+        return post(req, io.getQueryWriter(searchAllVersions,
+                includeAllowableActions, paging), query);
     }
 
     public static class XmlObjectWriterRequestEntity&lt;T&gt; implements

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientResponse.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientResponse.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientResponse.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/HttpClientResponse.java Fri Nov 20 13:45:27 2009
@@ -19,14 +19,14 @@
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.List;
 
 import javax.xml.stream.XMLStreamException;
 
-import org.apache.chemistry.TypeManager;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.Type;
+import org.apache.chemistry.TypeManager;
 import org.apache.chemistry.atompub.client.ContentManagerException;
 import org.apache.chemistry.atompub.client.stax.ReadContext;
 import org.apache.commons.httpclient.Header;
@@ -145,7 +145,7 @@
         }
     }
 
-    public List&lt;ObjectEntry&gt; getObjectFeed(ReadContext ctx)
+    public ListPage&lt;ObjectEntry&gt; getObjectFeed(ReadContext ctx)
             throws ContentManagerException {
         try {
             return io.getObjectFeedReader().read(ctx, getStream());

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/IOProvider.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/IOProvider.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/IOProvider.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/IOProvider.java Fri Nov 20 13:45:27 2009
@@ -17,11 +17,11 @@
  */
 package org.apache.chemistry.atompub.client.connector;
 
-import java.util.List;
-
-import org.apache.chemistry.TypeManager;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Type;
+import org.apache.chemistry.TypeManager;
 import org.apache.chemistry.atompub.client.stax.EntryReader;
 import org.apache.chemistry.atompub.client.stax.FeedReader;
 import org.apache.chemistry.atompub.client.stax.ServiceDocumentReader;
@@ -39,13 +39,13 @@
 
     ServiceDocumentReader&lt;?&gt; getServiceDocumentReader();
 
-    FeedReader&lt;List&lt;ObjectEntry&gt;&gt; getObjectFeedReader();
+    FeedReader&lt;ListPage&lt;ObjectEntry&gt;&gt; getObjectFeedReader();
 
     FeedReader&lt;TypeManager&gt; getTypeFeedReader();
 
     XmlObjectWriter&lt;ObjectEntry&gt; getObjectEntryWriter();
 
     XmlObjectWriter&lt;String&gt; getQueryWriter(boolean searchAllVersions,
-            long maxItems, long skipCount, boolean includeAllowableActions);
+            boolean includeAllowableActions, Paging paging);
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Response.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Response.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Response.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/connector/Response.java Fri Nov 20 13:45:27 2009
@@ -17,12 +17,12 @@
 package org.apache.chemistry.atompub.client.connector;
 
 import java.io.InputStream;
-import java.util.List;
 
-import org.apache.chemistry.TypeManager;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.Type;
+import org.apache.chemistry.TypeManager;
 import org.apache.chemistry.atompub.client.ContentManagerException;
 import org.apache.chemistry.atompub.client.stax.ReadContext;
 
@@ -48,7 +48,7 @@
 
     String getString() throws ContentManagerException;
 
-    List&lt;ObjectEntry&gt; getObjectFeed(ReadContext ctx)
+    ListPage&lt;ObjectEntry&gt; getObjectFeed(ReadContext ctx)
             throws ContentManagerException;
 
     TypeManager getTypeFeed(ReadContext ctx) throws ContentManagerException;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/AbstractFeedReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/AbstractFeedReader.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/AbstractFeedReader.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/AbstractFeedReader.java Fri Nov 20 13:45:27 2009
@@ -26,6 +26,7 @@
 import javax.xml.stream.XMLStreamException;
 
 import org.apache.chemistry.atompub.AtomPub;
+import org.apache.chemistry.atompub.AtomPubCMIS;
 import org.apache.chemistry.xml.stax.ChildrenNavigator;
 import org.apache.chemistry.xml.stax.StaxReader;
 
@@ -40,6 +41,10 @@
 
     protected abstract void addEntry(T feed, E entry);
 
+    protected abstract void setHasMoreItems(T feed, boolean hasMoreItems);
+
+    protected abstract void setNumItems(T feed, int numItems);
+
     protected AbstractFeedReader(EntryReader&lt;E&gt; entryBuilder) {
         this.entryBuilder = entryBuilder;
     }
@@ -100,11 +105,18 @@
         while (nav.next() &amp;&amp; !isDone(ctx, reader)) {
             String nsUri = reader.getNamespaceURI();
             if (AtomPub.ATOM_NS.equals(nsUri)) {
-                if ("entry".equals(reader.getLocalName())) {
+                if (AtomPub.ATOM_ENTRY.equals(reader.getName())) {
                     addEntry(feed, entryBuilder.read(ctx, reader));
                 } else {
                     readAtomElement(ctx, reader, nsUri, feed);
                 }
+            } else if (AtomPubCMIS.NUM_ITEMS.equals(reader.getName())) {
+                String text = reader.getElementText();
+                try {
+                    setNumItems(feed, Integer.parseInt(text));
+                } catch (NumberFormatException e) {
+                    throw new XMLStreamException("Bad cmisra:numItems: " + e, e);
+                }
             } else {
                 readExtensionElement(ctx, reader, nsUri, feed);
             }
@@ -119,6 +131,12 @@
 
     protected void readAtomElement(ReadContext ctx, StaxReader reader,
             String nsUri, T feed) throws XMLStreamException {
+        if (AtomPub.ATOM_LINK.equals(reader.getName())) {
+            String rel = reader.getAttributeValue(AtomPub.ATOM_NS, "rel");
+            if (AtomPub.LINK_NEXT.equals(rel)) {
+                setHasMoreItems(feed, true);
+            }
+        }
     }
 
     protected void readExtensionElement(ReadContext ctx, StaxReader reader,

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java Fri Nov 20 13:45:27 2009
@@ -17,14 +17,14 @@
  */
 package org.apache.chemistry.atompub.server;
 
-import java.util.Collection;
-
 import org.apache.abdera.model.Feed;
 import org.apache.abdera.protocol.server.RequestContext;
 import org.apache.abdera.protocol.server.Target;
 import org.apache.abdera.protocol.server.context.ResponseContextException;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.atompub.AtomPub;
@@ -62,21 +62,19 @@
             throws ResponseContextException {
         SPI spi = repository.getSPI(); // TODO XXX connection leak
         Target target = request.getTarget();
-        ObjectId folderId = target.getParameter(AtomPubCMIS.PARAM_FOLDER_ID) == null ? null
-                : spi.newObjectId(target.getParameter(AtomPubCMIS.PARAM_FOLDER_ID));
+        String folderIdString = target.getParameter(AtomPubCMIS.PARAM_FOLDER_ID);
+        ObjectId folderId = folderIdString == null ? null
+                : spi.newObjectId(folderIdString);
         String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
-        int maxItems = target.getParameter(AtomPubCMIS.PARAM_MAX_ITEMS) == null ? 0
-                : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_MAX_ITEMS));
-        int skipCount = target.getParameter(AtomPubCMIS.PARAM_SKIP_COUNT) == null ? 0
-                : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_SKIP_COUNT));
-        boolean includeAllowableActions = target.getParameter(AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS) == null ? false
-                : Boolean.parseBoolean(target.getParameter(AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS));
-        boolean includeRelationships = target.getParameter(AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS) == null ? false
-                : Boolean.parseBoolean(target.getParameter(AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS));
-        boolean[] hasMoreItems = new boolean[1];
-        Collection&lt;ObjectEntry&gt; objectEntries = spi.getCheckedOutDocuments(
+        int maxItems = getParameter(request, AtomPubCMIS.PARAM_MAX_ITEMS, 0);
+        int skipCount = getParameter(request, AtomPubCMIS.PARAM_SKIP_COUNT, 0);
+        boolean includeAllowableActions = getParameter(request,
+                AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS, false);
+        boolean includeRelationships = getParameter(request,
+                AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS, false);
+        ListPage&lt;ObjectEntry&gt; objectEntries = spi.getCheckedOutDocuments(
                 folderId, filter, includeAllowableActions,
-                includeRelationships, maxItems, skipCount, hasMoreItems);
+                includeRelationships, new Paging(maxItems, skipCount));
         return objectEntries;
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java Fri Nov 20 13:45:27 2009
@@ -17,19 +17,30 @@
  */
 package org.apache.chemistry.atompub.server;
 
+import java.util.Date;
 import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
+import org.apache.abdera.i18n.iri.IRI;
+import org.apache.abdera.model.Entry;
 import org.apache.abdera.model.Feed;
+import org.apache.abdera.parser.stax.FOMFeed;
 import org.apache.abdera.protocol.server.RequestContext;
+import org.apache.abdera.protocol.server.ResponseContext;
 import org.apache.abdera.protocol.server.Target;
 import org.apache.abdera.protocol.server.context.ResponseContextException;
+import org.apache.axiom.om.OMElement;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Property;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.atompub.AtomPub;
 import org.apache.chemistry.atompub.AtomPubCMIS;
+import org.apache.chemistry.impl.simple.SimpleListPage;
 
 /**
  * CMIS Collection for the children of an object.
@@ -41,12 +52,23 @@
     }
 
     /*
-     * ----- AbstractCollectionAdapter -----
+     * ----- AbstractEntityCollectionAdapter -----
      */
 
     @Override
-    protected Feed createFeedBase(RequestContext request)
-            throws ResponseContextException {
+    public ResponseContext getFeed(RequestContext request) {
+        try {
+            ListPage&lt;ObjectEntry&gt; entries = getEntries(request);
+            Feed feed = createFeedBase(entries, request);
+            addFeedDetails(feed, entries, request);
+            return buildGetFeedResponse(feed);
+        } catch (ResponseContextException e) {
+            return createErrorResponse(e);
+        }
+    }
+
+    protected Feed createFeedBase(ListPage&lt;ObjectEntry&gt; entries,
+            RequestContext request) throws ResponseContextException {
         Feed feed = super.createFeedBase(request);
 
         feed.addLink(getChildrenLink(id, request), AtomPub.LINK_SELF,
@@ -66,46 +88,91 @@
         }
         spi.close();
 
-        // RFC 5005 paging
+        // AtomPub paging
+        // next
+        if (entries.getHasMoreItems()) {
+            // find next skipCount
+            int skipCount = getParameter(request, AtomPubCMIS.PARAM_SKIP_COUNT,
+                    0);
+            skipCount += entries.size();
+            // compute new URI
+            String uri = request.getUri().toString();
+            Pattern pat = Pattern.compile("(.*[?&amp;]"
+                    + AtomPubCMIS.PARAM_SKIP_COUNT + "=)(-?[0-9]+)(.*)");
+            Matcher m = pat.matcher(uri);
+            if (m.matches()) {
+                uri = m.group(1) + skipCount + m.group(3);
+            } else {
+                // unexpected URI...
+            }
+            feed.addLink(uri, AtomPub.LINK_NEXT, AtomPub.MEDIA_TYPE_ATOM_FEED,
+                    null, null, -1);
+        }
+        // TODO prev, first, last
+
+        // CMIS paging: numItems
+        int numItems = entries.getNumItems();
+        if (numItems != -1) {
+            FOMFeed fomFeed = (FOMFeed) feed;
+            OMElement el = fomFeed.getOMFactory().createOMElement(
+                    AtomPubCMIS.NUM_ITEMS);
+            el.setText(Integer.toString(numItems));
+            fomFeed.addChild(el);
+        }
+
         return feed;
     }
 
-    /*
-     * ----- AbstractEntityCollectionAdapter -----
-     */
+    protected void addFeedDetails(Feed feed, ListPage&lt;ObjectEntry&gt; entries,
+            RequestContext request) throws ResponseContextException {
+        feed.setUpdated(new Date()); // TODO
+        if (entries != null) {
+            for (ObjectEntry entryObj : entries) {
+                Entry e = feed.addEntry();
+                IRI feedIri = new IRI(getFeedIriForEntry(entryObj, request));
+                addEntryDetails(request, e, feedIri, entryObj);
+
+                if (isMediaEntry(entryObj)) {
+                    addMediaContent(feedIri, e, entryObj, request);
+                } else {
+                    addContent(e, entryObj, request);
+                }
+            }
+        }
+    }
 
     @Override
-    public Iterable&lt;ObjectEntry&gt; getEntries(RequestContext request)
+    public ListPage&lt;ObjectEntry&gt; getEntries(RequestContext request)
             throws ResponseContextException {
         SPI spi = repository.getSPI(); // TODO XXX connection leak
         ObjectId objectId = spi.newObjectId(id);
         Target target = request.getTarget();
         String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
-        boolean includeAllowableActions = target.getParameter(AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS) == null ? false
-                : Boolean.parseBoolean(target.getParameter(AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS));
-        boolean includeRelationships = target.getParameter(AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS) == null ? false
-                : Boolean.parseBoolean(target.getParameter(AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS));
+        boolean includeAllowableActions = getParameter(request,
+                AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS, false);
+        boolean includeRelationships = getParameter(request,
+                AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS, false);
         // TODO proper renditionFilter use
         boolean includeRenditions = target.getParameter(AtomPubCMIS.PARAM_RENDITION_FILTER) == null ? false
                 : true;
         String orderBy = target.getParameter(AtomPubCMIS.PARAM_ORDER_BY);
         if ("descendants".equals(getType())) {
-            int depth = target.getParameter(AtomPubCMIS.PARAM_DEPTH) == null ? 1
-                    : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_DEPTH));
+            int depth = getParameter(request, AtomPubCMIS.PARAM_DEPTH, 1);
             List&lt;ObjectEntry&gt; descendants = spi.getDescendants(objectId, depth,
                     filter, includeAllowableActions, includeRelationships,
                     includeRenditions, orderBy);
-            return descendants;
+            SimpleListPage&lt;ObjectEntry&gt; page = new SimpleListPage&lt;ObjectEntry&gt;(
+                    descendants);
+            page.setHasMoreItems(false);
+            page.setNumItems(page.size());
+            return page;
         } else {
-            int maxItems = target.getParameter(AtomPubCMIS.PARAM_MAX_ITEMS) == null ? 0
-                    : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_MAX_ITEMS));
-            int skipCount = target.getParameter(AtomPubCMIS.PARAM_SKIP_COUNT) == null ? 0
-                    : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_SKIP_COUNT));
-            boolean[] hasMoreItems = new boolean[1];
-            List&lt;ObjectEntry&gt; children = spi.getChildren(objectId, filter,
+            int maxItems = getParameter(request, AtomPubCMIS.PARAM_MAX_ITEMS, 0);
+            int skipCount = getParameter(request, AtomPubCMIS.PARAM_SKIP_COUNT,
+                    0);
+            ListPage&lt;ObjectEntry&gt; children = spi.getChildren(objectId, filter,
                     includeAllowableActions, includeRelationships,
-                    includeRenditions, maxItems, skipCount, orderBy,
-                    hasMoreItems);
+                    includeRenditions, orderBy, new Paging(maxItems, skipCount));
             return children;
         }
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java Fri Nov 20 13:45:27 2009
@@ -56,6 +56,21 @@
     }
 
     /*
+     * ----- Helpers -----
+     */
+
+    public static int getParameter(RequestContext request, String name, int def) {
+        String value = request.getTarget().getParameter(name);
+        return value == null ? def : Integer.parseInt(value);
+    }
+
+    public static boolean getParameter(RequestContext request, String name,
+            boolean def) {
+        String value = request.getTarget().getParameter(name);
+        return value == null ? def : Boolean.parseBoolean(value);
+    }
+
+    /*
      * ----- Transactional -----
      */
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISQueryFeed.java Fri Nov 20 13:45:27 2009
@@ -16,8 +16,6 @@
  */
 package org.apache.chemistry.atompub.server;
 
-import java.util.Collection;
-
 import org.apache.abdera.model.Element;
 import org.apache.abdera.protocol.server.ProviderHelper;
 import org.apache.abdera.protocol.server.RequestContext;
@@ -25,7 +23,9 @@
 import org.apache.abdera.protocol.server.TargetType;
 import org.apache.abdera.protocol.server.context.ResponseContextException;
 import org.apache.axiom.om.OMDocument;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.atompub.AtomPubCMIS;
@@ -99,11 +99,9 @@
         boolean includeRenditions = false;
         int maxItems = -1;
         int skipCount = 0;
-        boolean[] hasMoreItems = new boolean[1];
-        Collection&lt;ObjectEntry&gt; results = spi.query(statement,
-                searchAllVersions, includeAllowableActions,
-                includeRelationships, includeRenditions, maxItems, skipCount,
-                hasMoreItems);
+        ListPage&lt;ObjectEntry&gt; results = spi.query(statement, searchAllVersions,
+                includeAllowableActions, includeRelationships,
+                includeRenditions, new Paging(maxItems, skipCount));
         return results;
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java Fri Nov 20 13:45:27 2009
@@ -65,6 +65,8 @@
 
     public static final QName CHILDREN = CMISRAName("children");
 
+    public static final QName NUM_ITEMS = CMISRAName("numItems");
+
     public static final QName CONTENT = CMISRAName("content");
 
     public static final QName BASE64 = CMISRAName("base64");

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java Fri Nov 20 13:45:27 2009
@@ -23,7 +23,6 @@
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -47,8 +46,10 @@
 import org.apache.chemistry.ContentStreamPresence;
 import org.apache.chemistry.Document;
 import org.apache.chemistry.Folder;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Policy;
 import org.apache.chemistry.Property;
 import org.apache.chemistry.PropertyDefinition;
@@ -162,9 +163,8 @@
      */
     protected void accumulateFolders(ObjectId folder, int depth, String filter,
             boolean includeAllowableActions, List&lt;ObjectEntry&gt; list) {
-        List&lt;ObjectEntry&gt; children = getChildren(folder, filter,
-                includeAllowableActions, false, false, Integer.MAX_VALUE, 0,
-                null, new boolean[1]);
+        ListPage&lt;ObjectEntry&gt; children = getChildren(folder, filter,
+                includeAllowableActions, false, false, null, null);
         for (ObjectEntry child : children) {
             if (child.getBaseType() != BaseType.FOLDER) {
                 continue;
@@ -196,8 +196,7 @@
         // TODO deal with paging properly
         List&lt;ObjectEntry&gt; children = getChildren(folder, filter,
                 includeAllowableActions, includeRelationships,
-                includeRenditions, Integer.MAX_VALUE, 0, orderBy,
-                new boolean[1]);
+                includeRenditions, orderBy, null);
         for (ObjectEntry child : children) {
             list.add(child);
             if (depth &gt; 1 &amp;&amp; child.getBaseType() == BaseType.FOLDER) {
@@ -218,10 +217,9 @@
         return list;
     }
 
-    public List&lt;ObjectEntry&gt; getChildren(ObjectId folder, String filter,
+    public ListPage&lt;ObjectEntry&gt; getChildren(ObjectId folder, String filter,
             boolean includeAllowableActions, boolean includeRelationships,
-            boolean includeRenditions, int maxItems, int skipCount,
-            String orderBy, boolean[] hasMoreItems) {
+            boolean includeRenditions, String orderBy, Paging paging) {
         // TODO orderBy
         Set&lt;String&gt; ids = repository.children.get(folder.getId());
         List&lt;ObjectEntry&gt; all = new ArrayList&lt;ObjectEntry&gt;(ids.size());
@@ -229,33 +227,42 @@
             SimpleData data = repository.datas.get(id);
             all.add(new SimpleObjectEntry(data, this));
         }
-        return subList(all, maxItems, skipCount, hasMoreItems);
+        return getListPage(all, paging);
     }
 
     /**
-     * Extracts part of a list according to given parameters.
+     * Extracts part of a list according to given paging parameters.
+     *
+     * @param all the complete list
+     * @param paging the paging info, which may be {@code null}
+     * @return the page
      */
-    protected static List&lt;ObjectEntry&gt; subList(List&lt;ObjectEntry&gt; all,
-            int maxItems, int skipCount, boolean[] hasMoreItems) {
+    public static ListPage&lt;ObjectEntry&gt; getListPage(List&lt;ObjectEntry&gt; all,
+            Paging paging) {
         int total = all.size();
-        int fromIndex = skipCount;
+        int fromIndex = paging == null ? 0 : paging.skipCount;
         if (fromIndex &lt; 0 || fromIndex &gt; total) {
-            hasMoreItems[0] = false;
-            return Collections.emptyList();
+            return SimpleListPage.emptyList();
         }
+        int maxItems = paging == null ? -1 : paging.maxItems;
         if (maxItems &lt;= 0) {
             maxItems = total;
         }
-        int toIndex = skipCount + maxItems;
+        int toIndex = fromIndex + maxItems;
         if (toIndex &gt; total) {
             toIndex = total;
         }
-        hasMoreItems[0] = toIndex &lt; total;
+        List&lt;ObjectEntry&gt; slice;
         if (fromIndex == 0 &amp;&amp; toIndex == total) {
-            return all;
+            slice = all;
         } else {
-            return all.subList(fromIndex, toIndex);
+            slice = all.subList(fromIndex, toIndex);
         }
+        SimpleListPage&lt;ObjectEntry&gt; page;
+        page = new SimpleListPage&lt;ObjectEntry&gt;(slice);
+        page.setHasMoreItems(toIndex &lt; total);
+        page.setNumItems(total);
+        return page;
     }
 
     public ObjectEntry getFolderParent(ObjectId folder, String filter) {
@@ -294,10 +301,9 @@
         return parents;
     }
 
-    public Collection&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folder,
+    public ListPage&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folder,
             String filter, boolean includeAllowableActions,
-            boolean includeRelationships, int maxItems, int skipCount,
-            boolean[] hasMoreItems) {
+            boolean includeRelationships, Paging paging) {
         // TODO Auto-generated method stub
         throw new UnsupportedOperationException();
     }
@@ -551,9 +557,9 @@
         }
     }
 
-    public List&lt;Rendition&gt; getRenditions(ObjectId object, String filter,
-            int maxItems, int skipCount) {
-        return Collections.emptyList();
+    public ListPage&lt;Rendition&gt; getRenditions(ObjectId object, String filter,
+            Paging paging) {
+        return SimpleListPage.emptyList();
     }
 
     public boolean hasContentStream(ObjectId document) {
@@ -731,10 +737,10 @@
      * ----- Discovery Services -----
      */
 
-    public Collection&lt;ObjectEntry&gt; query(String statement,
+    public ListPage&lt;ObjectEntry&gt; query(String statement,
             boolean searchAllVersions, boolean includeAllowableActions,
             boolean includeRelationships, boolean includeRenditions,
-            int maxItems, int skipCount, boolean[] hasMoreItems) {
+            Paging paging) {
         // this implementation doesn't try to be very efficient...
         List&lt;ObjectEntry&gt; all = new ArrayList&lt;ObjectEntry&gt;();
         String tableName = null;
@@ -757,7 +763,7 @@
                 all.add(new SimpleObjectEntry(data, this));
             }
         }
-        return subList(all, maxItems, skipCount, hasMoreItems);
+        return getListPage(all, paging);
     }
 
     protected boolean typeMatches(String tableName, String typeId) {
@@ -792,9 +798,8 @@
 
     public Collection&lt;CMISObject&gt; query(String statement,
             boolean searchAllVersions) {
-        boolean[] hasMoreItems = new boolean[1];
-        Collection&lt;ObjectEntry&gt; res = query(statement, searchAllVersions,
-                false, false, false, 0, 0, hasMoreItems);
+        ListPage&lt;ObjectEntry&gt; res = query(statement, searchAllVersions, false,
+                false, false, null);
         List&lt;CMISObject&gt; objects = new ArrayList&lt;CMISObject&gt;(res.size());
         for (ObjectEntry e : res) {
             objects.add(SimpleObject.construct((SimpleObjectEntry) e));
@@ -802,12 +807,11 @@
         return objects;
     }
 
-    public Iterator&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
-            boolean includeProperties, int maxItems, boolean[] hasMoreItems,
+    public ListPage&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
+            boolean includeProperties, Paging paging,
             String[] latestChangeLogToken) {
-        hasMoreItems[0] = false;
         latestChangeLogToken[0] = null;
-        return Collections.&lt;ObjectEntry&gt; emptyList().iterator();
+        return SimpleListPage.emptyList();
     }
 
     /*
@@ -847,11 +851,10 @@
      * ----- Relationship Services -----
      */
 
-    public List&lt;ObjectEntry&gt; getRelationships(ObjectId object,
+    public ListPage&lt;ObjectEntry&gt; getRelationships(ObjectId object,
             RelationshipDirection direction, String typeId,
             boolean includeSubRelationshipTypes, String filter,
-            String includeAllowableActions, int maxItems, int skipCount,
-            boolean[] hasMoreItems) {
+            String includeAllowableActions, Paging paging) {
         // TODO Auto-generated method stub
         throw new UnsupportedOperationException();
     }

Added: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleListPage.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleListPage.java?rev=882549&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleListPage.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleListPage.java Fri Nov 20 13:45:27 2009
@@ -0,0 +1,124 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry.impl.simple;
+
+import java.io.Serializable;
+import java.util.AbstractList;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.RandomAccess;
+
+import org.apache.chemistry.ListPage;
+
+/**
+ * A simple implementation of {@link ListPage} based on {@link ArrayList}.
+ */
+public class SimpleListPage&lt;T&gt; extends ArrayList&lt;T&gt; implements ListPage&lt;T&gt; {
+
+    private static final long serialVersionUID = 1L;
+
+    @SuppressWarnings("unchecked")
+    private static final ListPage EMPTY_LIST = new EmptyPagedList();
+
+    @SuppressWarnings("unchecked")
+    public static final &lt;T&gt; ListPage&lt;T&gt; emptyList() {
+        return (ListPage&lt;T&gt;) EMPTY_LIST;
+    }
+
+    private static class EmptyPagedList&lt;T&gt; extends AbstractList&lt;T&gt; implements
+            ListPage&lt;T&gt;, RandomAccess, Serializable {
+
+        private static final long serialVersionUID = 1L;
+
+        @Override
+        public int size() {
+            return 0;
+        }
+
+        @Override
+        public boolean contains(Object obj) {
+            return false;
+        }
+
+        @Override
+        public T get(int index) {
+            throw new IndexOutOfBoundsException(Integer.toString(index));
+        }
+
+        // singleton
+        private Object readResolve() {
+            return EMPTY_LIST;
+        }
+
+        public boolean getHasMoreItems() {
+            return false;
+        }
+
+        public int getNumItems() {
+            return 0;
+        }
+    }
+
+    protected boolean hasMoreItems;
+
+    protected int numItems = -1;
+
+    /**
+     * @see ArrayList#ArrayList()
+     */
+    public SimpleListPage() {
+        super();
+    }
+
+    /**
+     * @see ArrayList#ArrayList(int)
+     */
+    public SimpleListPage(int initialCapacity) {
+        super(initialCapacity);
+    }
+
+    /**
+     * @see ArrayList#ArrayList(Collection)
+     */
+    public SimpleListPage(Collection&lt;? extends T&gt; collection) {
+        super(collection);
+    }
+
+    public boolean getHasMoreItems() {
+        return hasMoreItems;
+    }
+
+    public int getNumItems() {
+        return numItems;
+    }
+
+    /**
+     * Sets whether the underlying collection has more items (skipped due to
+     * paging) after those included in the list.
+     */
+    public void setHasMoreItems(boolean hasMoreItems) {
+        this.hasMoreItems = hasMoreItems;
+    }
+
+    /**
+     * Sets the total number of items in the list (ignoring any paging).
+     */
+    public void setNumItems(int numItems) {
+        this.numItems = numItems;
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleListPage.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleListPage.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java Fri Nov 20 13:45:27 2009
@@ -21,7 +21,6 @@
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
@@ -41,8 +40,10 @@
 import org.apache.chemistry.ContentStream;
 import org.apache.chemistry.Document;
 import org.apache.chemistry.Folder;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Policy;
 import org.apache.chemistry.Relationship;
 import org.apache.chemistry.RelationshipDirection;
@@ -51,6 +52,7 @@
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.Unfiling;
 import org.apache.chemistry.VersioningState;
+import org.apache.chemistry.impl.simple.SimpleListPage;
 import org.apache.chemistry.impl.simple.SimpleObjectId;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -134,9 +136,8 @@
 
     public Collection&lt;CMISObject&gt; query(String statement,
             boolean searchAllVersions) {
-        boolean[] hasMoreItems = new boolean[1];
-        Collection&lt;ObjectEntry&gt; entries = query(statement, searchAllVersions,
-                false, false, false, Integer.MAX_VALUE, 0, hasMoreItems);
+        ListPage&lt;ObjectEntry&gt; entries = query(statement, searchAllVersions,
+                false, false, false, new Paging(Integer.MAX_VALUE, 0));
         List&lt;CMISObject&gt; objects = new ArrayList&lt;CMISObject&gt;(entries.size());
         for (ObjectEntry entry : entries) {
             // cast entries, they are all JcrFolder or JcrDocument
@@ -257,24 +258,18 @@
         throw new UnsupportedOperationException();
     }
 
-    public Collection&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folderId,
+    public ListPage&lt;ObjectEntry&gt; getCheckedOutDocuments(ObjectId folderId,
             String filter, boolean includeAllowableActions,
-            boolean includeRelationships, int maxItems, int skipCount,
-            boolean[] hasMoreItems) {
+            boolean includeRelationships, Paging paging) {
         // TODO Auto-generated method stub
         throw new UnsupportedOperationException();
     }
 
-    public List&lt;ObjectEntry&gt; getChildren(ObjectId folderId, String filter,
+    public ListPage&lt;ObjectEntry&gt; getChildren(ObjectId folderId, String filter,
             boolean includeAllowableActions, boolean includeRelationships,
-            boolean includeRenditions, int maxItems, int skipCount,
-            String orderBy, boolean[] hasMoreItems) {
+            boolean includeRenditions, String orderBy, Paging paging) {
 
         try {
-            if (maxItems == 0) {
-                maxItems = Integer.MAX_VALUE;
-            }
-
             Node node = session.getRootNode();
             String relPath = JcrObjectEntry.getPath(folderId.getId()).substring(
                     1);
@@ -287,12 +282,13 @@
             } else {
                 iter = node.getNodes(filter);
             }
-            /* Problem with skipCount == 0, when there are no more elements */
-            if (iter.hasNext()) {
-                iter.skip(skipCount);
+            if (iter.hasNext() &amp;&amp; paging != null) {
+                iter.skip(paging.skipCount);
             }
 
-            List&lt;ObjectEntry&gt; result = new ArrayList&lt;ObjectEntry&gt;();
+            int maxItems = paging != null &amp;&amp; paging.maxItems != 0 ? paging.maxItems
+                    : Integer.MAX_VALUE;
+            SimpleListPage&lt;ObjectEntry&gt; result = new SimpleListPage&lt;ObjectEntry&gt;();
             while (result.size() &lt; maxItems &amp;&amp; iter.hasNext()) {
                 Node child = iter.nextNode();
                 if (child.isNodeType(JcrConstants.NT_FOLDER)) {
@@ -301,7 +297,8 @@
                     result.add(new JcrDocument(child));
                 }
             }
-            hasMoreItems[0] = iter.hasNext();
+            result.setHasMoreItems(iter.hasNext());
+            result.setNumItems((int) iter.getSize());
             return result;
 
         } catch (RepositoryException e) {
@@ -413,18 +410,16 @@
         throw new UnsupportedOperationException();
     }
 
-    public List&lt;ObjectEntry&gt; getRelationships(ObjectId objectId,
+    public ListPage&lt;ObjectEntry&gt; getRelationships(ObjectId objectId,
             RelationshipDirection direction, String typeId,
             boolean includeSubRelationshipTypes, String filter,
-            String includeAllowableActions, int maxItems, int skipCount,
-            boolean[] hasMoreItems) {
-
-        return Collections.emptyList();
+            String includeAllowableActions, Paging paging) {
+        return SimpleListPage.emptyList();
     }
 
-    public List&lt;Rendition&gt; getRenditions(ObjectId object, String filter,
-            int maxItems, int skipCount) {
-        return Collections.emptyList();
+    public ListPage&lt;Rendition&gt; getRenditions(ObjectId object, String filter,
+            Paging paging) {
+        return SimpleListPage.emptyList();
     }
 
     public boolean hasContentStream(ObjectId document) {
@@ -438,19 +433,22 @@
         throw new UnsupportedOperationException();
     }
 
-    public Collection&lt;ObjectEntry&gt; query(String statement,
+    public ListPage&lt;ObjectEntry&gt; query(String statement,
             boolean searchAllVersions, boolean includeAllowableActions,
             boolean includeRelationships, boolean includeRenditions,
-            int maxItems, int skipCount, boolean[] hasMoreItems) {
+            Paging paging) {
 
         try {
             QueryManager qm = session.getWorkspace().getQueryManager();
             QueryResult qr = qm.createQuery(statement, Query.SQL).execute();
             NodeIterator iter = qr.getNodes();
-            iter.skip(skipCount);
-
-            List&lt;ObjectEntry&gt; result = new ArrayList&lt;ObjectEntry&gt;();
+            if (iter.hasNext() &amp;&amp; paging != null) {
+                iter.skip(paging.skipCount);
+            }
 
+            int maxItems = paging != null &amp;&amp; paging.maxItems != 0 ? paging.maxItems
+                    : Integer.MAX_VALUE;
+            SimpleListPage&lt;ObjectEntry&gt; result = new SimpleListPage&lt;ObjectEntry&gt;();
             while (result.size() &lt; maxItems &amp;&amp; iter.hasNext()) {
                 Node child = iter.nextNode();
                 if (child.isNodeType(JcrConstants.NT_FOLDER)) {
@@ -459,7 +457,8 @@
                     result.add(new JcrDocument(child));
                 }
             }
-            hasMoreItems[0] = iter.hasNext();
+            result.setHasMoreItems(iter.hasNext());
+            result.setNumItems((int) iter.getSize());
             return result;
 
         } catch (RepositoryException e) {
@@ -491,12 +490,11 @@
         throw new UnsupportedOperationException();
     }
 
-    public Iterator&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
-            boolean includeProperties, int maxItems, boolean[] hasMoreItems,
+    public ListPage&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
+            boolean includeProperties, Paging paging,
             String[] latestChangeLogToken) {
-        hasMoreItems[0] = false;
         latestChangeLogToken[0] = null;
-        return Collections.&lt;ObjectEntry&gt; emptyList().iterator();
+        return SimpleListPage.emptyList();
     }
 
     public List&lt;ACE&gt; getACL(ObjectId object, boolean onlyBasicPermissions,

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java?rev=882549&amp;r1=882548&amp;r2=882549&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java Fri Nov 20 13:45:27 2009
@@ -42,8 +42,10 @@
 import org.apache.chemistry.ContentStream;
 import org.apache.chemistry.Document;
 import org.apache.chemistry.Folder;
+import org.apache.chemistry.ListPage;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
+import org.apache.chemistry.Paging;
 import org.apache.chemistry.Property;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.RepositoryCapabilities;
@@ -219,31 +221,47 @@
     }
 
     public void testGetChildren() {
-        boolean[] hasMoreItems = new boolean[1];
         Folder root = conn.getRootFolder();
-        assertEquals(1, spi.getChildren(root, null, true, false, false, 20, 0,
-                null, hasMoreItems).size());
-        assertFalse(hasMoreItems[0]);
+        ListPage&lt;ObjectEntry&gt; page = spi.getChildren(root, null, true, false,
+                false, null, new Paging(20, 0));
+        assertEquals(1, page.size());
+        assertFalse(page.getHasMoreItems());
+        assertEquals(1, page.getNumItems());
+
         ObjectId folder1 = root.getChildren().get(0);
-        assertEquals(2, spi.getChildren(folder1, null, false, false, false, 20,
-                0, null, hasMoreItems).size());
-        assertFalse(hasMoreItems[0]);
-        assertEquals(1, spi.getChildren(folder1, null, false, false, false, 1,
-                0, null, hasMoreItems).size());
-        assertTrue(hasMoreItems[0]);
-        assertEquals(1, spi.getChildren(folder1, null, false, false, false, 1,
-                1, null, hasMoreItems).size());
-        assertFalse(hasMoreItems[0]);
-        List&lt;ObjectEntry&gt; temp = spi.getChildren(folder1, null, false, false,
-                false, 2, 0, null, hasMoreItems);
-        ObjectId folder2 = temp.get(0).getTypeId().equals("fold") ? temp.get(0)
-                : temp.get(1);
-        assertEquals(1, spi.getChildren(folder2, null, false, false, false, 1,
-                1, null, hasMoreItems).size());
-        assertTrue(hasMoreItems[0]);
-        assertEquals(2, spi.getChildren(folder2, null, false, false, false, 2,
-                0, null, hasMoreItems).size());
-        assertTrue(hasMoreItems[0]);
+        page = spi.getChildren(folder1, null, false, false, false, null,
+                new Paging(20, 0));
+        assertEquals(2, page.size());
+        assertFalse(page.getHasMoreItems());
+        assertEquals(2, page.getNumItems());
+
+        page = spi.getChildren(folder1, null, false, false, false, null,
+                new Paging(1, 0));
+        assertEquals(1, page.size());
+        assertTrue(page.getHasMoreItems());
+        assertEquals(2, page.getNumItems());
+
+        page = spi.getChildren(folder1, null, false, false, false, null,
+                new Paging(1, 1));
+        assertEquals(1, page.size());
+        assertFalse(page.getHasMoreItems());
+        assertEquals(2, page.getNumItems());
+
+        page = spi.getChildren(folder1, null, false, false, false, null,
+                new Paging(2, 0));
+        ObjectId folder2 = page.get(0).getTypeId().equals("fold") ? page.get(0)
+                : page.get(1);
+        page = spi.getChildren(folder2, null, false, false, false, null,
+                new Paging(1, 1));
+        assertEquals(1, page.size());
+        assertTrue(page.getHasMoreItems());
+        assertEquals(3, page.getNumItems());
+
+        page = spi.getChildren(folder2, null, false, false, false, null,
+                new Paging(2, 0));
+        assertEquals(2, page.size());
+        assertTrue(page.getHasMoreItems());
+        assertEquals(3, page.getNumItems());
     }
 
     public void testGetFolderTree() {




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r881354 - in /incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src: main/java/org/apache/chemistry/atompub/server/CMISProvider.java test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091117161943.830C823888C5@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091117161943-830C823888C5@eris-apache-org%3e</id>
<updated>2009-11-17T16:19:43Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Tue Nov 17 16:19:43 2009
New Revision: 881354

URL: http://svn.apache.org/viewvc?rev=881354&amp;view=rev
Log:
CMIS-58: fix AtomPub children request with parameters

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java?rev=881354&amp;r1=881353&amp;r2=881354&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
Tue Nov 17 16:19:43 2009
@@ -84,7 +84,8 @@
         // global workpace collections
         targetBuilder.setTemplate(TargetType.TYPE_COLLECTION,
                 "{target_base}/{collection}{-prefix|/|id}");
-        targetResolver.setPattern("/checkedout", TargetType.TYPE_COLLECTION);
+        targetResolver.setPattern("/checkedout(\\?.*)?",
+                TargetType.TYPE_COLLECTION);
         targetResolver.setPattern("/unfiled", TargetType.TYPE_COLLECTION);
         targetResolver.setPattern("/query",
                 CMISQueryFeed.TARGET_TYPE_CMIS_QUERY);
@@ -93,7 +94,7 @@
         // per-object collections
         targetResolver.setPattern("/parents/([^/?]+)",
                 TargetType.TYPE_COLLECTION, "objectid");
-        targetResolver.setPattern("/children/([^/?]+)",
+        targetResolver.setPattern("/children/([^/?]+)(\\?.*)?",
                 TargetType.TYPE_COLLECTION, "objectid");
         targetResolver.setPattern("/descendants/([^/?]+)(\\?.*)?",
                 TargetType.TYPE_COLLECTION, "objectid");

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java?rev=881354&amp;r1=881353&amp;r2=881354&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/test/java/org/apache/chemistry/atompub/server/AtomPubServerTestCase.java
Tue Nov 17 16:19:43 2009
@@ -177,6 +177,13 @@
         Element ch = resp.getDocument().getRoot();
         assertNotNull(ch);
 
+        resp = client.get(base + "/children/"
+                + repository.getInfo().getRootFolderId().getId() + "?"
+                + AtomPubCMIS.PARAM_MAX_ITEMS + "=4");
+        assertEquals(200, resp.getStatus());
+        ch = resp.getDocument().getRoot();
+        assertNotNull(ch);
+
         resp = client.get(base + "/object/" + doc3id);
         assertEquals(200, resp.getStatus());
         Element ob = resp.getDocument().getRoot();




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r880913 - in /incubator/chemistry/trunk/chemistry: chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/ chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/ chemistry-atompub-server/src/main/jav...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091116191523.A31F823889E0@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091116191523-A31F823889E0@eris-apache-org%3e</id>
<updated>2009-11-16T19:15:23Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Mon Nov 16 19:15:22 2009
New Revision: 880913

URL: http://svn.apache.org/viewvc?rev=880913&amp;view=rev
Log:
Better AtomPub descendants link management

Added:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/LinkTest.java
  (with props)
Modified:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
Mon Nov 16 19:15:22 2009
@@ -129,7 +129,8 @@
         APPObjectEntry entry = newObjectEntry(typeId);
         if (folder != null) {
             entry.addLink(AtomPub.LINK_UP,
-                    ((APPFolder) folder).entry.getEditLink());
+                    ((APPFolder) folder).entry.getEditLink(),
+                    AtomPub.MEDIA_TYPE_ATOM_ENTRY);
         }
         return new APPDocument(entry, type);
     }
@@ -143,7 +144,8 @@
         if (folder != null) {
             entry._setValue(Property.PARENT_ID, folder.getId());
             entry.addLink(AtomPub.LINK_UP,
-                    ((APPFolder) folder).entry.getEditLink());
+                    ((APPFolder) folder).entry.getEditLink(),
+                    AtomPub.MEDIA_TYPE_ATOM_ENTRY);
         }
         return new APPFolder(entry, type);
     }
@@ -203,40 +205,23 @@
         return list;
     }
 
-    /**
-     * Accumulates the descendants into a list recursively.
-     *
-     * @param includeRenditions TODO
-     */
-    protected void accumulateDescendants(ObjectId folder, int depth,
-            String filter, boolean includeAllowableActions,
-            boolean includeRelationships, boolean includeRenditions,
-            String orderBy, List&lt;ObjectEntry&gt; list) {
-        // TODO deal with paging properly
-        List&lt;ObjectEntry&gt; children = getChildren(folder, filter,
-                includeAllowableActions, includeRelationships,
-                includeRenditions, Integer.MAX_VALUE, 0, orderBy,
-                new boolean[1]);
-        for (ObjectEntry child : children) {
-            list.add(child);
-            if (depth &gt; 1 &amp;&amp; child.getBaseType() == BaseType.FOLDER) {
-                accumulateDescendants(child, depth - 1, filter,
-                        includeAllowableActions, includeRelationships,
-                        includeRenditions, orderBy, list);
-            }
-        }
-    }
-
-    // TODO use descendants feed
     public List&lt;ObjectEntry&gt; getDescendants(ObjectId folder, int depth,
             String filter, boolean includeAllowableActions,
             boolean includeRelationships, boolean includeRenditions,
             String orderBy) {
         // TODO includeRelationship, includeAllowableActions, orderBy
-        List&lt;ObjectEntry&gt; list = new ArrayList&lt;ObjectEntry&gt;();
-        accumulateDescendants(folder, depth, filter, includeAllowableActions,
-                includeRelationships, includeRenditions, orderBy, list);
-        return list;
+        // TODO filter, includeRenditions
+        String href = getObjectEntry(folder).getLink(AtomPub.LINK_DOWN,
+                AtomPubCMIS.MEDIA_TYPE_CMIS_TREE);
+        Request req = new Request(href);
+        req.setParameter(AtomPubCMIS.PARAM_DEPTH, Integer.toString(depth));
+        Response resp = connector.get(req);
+        if (!resp.isOk()) {
+            throw new ContentManagerException(
+                    "Remote server returned error code: "
+                            + resp.getStatusCode());
+        }
+        return resp.getObjectFeed(new ReadContext(this));
     }
 
     public List&lt;ObjectEntry&gt; getChildren(ObjectId folder, String filter,
@@ -251,7 +236,8 @@
             skipCount = 0;
         }
 
-        String href = getObjectEntry(folder).getLink(AtomPub.LINK_DOWN);
+        String href = getObjectEntry(folder).getLink(AtomPub.LINK_DOWN,
+                AtomPub.MEDIA_TYPE_ATOM_FEED);
         Response resp = connector.get(new Request(href));
         if (!resp.isOk()) {
             throw new ContentManagerException(
@@ -294,7 +280,8 @@
         if (current.getId().equals(rootId)) {
             return null;
         }
-        String href = current.getLink(AtomPub.LINK_UP);
+        String href = current.getLink(AtomPub.LINK_UP,
+                AtomPub.MEDIA_TYPE_ATOM_ENTRY);
         if (href == null) {
             return null;
         }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntry.java
Mon Nov 16 19:15:22 2009
@@ -27,6 +27,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
+import java.util.regex.Pattern;
 
 import javax.xml.namespace.QName;
 
@@ -60,7 +61,42 @@
 
     protected Map&lt;QName, Boolean&gt; allowableActions;
 
-    protected final List&lt;String&gt; links;
+    protected final List&lt;Link&gt; links;
+
+    public static class Link {
+        public final String rel;
+
+        public final String href;
+
+        public final String type;
+
+        public Link(String rel, String href, String type) {
+            this.rel = rel == null ? "" : rel;
+            this.href = href;
+            this.type = canonicalType(type);
+        }
+
+        public static final Pattern TYPE_EQ = Pattern.compile("type=",
+                Pattern.CASE_INSENSITIVE);
+
+        /**
+         * Simplified version of RFC 2045 media type syntax.
+         */
+        public static String canonicalType(String type) {
+            if (type == null) {
+                return null;
+            }
+            type = type.replace("\"", "");
+            type = type.replace(" ", "");
+            type = TYPE_EQ.matcher(type).replaceAll("type=");
+            return type;
+        }
+
+        @Override
+        public String toString() {
+            return "Link(" + rel + ',' + href + ',' + type + ')';
+        }
+    }
 
     public APPObjectEntry(APPConnection connection,
             Map&lt;String, XmlProperty&gt; properties,
@@ -73,12 +109,11 @@
             allowableActions = Collections.unmodifiableMap(allowableActions);
         }
         this.allowableActions = allowableActions;
-        links = new ArrayList&lt;String&gt;();
+        links = new ArrayList&lt;Link&gt;();
     }
 
-    public void addLink(String rel, String href) {
-        links.add(rel == null ? "" : rel);
-        links.add(href);
+    public void addLink(String rel, String href, String type) {
+        links.add(new Link(rel, href, type));
     }
 
     public String[] getLinks() {
@@ -86,9 +121,19 @@
     }
 
     public String getLink(String rel) {
-        for (int i = 0, len = links.size(); i &lt; len; i += 2) {
-            if (rel.equals(links.get(i))) {
-                return links.get(i + 1);
+        for (Link link : links) {
+            if (rel.equals(link.rel)) {
+                return link.href;
+            }
+        }
+        return null;
+    }
+
+    public String getLink(String rel, String type) {
+        String ctype = Link.canonicalType(type);
+        for (Link link : links) {
+            if (rel.equals(link.rel) &amp;&amp; ctype.equals(link.type)) {
+                return link.href;
             }
         }
         return null;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPObjectEntryReader.java
Mon Nov 16 19:15:22 2009
@@ -73,7 +73,8 @@
         if ("link".equals(name)) {
             String rel = reader.getAttributeValue(AtomPub.ATOM_NS, "rel");
             String href = reader.getAttributeValue(AtomPub.ATOM_NS, "href");
-            object.addLink(rel, href);
+            String type = reader.getAttributeValue(AtomPub.ATOM_NS, "type");
+            object.addLink(rel, href, type);
             // } else if ("id".equals(name)) {
             // object.id = new URI(id);
         }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java
Mon Nov 16 19:15:22 2009
@@ -58,7 +58,8 @@
         if ("link".equals(reader.getLocalName())) {
             String rel = reader.getAttributeValue(AtomPub.ATOM_NS, "rel");
             String href = reader.getAttributeValue(AtomPub.ATOM_NS, "href");
-            object.addLink(rel, href);
+            String type = reader.getAttributeValue(AtomPub.ATOM_NS, "type");
+            object.addLink(rel, href, type);
         }
     }
 

Added: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/LinkTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/LinkTest.java?rev=880913&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/LinkTest.java
(added)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/LinkTest.java
Mon Nov 16 19:15:22 2009
@@ -0,0 +1,31 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry.atompub.client;
+
+import junit.framework.TestCase;
+
+import org.apache.chemistry.atompub.client.APPObjectEntry.Link;
+
+public class LinkTest extends TestCase {
+
+    public void testLink() throws Exception {
+        assertNull(Link.canonicalType(null));
+        assertEquals("foo/bar", Link.canonicalType("foo/bar"));
+        assertEquals("foo/bar;type=gee", Link.canonicalType("foo/bar; TYPE = \"gee\""));
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/LinkTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/LinkTest.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
Mon Nov 16 19:15:22 2009
@@ -28,6 +28,7 @@
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.atompub.AtomPub;
+import org.apache.chemistry.atompub.AtomPubCMIS;
 
 /**
  * CMIS Collection for the checked out documents.
@@ -61,17 +62,17 @@
             throws ResponseContextException {
         SPI spi = repository.getSPI(); // TODO XXX connection leak
         Target target = request.getTarget();
-        ObjectId folderId = target.getParameter(PARAM_FOLDER_ID) == null ? null
-                : spi.newObjectId(target.getParameter(PARAM_FOLDER_ID));
-        String filter = target.getParameter(PARAM_FILTER);
-        int maxItems = target.getParameter(PARAM_MAX_ITEMS) == null ? 0
-                : Integer.parseInt(target.getParameter(PARAM_MAX_ITEMS));
-        int skipCount = target.getParameter(PARAM_SKIP_COUNT) == null ? 0
-                : Integer.parseInt(target.getParameter(PARAM_SKIP_COUNT));
-        boolean includeAllowableActions = target.getParameter(PARAM_ALLOWABLE_ACTIONS) ==
null ? false
-                : Boolean.parseBoolean(target.getParameter(PARAM_ALLOWABLE_ACTIONS));
-        boolean includeRelationships = target.getParameter(PARAM_RELATIONSHIPS) == null ?
false
-                : Boolean.parseBoolean(target.getParameter(PARAM_RELATIONSHIPS));
+        ObjectId folderId = target.getParameter(AtomPubCMIS.PARAM_FOLDER_ID) == null ? null
+                : spi.newObjectId(target.getParameter(AtomPubCMIS.PARAM_FOLDER_ID));
+        String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
+        int maxItems = target.getParameter(AtomPubCMIS.PARAM_MAX_ITEMS) == null ? 0
+                : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_MAX_ITEMS));
+        int skipCount = target.getParameter(AtomPubCMIS.PARAM_SKIP_COUNT) == null ? 0
+                : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_SKIP_COUNT));
+        boolean includeAllowableActions = target.getParameter(AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS)
== null ? false
+                : Boolean.parseBoolean(target.getParameter(AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS));
+        boolean includeRelationships = target.getParameter(AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS)
== null ? false
+                : Boolean.parseBoolean(target.getParameter(AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS));
         boolean[] hasMoreItems = new boolean[1];
         Collection&lt;ObjectEntry&gt; objectEntries = spi.getCheckedOutDocuments(
                 folderId, filter, includeAllowableActions,

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
Mon Nov 16 19:15:22 2009
@@ -29,6 +29,7 @@
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.atompub.AtomPub;
+import org.apache.chemistry.atompub.AtomPubCMIS;
 
 /**
  * CMIS Collection for the children of an object.
@@ -79,27 +80,27 @@
         SPI spi = repository.getSPI(); // TODO XXX connection leak
         ObjectId objectId = spi.newObjectId(id);
         Target target = request.getTarget();
-        String filter = target.getParameter(PARAM_FILTER);
-        boolean includeAllowableActions = target.getParameter(PARAM_ALLOWABLE_ACTIONS) ==
null ? false
-                : Boolean.parseBoolean(target.getParameter(PARAM_ALLOWABLE_ACTIONS));
-        boolean includeRelationships = target.getParameter(PARAM_RELATIONSHIPS) == null ?
false
-                : Boolean.parseBoolean(target.getParameter(PARAM_RELATIONSHIPS));
+        String filter = target.getParameter(AtomPubCMIS.PARAM_FILTER);
+        boolean includeAllowableActions = target.getParameter(AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS)
== null ? false
+                : Boolean.parseBoolean(target.getParameter(AtomPubCMIS.PARAM_INCLUDE_ALLOWABLE_ACTIONS));
+        boolean includeRelationships = target.getParameter(AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS)
== null ? false
+                : Boolean.parseBoolean(target.getParameter(AtomPubCMIS.PARAM_INCLUDE_RELATIONSHIPS));
         // TODO proper renditionFilter use
-        boolean includeRenditions = target.getParameter(PARAM_RENDITION_FILTER) == null ?
false
+        boolean includeRenditions = target.getParameter(AtomPubCMIS.PARAM_RENDITION_FILTER)
== null ? false
                 : true;
-        String orderBy = target.getParameter(PARAM_ORDER_BY);
+        String orderBy = target.getParameter(AtomPubCMIS.PARAM_ORDER_BY);
         if ("descendants".equals(getType())) {
-            int depth = target.getParameter(PARAM_DEPTH) == null ? 1
-                    : Integer.parseInt(target.getParameter(PARAM_DEPTH));
+            int depth = target.getParameter(AtomPubCMIS.PARAM_DEPTH) == null ? 1
+                    : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_DEPTH));
             List&lt;ObjectEntry&gt; descendants = spi.getDescendants(objectId, depth,
                     filter, includeAllowableActions, includeRelationships,
                     includeRenditions, orderBy);
             return descendants;
         } else {
-            int maxItems = target.getParameter(PARAM_MAX_ITEMS) == null ? 0
-                    : Integer.parseInt(target.getParameter(PARAM_MAX_ITEMS));
-            int skipCount = target.getParameter(PARAM_SKIP_COUNT) == null ? 0
-                    : Integer.parseInt(target.getParameter(PARAM_SKIP_COUNT));
+            int maxItems = target.getParameter(AtomPubCMIS.PARAM_MAX_ITEMS) == null ? 0
+                    : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_MAX_ITEMS));
+            int skipCount = target.getParameter(AtomPubCMIS.PARAM_SKIP_COUNT) == null ? 0
+                    : Integer.parseInt(target.getParameter(AtomPubCMIS.PARAM_SKIP_COUNT));
             boolean[] hasMoreItems = new boolean[1];
             List&lt;ObjectEntry&gt; children = spi.getChildren(objectId, filter,
                     includeAllowableActions, includeRelationships,

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
Mon Nov 16 19:15:22 2009
@@ -13,7 +13,6 @@
  *
  * Authors:
  *     Florent Guillaume, Nuxeo
- *     AmÃ©lie Avramo
  */
 package org.apache.chemistry.atompub.server;
 
@@ -36,26 +35,6 @@
 public abstract class CMISCollection&lt;T&gt; extends
         AbstractEntityCollectionAdapter&lt;T&gt; {
 
-    protected static final String PARAM_FILTER = "filter";
-
-    protected static final String PARAM_MAX_ITEMS = "maxItems";
-
-    protected static final String PARAM_SKIP_COUNT = "skipCount";
-
-    protected static final String PARAM_ALLOWABLE_ACTIONS = "includeAllowableActions";
-
-    protected static final String PARAM_RELATIONSHIPS = "includeRelationships";
-
-    protected static final String PARAM_RENDITION_FILTER = "renditionFilter";
-
-    protected static final String PARAM_ORDER_BY = "orderBy";
-
-    protected static final String PARAM_DEPTH = "depth";
-
-    protected static final String PARAM_INCLUDE_PATH_SEGMENT = "includePathSegment";
-
-    protected final static String PARAM_FOLDER_ID = "folderId";
-
     protected final String type;
 
     protected final String name;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
Mon Nov 16 19:15:22 2009
@@ -95,7 +95,7 @@
                 TargetType.TYPE_COLLECTION, "objectid");
         targetResolver.setPattern("/children/([^/?]+)",
                 TargetType.TYPE_COLLECTION, "objectid");
-        targetResolver.setPattern("/descendants/([^/?]+)",
+        targetResolver.setPattern("/descendants/([^/?]+)(\\?.*)?",
                 TargetType.TYPE_COLLECTION, "objectid");
         targetResolver.setPattern("/allversions/([^/?]+)",
                 TargetType.TYPE_COLLECTION, "objectid");

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java?rev=880913&amp;r1=880912&amp;r2=880913&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
Mon Nov 16 19:15:22 2009
@@ -13,6 +13,7 @@
  *
  * Authors:
  *     Florent Guillaume, Nuxeo
+ *     AmÃ©lie Avramo
  */
 package org.apache.chemistry.atompub;
 
@@ -112,6 +113,30 @@
             + "rootdescendants";
 
     /*
+     * ----- AtomPub Link Parameters -----
+     */
+
+    public static final String PARAM_FILTER = "filter";
+
+    public static final String PARAM_MAX_ITEMS = "maxItems";
+
+    public static final String PARAM_SKIP_COUNT = "skipCount";
+
+    public static final String PARAM_ORDER_BY = "orderBy";
+
+    public static final String PARAM_DEPTH = "depth";
+
+    public final static String PARAM_FOLDER_ID = "folderId";
+
+    public static final String PARAM_RENDITION_FILTER = "renditionFilter";
+
+    public static final String PARAM_INCLUDE_ALLOWABLE_ACTIONS = "includeAllowableActions";
+
+    public static final String PARAM_INCLUDE_RELATIONSHIPS = "includeRelationships";
+
+    public static final String PARAM_INCLUDE_PATH_SEGMENT = "includePathSegment";
+
+    /*
      * ----- URI Template Types -----
      */
 




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r880876 - /incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091116175348.09D5623889E0@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091116175348-09D5623889E0@eris-apache-org%3e</id>
<updated>2009-11-16T17:53:47Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Mon Nov 16 17:53:47 2009
New Revision: 880876

URL: http://svn.apache.org/viewvc?rev=880876&amp;view=rev
Log:
CMIS-58, CMIS-61: AtomPub proper parameter parsing for children and descendants, fix descendants
collection

Added:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
  (with props)
Modified:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java

Added: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java?rev=880876&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
(added)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
Mon Nov 16 17:53:47 2009
@@ -0,0 +1,82 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ *     AmÃ©lie Avramo
+ */
+package org.apache.chemistry.atompub.server;
+
+import java.util.Collection;
+
+import org.apache.abdera.model.Feed;
+import org.apache.abdera.protocol.server.RequestContext;
+import org.apache.abdera.protocol.server.Target;
+import org.apache.abdera.protocol.server.context.ResponseContextException;
+import org.apache.chemistry.ObjectEntry;
+import org.apache.chemistry.ObjectId;
+import org.apache.chemistry.Repository;
+import org.apache.chemistry.SPI;
+import org.apache.chemistry.atompub.AtomPub;
+
+/**
+ * CMIS Collection for the checked out documents.
+ */
+public class CMISCheckedOutCollection extends CMISObjectsCollection {
+
+    public CMISCheckedOutCollection(Repository repository) {
+        super("checkedout", null, null, repository);
+    }
+
+    /*
+     * ----- AbstractCollectionAdapter -----
+     */
+
+    @Override
+    protected Feed createFeedBase(RequestContext request)
+            throws ResponseContextException {
+        Feed feed = super.createFeedBase(request);
+        feed.addLink(getCheckedOutLink(request), AtomPub.LINK_SELF,
+                AtomPub.MEDIA_TYPE_ATOM_FEED, null, null, -1);
+        // RFC 5005 paging
+        return feed;
+    }
+
+    /*
+     * ----- AbstractEntityCollectionAdapter -----
+     */
+
+    @Override
+    public Iterable&lt;ObjectEntry&gt; getEntries(RequestContext request)
+            throws ResponseContextException {
+        SPI spi = repository.getSPI(); // TODO XXX connection leak
+        Target target = request.getTarget();
+        ObjectId folderId = target.getParameter(PARAM_FOLDER_ID) == null ? null
+                : spi.newObjectId(target.getParameter(PARAM_FOLDER_ID));
+        String filter = target.getParameter(PARAM_FILTER);
+        int maxItems = target.getParameter(PARAM_MAX_ITEMS) == null ? 0
+                : Integer.parseInt(target.getParameter(PARAM_MAX_ITEMS));
+        int skipCount = target.getParameter(PARAM_SKIP_COUNT) == null ? 0
+                : Integer.parseInt(target.getParameter(PARAM_SKIP_COUNT));
+        boolean includeAllowableActions = target.getParameter(PARAM_ALLOWABLE_ACTIONS) ==
null ? false
+                : Boolean.parseBoolean(target.getParameter(PARAM_ALLOWABLE_ACTIONS));
+        boolean includeRelationships = target.getParameter(PARAM_RELATIONSHIPS) == null ?
false
+                : Boolean.parseBoolean(target.getParameter(PARAM_RELATIONSHIPS));
+        boolean[] hasMoreItems = new boolean[1];
+        Collection&lt;ObjectEntry&gt; objectEntries = spi.getCheckedOutDocuments(
+                folderId, filter, includeAllowableActions,
+                includeRelationships, maxItems, skipCount, hasMoreItems);
+        return objectEntries;
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCheckedOutCollection.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java?rev=880876&amp;r1=880875&amp;r2=880876&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISChildrenCollection.java
Mon Nov 16 17:53:47 2009
@@ -13,6 +13,7 @@
  *
  * Authors:
  *     Florent Guillaume, Nuxeo
+ *     AmÃ©lie Avramo
  */
 package org.apache.chemistry.atompub.server;
 
@@ -20,6 +21,7 @@
 
 import org.apache.abdera.model.Feed;
 import org.apache.abdera.protocol.server.RequestContext;
+import org.apache.abdera.protocol.server.Target;
 import org.apache.abdera.protocol.server.context.ResponseContextException;
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
@@ -75,11 +77,36 @@
     public Iterable&lt;ObjectEntry&gt; getEntries(RequestContext request)
             throws ResponseContextException {
         SPI spi = repository.getSPI(); // TODO XXX connection leak
-        boolean[] hasMoreItems = new boolean[1];
         ObjectId objectId = spi.newObjectId(id);
-        List&lt;ObjectEntry&gt; children = spi.getChildren(objectId, null, false,
-                false, false, 0, 0, null, hasMoreItems);
-        return children;
+        Target target = request.getTarget();
+        String filter = target.getParameter(PARAM_FILTER);
+        boolean includeAllowableActions = target.getParameter(PARAM_ALLOWABLE_ACTIONS) ==
null ? false
+                : Boolean.parseBoolean(target.getParameter(PARAM_ALLOWABLE_ACTIONS));
+        boolean includeRelationships = target.getParameter(PARAM_RELATIONSHIPS) == null ?
false
+                : Boolean.parseBoolean(target.getParameter(PARAM_RELATIONSHIPS));
+        // TODO proper renditionFilter use
+        boolean includeRenditions = target.getParameter(PARAM_RENDITION_FILTER) == null ?
false
+                : true;
+        String orderBy = target.getParameter(PARAM_ORDER_BY);
+        if ("descendants".equals(getType())) {
+            int depth = target.getParameter(PARAM_DEPTH) == null ? 1
+                    : Integer.parseInt(target.getParameter(PARAM_DEPTH));
+            List&lt;ObjectEntry&gt; descendants = spi.getDescendants(objectId, depth,
+                    filter, includeAllowableActions, includeRelationships,
+                    includeRenditions, orderBy);
+            return descendants;
+        } else {
+            int maxItems = target.getParameter(PARAM_MAX_ITEMS) == null ? 0
+                    : Integer.parseInt(target.getParameter(PARAM_MAX_ITEMS));
+            int skipCount = target.getParameter(PARAM_SKIP_COUNT) == null ? 0
+                    : Integer.parseInt(target.getParameter(PARAM_SKIP_COUNT));
+            boolean[] hasMoreItems = new boolean[1];
+            List&lt;ObjectEntry&gt; children = spi.getChildren(objectId, filter,
+                    includeAllowableActions, includeRelationships,
+                    includeRenditions, maxItems, skipCount, orderBy,
+                    hasMoreItems);
+            return children;
+        }
     }
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java?rev=880876&amp;r1=880875&amp;r2=880876&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
Mon Nov 16 17:53:47 2009
@@ -13,6 +13,7 @@
  *
  * Authors:
  *     Florent Guillaume, Nuxeo
+ *     AmÃ©lie Avramo
  */
 package org.apache.chemistry.atompub.server;
 
@@ -35,6 +36,26 @@
 public abstract class CMISCollection&lt;T&gt; extends
         AbstractEntityCollectionAdapter&lt;T&gt; {
 
+    protected static final String PARAM_FILTER = "filter";
+
+    protected static final String PARAM_MAX_ITEMS = "maxItems";
+
+    protected static final String PARAM_SKIP_COUNT = "skipCount";
+
+    protected static final String PARAM_ALLOWABLE_ACTIONS = "includeAllowableActions";
+
+    protected static final String PARAM_RELATIONSHIPS = "includeRelationships";
+
+    protected static final String PARAM_RENDITION_FILTER = "renditionFilter";
+
+    protected static final String PARAM_ORDER_BY = "orderBy";
+
+    protected static final String PARAM_DEPTH = "depth";
+
+    protected static final String PARAM_INCLUDE_PATH_SEGMENT = "includePathSegment";
+
+    protected final static String PARAM_FOLDER_ID = "folderId";
+
     protected final String type;
 
     protected final String name;
@@ -120,9 +141,9 @@
 
     public String getChildrenLink(String fid, RequestContext request) {
         Map&lt;String, String&gt; params = new HashMap&lt;String, String&gt;();
-        params.put("entrytype", "children");
+        params.put("collection", "children");
         params.put("id", fid);
-        return request.absoluteUrlFor(TargetType.TYPE_ENTRY, params);
+        return request.absoluteUrlFor(TargetType.TYPE_COLLECTION, params);
     }
 
     public String getDescendantsLink(String fid, RequestContext request) {
@@ -134,9 +155,15 @@
 
     public String getParentsLink(String fid, RequestContext request) {
         Map&lt;String, String&gt; params = new HashMap&lt;String, String&gt;();
-        params.put("entrytype", "parents");
+        params.put("collection", "parents");
         params.put("id", fid);
-        return request.absoluteUrlFor(TargetType.TYPE_ENTRY, params);
+        return request.absoluteUrlFor(TargetType.TYPE_COLLECTION, params);
+    }
+
+    public String getCheckedOutLink(RequestContext request) {
+        Map&lt;String, String&gt; params = new HashMap&lt;String, String&gt;();
+        params.put("collection", "checkedout");
+        return request.absoluteUrlFor(TargetType.TYPE_COLLECTION, params);
     }
 
     public String getObjectLink(String id, RequestContext request) {

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java?rev=880876&amp;r1=880875&amp;r2=880876&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
Mon Nov 16 17:53:47 2009
@@ -23,7 +23,6 @@
 import org.apache.abdera.parser.stax.StaxStreamWriter;
 import org.apache.abdera.protocol.server.CollectionInfo;
 import org.apache.abdera.protocol.server.RequestContext;
-import org.apache.abdera.protocol.server.TargetType;
 import org.apache.abdera.protocol.server.WorkspaceInfo;
 import org.apache.abdera.protocol.server.context.StreamWriterResponseContext;
 import org.apache.abdera.writer.StreamWriter;
@@ -32,7 +31,6 @@
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.RepositoryCapabilities;
 import org.apache.chemistry.RepositoryInfo;
-import org.apache.chemistry.atompub.AtomPub;
 import org.apache.chemistry.atompub.AtomPubCMIS;
 import org.apache.chemistry.atompub.URITemplate;
 import org.w3c.dom.Document;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java?rev=880876&amp;r1=880875&amp;r2=880876&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java
Mon Nov 16 17:53:47 2009
@@ -13,6 +13,7 @@
  *
  * Authors:
  *     Florent Guillaume, Nuxeo
+ *     AmÃ©lie Avramo
  */
 package org.apache.chemistry.atompub.server;
 
@@ -43,12 +44,13 @@
         String spath = request.getTargetBasePath();
         String path = spath == null ? uri : uri.substring(spath.length());
         String paths = path + '/';
+
         if (paths.startsWith("/types/")) {
             return new CMISTypesCollection(null, null, repository);
         }
         if (paths.startsWith("/type/")) {
-            return new CMISTypesCollection(AtomPubCMIS.COL_TYPES,
-                    null, repository);
+            return new CMISTypesCollection(AtomPubCMIS.COL_TYPES, null,
+                    repository);
         }
         if (paths.startsWith("/children/")) {
             String id = request.getTarget().getParameter("objectid");
@@ -56,7 +58,7 @@
         }
         if (paths.startsWith("/descendants/")) {
             String id = request.getTarget().getParameter("objectid");
-            return new CMISChildrenCollection(null, id, repository);
+            return new CMISChildrenCollection("descendants", id, repository);
         }
         if (paths.startsWith("/parents/")) {
             String id = request.getTarget().getParameter("objectid");
@@ -75,6 +77,9 @@
         if (paths.startsWith("/unfiled/")) {
             return new CMISCollectionForOther(null, "unfiled", null, repository);
         }
+        if (paths.startsWith("/checkedout/")) {
+            return new CMISCheckedOutCollection(repository);
+        }
         if (paths.startsWith("/query/") || paths.startsWith("/query?")) {
             return new CMISQueryFeed(repository);
         }




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r880745 - in /incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr: JcrCmisMap.java JcrRepository.java</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091116133836.5168B238888E@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091116133836-5168B238888E@eris-apache-org%3e</id>
<updated>2009-11-16T13:38:36Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Mon Nov 16 13:38:35 2009
New Revision: 880745

URL: http://svn.apache.org/viewvc?rev=880745&amp;view=rev
Log:
CMIS-56: add JCR to CMIS mapping helper class

Added:
    incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrCmisMap.java
  (with props)
Modified:
    incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java

Added: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrCmisMap.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrCmisMap.java?rev=880745&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrCmisMap.java
(added)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrCmisMap.java
Mon Nov 16 13:38:35 2009
@@ -0,0 +1,186 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.chemistry.jcr;
+
+import java.util.ArrayList;
+import java.util.Hashtable;
+
+import javax.jcr.Node;
+import javax.jcr.RepositoryException;
+
+import org.apache.chemistry.Property;
+import org.apache.jackrabbit.JcrConstants;
+
+/**
+ * This is a helper class that helps mapping JCR and CMIS properties to each
+ * other.
+ *
+ * @see org.apache.jackrabbit.JcrConstants
+ * @see org.apache.chemistry.Property
+ *
+ * @author Michael Mertins
+ * @author Florent Guillaume
+ */
+public class JcrCmisMap {
+
+    /**
+     * Table of CMIS names to JCR equivalent.
+     */
+    private static Hashtable&lt;String, String&gt; cmisDict = new Hashtable&lt;String, String&gt;();
+    static {
+        cmisDict.put(Property.ID, "jcr:name");
+        cmisDict.put(Property.CREATED_BY, "jcr:uuid");
+        cmisDict.put(Property.CREATION_DATE, "jcr:created");
+        cmisDict.put(Property.TYPE_ID, "jcr:primaryType");
+        cmisDict.put(Property.LAST_MODIFICATION_DATE, "jcr:created");
+    }
+
+    /**
+     * Table of JCR names to CMIS equivalent
+     */
+    private static Hashtable&lt;String, String&gt; jcrDict = new Hashtable&lt;String, String&gt;();
+    static {
+        jcrDict.put("jcr:name", Property.ID);
+        jcrDict.put("jcr:uuid", Property.CREATED_BY);
+        jcrDict.put("jcr:created", Property.CREATION_DATE);
+        jcrDict.put("jcr:primaryType", Property.TYPE_ID);
+        jcrDict.put("jcr:created", Property.LAST_MODIFICATION_DATE);
+    }
+
+    private static ArrayList&lt;String&gt; folderNtList = new ArrayList&lt;String&gt;();
+    static {
+        folderNtList.add(JcrConstants.NT_FOLDER);
+    }
+
+    protected static ArrayList&lt;String&gt; documentNtList = new ArrayList&lt;String&gt;();
+    static {
+        documentNtList.add(JcrConstants.NT_FILE);
+    }
+
+    /**
+     * Converts from CMIS to JCR name.
+     *
+     * @param cmisName the CMIS name
+     * @return the JCR equivalent of the CMIS name
+     */
+    public static String cmisToJcr(String cmisName) {
+        String jcrName = cmisDict.get(cmisName);
+        if (jcrName == null) {
+            jcrName = cmisName;
+        }
+        return jcrName;
+    }
+
+    /**
+     * Converts from JCR to CMIS name.
+     *
+     * @param jcrName the JCR name
+     * @return the CMIS equivalent of the JCR name
+     */
+    public static String jcrToCmis(String jcrName) {
+        String cmisName = jcrDict.get(jcrName);
+        if (cmisName == null) {
+            cmisName = jcrName;
+        }
+        return cmisName;
+    }
+
+    /**
+     * Checks if a JCR node type is a folder.
+     *
+     * @param nodeTypeName the JCR node type name
+     * @return {@code true} if the node type is a folder
+     */
+    public static boolean isBaseTypeFolder(String nodeTypeName) {
+        return folderNtList.contains(nodeTypeName);
+    }
+
+    /**
+     * Checks if a JCR node type is a document.
+     *
+     * @param nodeTypeName the JCR node type name
+     * @return {@code true} if the node type is a document
+     */
+    public static boolean isBaseTypeDocument(String nodeTypeName) {
+        return documentNtList.contains(nodeTypeName);
+    }
+
+    /**
+     * Checks if a JCR node is a document.
+     *
+     * @param node the JCR node
+     * @return {@code true} if the node is a document
+     */
+    public static boolean isNodeDocument(Node node) {
+        for (String nodeTypeName : documentNtList) {
+            try {
+                if (node.isNodeType(nodeTypeName)) {
+                    return true;
+                }
+            } catch (RepositoryException e) {
+                // TODO Auto-generated catch block
+                e.printStackTrace();
+            }
+        }
+        return false;
+    }
+
+    /**
+     * Checks if a JCR name corresponds to a date.
+     */
+    public static boolean isDate(String s) {
+        if (s.equals("jcr:created")) {
+            return true;
+        } else {
+            return false;
+        }
+    }
+
+    /**
+     * Checks if a JCR name corresponds to an integer.
+     */
+    public static boolean isInt(String s) {
+        if (s.equals("whatever")) {
+            return true;
+        } else {
+            return false;
+        }
+    }
+
+    /**
+     * Checks if a JCR name corresponds to a boolean.
+     */
+    public static boolean isBool(String s) {
+        if (s.equals("whatever")) {
+            return true;
+        } else {
+            return false;
+        }
+    }
+
+    /**
+     * Checks if a JCR name is multi-valued.
+     */
+    public static boolean isArray(String s) {
+        if (s.equals("whatever")) {
+            return true;
+        } else {
+            return false;
+        }
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrCmisMap.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrCmisMap.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java?rev=880745&amp;r1=880744&amp;r2=880745&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java
Mon Nov 16 13:38:35 2009
@@ -152,7 +152,7 @@
                     continue;
                 }
                 BaseType baseType = BaseType.FOLDER;
-                if (nodeType.getName().equals(JcrConstants.NT_FILE)) {
+                if (JcrCmisMap.isBaseTypeDocument(nodeType.getName())) {
                     baseType = BaseType.DOCUMENT;
                 }
                 // If typeId is provided, only the specific type and its




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r880738 - /incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091116131919.4118F238888E@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091116131919-4118F238888E@eris-apache-org%3e</id>
<updated>2009-11-16T13:19:19Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Mon Nov 16 13:19:18 2009
New Revision: 880738

URL: http://svn.apache.org/viewvc?rev=880738&amp;view=rev
Log:
CMIS-55: make JCR node types discovered dynamically (by Michael Mertins)

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java?rev=880738&amp;r1=880737&amp;r2=880738&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java
Mon Nov 16 13:19:18 2009
@@ -30,6 +30,7 @@
 import javax.jcr.Session;
 import javax.jcr.SimpleCredentials;
 import javax.jcr.nodetype.NodeType;
+import javax.jcr.nodetype.NodeTypeIterator;
 import javax.jcr.nodetype.NodeTypeManager;
 
 import org.apache.chemistry.CapabilityACL;
@@ -132,7 +133,6 @@
     public List&lt;Type&gt; getTypes(String typeId, int depth,
             boolean returnPropertyDefinitions) {
 
-        // TODO dynamically discover and return types.
         // TODO depth, returnPropertyDefinitions
 
         try {
@@ -144,14 +144,24 @@
 
             Session session = repository.login(creds, workspace);
 
-            // TODO fetch the types only once, include other types
-            NodeTypeManager ntmgr = session.getWorkspace().getNodeTypeManager();
-            result.add(new JcrType(ntmgr.getNodeType("rep:root"),
-                    BaseType.FOLDER));
-            result.add(new JcrType(ntmgr.getNodeType(JcrConstants.NT_FOLDER),
-                    BaseType.FOLDER));
-            result.add(new JcrType(ntmgr.getNodeType(JcrConstants.NT_FILE),
-                    BaseType.DOCUMENT));
+            NodeTypeIterator nodeTypes = session.getWorkspace().getNodeTypeManager().getAllNodeTypes();
+            while (nodeTypes.hasNext()) {
+                NodeType nodeType = nodeTypes.nextNodeType();
+                if (nodeType.isMixin()) {
+                    // Mixing Types will be ignored
+                    continue;
+                }
+                BaseType baseType = BaseType.FOLDER;
+                if (nodeType.getName().equals(JcrConstants.NT_FILE)) {
+                    baseType = BaseType.DOCUMENT;
+                }
+                // If typeId is provided, only the specific type and its
+                // descendants are returned, otherwise all types are returned.
+                if (typeId == null || typeId.equals(baseType.getId())) {
+                    result.add(new JcrType(nodeType, baseType));
+                }
+            }
+
             return result;
         } catch (RepositoryException e) {
             String msg = "Unable to retrieve node types.";




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r880737 - /incubator/chemistry/trunk/chemistry/chemistry-parent/</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091116131822.9A72E238888E@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091116131822-9A72E238888E@eris-apache-org%3e</id>
<updated>2009-11-16T13:18:22Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Mon Nov 16 13:18:22 2009
New Revision: 880737

URL: http://svn.apache.org/viewvc?rev=880737&amp;view=rev
Log:
Add svn:ignore for target/

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-parent/   (props changed)

Propchange: incubator/chemistry/trunk/chemistry/chemistry-parent/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Nov 16 13:18:22 2009
@@ -0,0 +1,6 @@
+bin
+target
+*.iws
+*.ipr
+*.iml
+.*




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r834441 - /incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml</title>
<author><name>gabriele@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091110115133.8143B23888D1@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091110115133-8143B23888D1@eris-apache-org%3e</id>
<updated>2009-11-10T11:51:33Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: gabriele
Date: Tue Nov 10 11:51:32 2009
New Revision: 834441

URL: http://svn.apache.org/viewvc?rev=834441&amp;view=rev
Log:
-- added apache 6 as parent
-- removed distributionManagement specific POM (any issue with hudson?)
-- tested mvn deploy against repository.apache.org

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml?rev=834441&amp;r1=834440&amp;r2=834441&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml Tue Nov 10 11:51:32 2009
@@ -17,7 +17,13 @@
 &lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"&gt;
   &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
-
+  
+  &lt;parent&gt;
+    &lt;groupId&gt;org.apache&lt;/groupId&gt;
+    &lt;artifactId&gt;apache&lt;/artifactId&gt;
+    &lt;version&gt;6&lt;/version&gt;
+  &lt;/parent&gt;
+  	
   &lt;prerequisites&gt;
     &lt;maven&gt;2.0.9&lt;/maven&gt;
   &lt;/prerequisites&gt;
@@ -26,8 +32,10 @@
   &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
   &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;name&gt;Chemistry Parent POM&lt;/name&gt;
+  &lt;description&gt;Parent POM for the Chemistry project gathering all common settings&lt;/description&gt;
+  &lt;inceptionYear&gt;2009&lt;/inceptionYear&gt;
   &lt;packaging&gt;pom&lt;/packaging&gt;
-
+	
   &lt;properties&gt;
     &lt;cxf.version&gt;2.2.2&lt;/cxf.version&gt;
   &lt;/properties&gt;
@@ -238,13 +246,4 @@
     &lt;/repository&gt;
   &lt;/repositories&gt;
 
-  &lt;distributionManagement&gt;
-    &lt;!-- dummy repository, needed by Hudson so that it can override it --&gt;
-    &lt;snapshotRepository&gt;
-      &lt;id&gt;apache.incubator.snapshots&lt;/id&gt;
-      &lt;name&gt;Apache Incubator Snapshots Repository&lt;/name&gt;
-      &lt;url&gt;scp://people.apache.org/www/people.apache.org/repo/m2-incubating-repository&lt;/url&gt;
-    &lt;/snapshotRepository&gt;
-  &lt;/distributionManagement&gt;
-
 &lt;/project&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r833088 - in /incubator/chemistry/trunk: ./ chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/ chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/ chemistry/chemistry-ws/ jcr-cmis/server/atompub/</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091105172859.A7E8A23888D1@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091105172859-A7E8A23888D1@eris-apache-org%3e</id>
<updated>2009-11-05T17:28:59Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Thu Nov  5 17:28:58 2009
New Revision: 833088

URL: http://svn.apache.org/viewvc?rev=833088&amp;view=rev
Log:
Merge from 0.62 branch: Always put multi-valued column reference last in BIN_OP_ANY, Remove
unneeded dependency

Modified:
    incubator/chemistry/trunk/   (props changed)
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite
    incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml
    incubator/chemistry/trunk/jcr-cmis/server/atompub/   (props changed)

Propchange: incubator/chemistry/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Nov  5 17:28:58 2009
@@ -1 +1 @@
-/incubator/chemistry/branches/0.62:812496-825562
+/incubator/chemistry/branches/0.62:812496-833086

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g?rev=833088&amp;r1=833087&amp;r2=833088&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g
Thu Nov  5 17:28:58 2009
@@ -205,9 +205,9 @@
 quantified_in_predicate:
     ANY multi_valued_column_reference
       ( NOT IN LPAR in_value_list RPAR
-          -&gt; ^(BIN_OP_ANY NOT_IN multi_valued_column_reference in_value_list)
+          -&gt; ^(BIN_OP_ANY NOT_IN in_value_list multi_valued_column_reference)
       | IN     LPAR in_value_list RPAR
-          -&gt; ^(BIN_OP_ANY IN     multi_valued_column_reference in_value_list)
+          -&gt; ^(BIN_OP_ANY IN     in_value_list multi_valued_column_reference)
       )
     ;
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite?rev=833088&amp;r1=833087&amp;r2=833088&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite
Thu Nov  5 17:28:58 2009
@@ -91,7 +91,7 @@
 "foo NOT IN ( 1, 2, 3)" -&gt; (BIN_OP NOT_IN (COL foo) (LIST 1 2 3))
 
 quantified_in_predicate:
-"ANY foo IN ('a', 1)" -&gt; (BIN_OP_ANY IN (COL foo) (LIST 'a' 1))
+"ANY foo IN ('a', 1)" -&gt; (BIN_OP_ANY IN (LIST 'a' 1) (COL foo))
 
 comparison_predicate:
 "foo = 1" -&gt; (BIN_OP = (COL foo) 1)

Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml?rev=833088&amp;r1=833087&amp;r2=833088&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml Thu Nov  5 17:28:58 2009
@@ -30,11 +30,6 @@
 
   &lt;dependencies&gt;
     &lt;dependency&gt;
-      &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
-      &lt;artifactId&gt;chemistry-api&lt;/artifactId&gt;
-    &lt;/dependency&gt;
-
-    &lt;dependency&gt;
       &lt;groupId&gt;javax.xml.bind&lt;/groupId&gt;
       &lt;artifactId&gt;jaxb-api&lt;/artifactId&gt;
       &lt;version&gt;2.1&lt;/version&gt;

Propchange: incubator/chemistry/trunk/jcr-cmis/server/atompub/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Nov  5 17:28:58 2009
@@ -1,2 +1,2 @@
-/incubator/chemistry/branches/0.62/jcr-cmis/server/atompub:812496-825562
+/incubator/chemistry/branches/0.62/jcr-cmis/server/atompub:812496-833086
 /incubator/chemistry/trunk/jcr-cmis/server/atompub:770100-770103




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r833064 - /incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091105155017.E70AF23888CD@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091105155017-E70AF23888CD@eris-apache-org%3e</id>
<updated>2009-11-05T15:50:11Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Thu Nov  5 15:49:58 2009
New Revision: 833064

URL: http://svn.apache.org/viewvc?rev=833064&amp;view=rev
Log:
Remove unneeded dependency

Modified:
    incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml?rev=833064&amp;r1=833063&amp;r2=833064&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml Thu Nov  5 15:49:58 2009
@@ -30,11 +30,6 @@
 
   &lt;dependencies&gt;
     &lt;dependency&gt;
-      &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
-      &lt;artifactId&gt;chemistry-api&lt;/artifactId&gt;
-    &lt;/dependency&gt;
-
-    &lt;dependency&gt;
       &lt;groupId&gt;javax.xml.bind&lt;/groupId&gt;
       &lt;artifactId&gt;jaxb-api&lt;/artifactId&gt;
       &lt;version&gt;2.1&lt;/version&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r832516 - in /incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src: main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091103191335.5BEDB238885D@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091103191335-5BEDB238885D@eris-apache-org%3e</id>
<updated>2009-11-03T19:13:34Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Tue Nov  3 19:13:33 2009
New Revision: 832516

URL: http://svn.apache.org/viewvc?rev=832516&amp;view=rev
Log:
Always put multi-valued column reference last in BIN_OP_ANY

Modified:
    incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g
    incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g?rev=832516&amp;r1=832515&amp;r2=832516&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g
(original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/main/antlr3/org/apache/chemistry/cmissql/CmisSqlParser.g
Tue Nov  3 19:13:33 2009
@@ -205,9 +205,9 @@
 quantified_in_predicate:
     ANY multi_valued_column_reference
       ( NOT IN LPAR in_value_list RPAR
-          -&gt; ^(BIN_OP_ANY NOT_IN multi_valued_column_reference in_value_list)
+          -&gt; ^(BIN_OP_ANY NOT_IN in_value_list multi_valued_column_reference)
       | IN     LPAR in_value_list RPAR
-          -&gt; ^(BIN_OP_ANY IN     multi_valued_column_reference in_value_list)
+          -&gt; ^(BIN_OP_ANY IN     in_value_list multi_valued_column_reference)
       )
     ;
 

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite?rev=832516&amp;r1=832515&amp;r2=832516&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite
(original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-commons/src/test/gunit/org/apache/chemistry/cmissql/CmisSql.testsuite
Tue Nov  3 19:13:33 2009
@@ -91,7 +91,7 @@
 "foo NOT IN ( 1, 2, 3)" -&gt; (BIN_OP NOT_IN (COL foo) (LIST 1 2 3))
 
 quantified_in_predicate:
-"ANY foo IN ('a', 1)" -&gt; (BIN_OP_ANY IN (COL foo) (LIST 'a' 1))
+"ANY foo IN ('a', 1)" -&gt; (BIN_OP_ANY IN (LIST 'a' 1) (COL foo))
 
 comparison_predicate:
 "foo = 1" -&gt; (BIN_OP = (COL foo) 1)




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r832378 - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub: client/CMISClient.java test/spec/GetTest.java</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200911.mbox/%3c20091103103056.9164E23888CE@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091103103056-9164E23888CE@eris-apache-org%3e</id>
<updated>2009-11-03T10:30:53Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Tue Nov  3 10:30:45 2009
New Revision: 832378

URL: http://svn.apache.org/viewvc?rev=832378&amp;view=rev
Log:
AtomPub TCK: add objectById test for rootFolderId

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java?rev=832378&amp;r1=832377&amp;r2=832378&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java
Tue Nov  3 10:30:45 2009
@@ -77,7 +77,7 @@
     private ResourceLoader templates = new ResourceLoader("/org/apache/chemistry/tck/atompub/templates/");
 
     private Service cmisService = null;
-    private CMISCapabilities cmisCapabilities = null;
+    private CMISRepositoryInfo cmisRepositoryInfo = null;
 
 
     public CMISClient(Connection connection, String serviceUrl, TCKMessageWriter messageWriter)
{
@@ -111,15 +111,19 @@
         return cmisService;
     }
 
-    public CMISCapabilities getCapabilities() throws Exception {
-        if (cmisCapabilities == null) {
+    public CMISRepositoryInfo getRepositoryInfo() throws Exception {
+        if (cmisRepositoryInfo == null) {
+            // TODO: latestChangeLogToken can't be cached
             Service repo = getRepository();
             Workspace workspace = getWorkspace(repo);
-            CMISRepositoryInfo repoInfo = workspace.getExtension(CMISConstants.REPOSITORY_INFO);
-            Assert.assertNotNull(repoInfo);
-            cmisCapabilities = repoInfo.getCapabilities();
+            cmisRepositoryInfo = workspace.getExtension(CMISConstants.REPOSITORY_INFO);
+            Assert.assertNotNull(cmisRepositoryInfo);
         }
-        return cmisCapabilities;
+        return cmisRepositoryInfo;
+    }
+    
+    public CMISCapabilities getCapabilities() throws Exception {
+        return getRepositoryInfo().getCapabilities();
     }
 
     public Workspace getWorkspace() throws Exception {

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java?rev=832378&amp;r1=832377&amp;r2=832378&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java
Tue Nov  3 10:30:45 2009
@@ -24,6 +24,7 @@
 import org.apache.abdera.model.Entry;
 import org.apache.chemistry.abdera.ext.CMISConstants;
 import org.apache.chemistry.abdera.ext.CMISObject;
+import org.apache.chemistry.abdera.ext.CMISRepositoryInfo;
 import org.apache.chemistry.abdera.ext.CMISUriTemplate;
 import org.apache.chemistry.tck.atompub.TCKTest;
 import org.apache.chemistry.tck.atompub.http.GetRequest;
@@ -85,6 +86,26 @@
         Assert.assertEquals(objectId, documentByIdObject.getObjectId().getStringValue());
     }
 
+    public void testObjectByRootFolderId() throws Exception
+    {
+        CMISRepositoryInfo info = client.getRepositoryInfo();
+        String rootFolderId = info.getRootFolderId();
+        Assert.assertNotNull(rootFolderId);
+
+        // formulate get request via id
+        CMISUriTemplate objectByIdTemplate = client.getObjectByIdUriTemplate(client.getWorkspace());
+        Map&lt;String, Object&gt; variables = new HashMap&lt;String, Object&gt;();
+        variables.put("id", rootFolderId);
+        IRI rootFolderByIdRequest = objectByIdTemplate.generateUri(variables);
+        
+        // get folder
+        Entry rootFolderById = client.getEntry(rootFolderByIdRequest);
+        Assert.assertNotNull(rootFolderById);
+        CMISObject rootFolderObject = rootFolderById.getExtension(CMISConstants.OBJECT);
+        Assert.assertNotNull(rootFolderObject);
+        Assert.assertEquals(rootFolderId, rootFolderObject.getObjectId().getStringValue());
+    }
+    
     public void testObjectByPath() throws Exception
     {
         // construct folder




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r831421 - in /incubator/chemistry/trunk/chemistry: chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/ chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ chemistry-atompub-server/src/mai...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091030184625.29C5023888AD@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091030184625-29C5023888AD@eris-apache-org%3e</id>
<updated>2009-10-30T18:46:24Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Fri Oct 30 18:46:23 2009
New Revision: 831421

URL: http://svn.apache.org/viewvc?rev=831421&amp;view=rev
Log:
Implement update for Simple and AtomPub client/server

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ObjectEntryWriter.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java?rev=831421&amp;r1=831420&amp;r2=831421&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
Fri Oct 30 18:46:23 2009
@@ -60,6 +60,7 @@
 import org.apache.chemistry.atompub.client.connector.Response;
 import org.apache.chemistry.atompub.client.stax.ReadContext;
 import org.apache.chemistry.atompub.client.stax.XmlProperty;
+import org.apache.chemistry.impl.simple.SimpleObjectId;
 
 /**
  *
@@ -167,8 +168,7 @@
     }
 
     public ObjectId newObjectId(String id) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        return new SimpleObjectId(id);
     }
 
     /*
@@ -422,8 +422,20 @@
 
     public ObjectEntry getProperties(ObjectId object, String filter,
             boolean includeAllowableActions, boolean includeRelationships) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        APPObjectEntry current = getObjectEntry(object);
+        String href = current.getLink(AtomPub.LINK_SELF);
+        Response resp = connector.get(new Request(href));
+        if (!resp.isOk()) {
+            if (resp.getStatusCode() == 404) {
+                // object not found, signature says return null
+                return null;
+            }
+            throw new ContentManagerException(
+                    "Remote server returned error code: "
+                            + resp.getStatusCode());
+        }
+        // TODO fill current
+        return (APPObjectEntry) resp.getObject(new ReadContext(this));
     }
 
     public ObjectEntry getObjectByPath(String path, String filter,
@@ -480,6 +492,7 @@
 
     public ObjectId setContentStream(ObjectId document, boolean overwrite,
             ContentStream contentStream) {
+        // LINK_EDIT_MEDIA
         // TODO Auto-generated method stub
         throw new UnsupportedOperationException();
     }
@@ -491,8 +504,26 @@
 
     public ObjectId updateProperties(ObjectId object, String changeToken,
             Map&lt;String, Serializable&gt; properties) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        // make properties into an entry for putObject
+        APPObjectEntry current = getObjectEntry(object);
+        APPObjectEntry update = newObjectEntry(current.getTypeId());
+        for (String key : properties.keySet()) {
+            update._setValue(key, properties.get(key));
+        }
+        update._setValue(Property.ID, object.getId());
+        // TODO proper title
+        update._setValue(Property.NAME, current.getValue(Property.NAME));
+
+        String href = current.getLink(AtomPub.LINK_EDIT);
+        Request req = new Request(href);
+        req.setHeader("Content-Type", AtomPub.MEDIA_TYPE_ATOM_ENTRY);
+        Response resp = connector.putObject(req, update);
+        if (!resp.isOk()) {
+            throw new ContentManagerException(
+                    "Remote server returned error code: "
+                            + resp.getStatusCode());
+        }
+        return (APPObjectEntry) resp.getObject(new ReadContext(this));
     }
 
     public ObjectId moveObject(ObjectId object, ObjectId targetFolder,

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ObjectEntryWriter.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ObjectEntryWriter.java?rev=831421&amp;r1=831420&amp;r2=831421&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ObjectEntryWriter.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ObjectEntryWriter.java
Fri Oct 30 18:46:23 2009
@@ -48,15 +48,7 @@
             xw.start();
             // atom requires an ID to be set even on new created entries ..
             xw.element("id").content("urn:uuid:" + object.getId());
-            // TODO hardcoded title properties...
-            String title = (String) object.getValue("title");
-            if (title == null) {
-                title = (String) object.getValue("dc:title");
-            }
-            if (title == null) {
-                title = (String) object.getValue(Property.NAME);
-            }
-            xw.element("title").content(title);
+            xw.element("title").content((String) object.getValue(Property.NAME));
             xw.element("updated").content(new Date());
             writeContent(object, xw);
             writeCmisObject(object, xw);

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java?rev=831421&amp;r1=831420&amp;r2=831421&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
Fri Oct 30 18:46:23 2009
@@ -52,7 +52,6 @@
 import org.apache.chemistry.ObjectEntry;
 import org.apache.chemistry.ObjectId;
 import org.apache.chemistry.Property;
-import org.apache.chemistry.PropertyDefinition;
 import org.apache.chemistry.Repository;
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.Type;
@@ -172,9 +171,10 @@
                 entry.addLink(getObjectLink(pid, request), AtomPub.LINK_UP,
                         AtomPub.MEDIA_TYPE_ATOM_ENTRY, null, null, -1);
             }
-            // TODO don't add links if no children/decendants
+            // down link always present to be able to add children
             entry.addLink(getChildrenLink(oid, request), AtomPub.LINK_DOWN,
                     AtomPub.MEDIA_TYPE_ATOM_FEED, null, null, -1);
+            // TODO don't add descendants links if no children
             entry.addLink(getDescendantsLink(oid, request), AtomPub.LINK_DOWN,
                     AtomPubCMIS.MEDIA_TYPE_CMIS_TREE, null, null, -1);
         } else if (baseType == BaseType.DOCUMENT) {
@@ -191,41 +191,76 @@
         return link;
     }
 
-    protected static String bool(boolean bool) {
-        return bool ? "true" : "false";
+    // getEntries is abstract, must be implemented
+
+    protected static class PropertiesAndStream {
+        public Map&lt;String, Serializable&gt; properties;
+
+        public InputStream stream;
+
+        public String mimeType;
     }
 
-    // getEntries is abstract, must be implemented
+    /**
+     * Finds properties and stream from entry.
+     *
+     * @param typeId is null for a POST, existing type for a PUT
+     */
+    protected PropertiesAndStream extractCMISProperties(RequestContext request,
+            String typeId) throws ResponseContextException {
+        boolean isNew = typeId == null;
+        Entry entry = getEntryFromRequest(request);
+        if (entry == null || !ProviderHelper.isValidEntry(entry)) {
+            throw new ResponseContextException(400);
+        }
 
-    @Override
-    public ResponseContext postEntry(RequestContext request) {
-        // TODO parameter sourceFolderId
-        // TODO parameter versioningState
-        Entry entry;
-        try {
-            entry = getEntryFromRequest(request);
-        } catch (ResponseContextException e) {
-            return createErrorResponse(e);
+        // get properties and type from entry
+        Map&lt;String, Serializable&gt; properties;
+        Element obb = entry.getFirstChild(AtomPubCMIS.OBJECT);
+        if (obb == null) {
+            // no CMIS object, basic AtomPub post/put
+            properties = new HashMap&lt;String, Serializable&gt;();
+            if (isNew) {
+                typeId = BaseType.DOCUMENT.getId();
+                properties.put(Property.TYPE_ID, typeId);
+            }
+        } else {
+            ObjectElement objectElement = new ObjectElement(obb, repository);
+            try {
+                properties = objectElement.getProperties();
+            } catch (Exception e) { // TODO proper exception
+                throw new ResponseContextException(500, e);
+            }
+            // type
+            String tid = (String) properties.get(Property.TYPE_ID);
+            if (isNew) {
+                // post
+                typeId = tid;
+            } else if (!typeId.equals(tid)) {
+                // mismatched types during put
+                throw new ResponseContextException("Invalid type: " + tid, 500);
+            }
         }
-        if (entry == null /* || !ProviderHelper.isValidEntry(entry) TODO XXX TCK */) {
-            return new EmptyResponseContext(400);
+        Type type = repository.getType(typeId);
+        if (type == null) {
+            throw new ResponseContextException("Unknown type: " + typeId, 500);
         }
 
+        // get stream and its mime type from entry
         InputStream stream;
         String mimeType;
-
         Element cmisContent = entry.getFirstChild(AtomPubCMIS.CONTENT);
         if (cmisContent != null) {
+            // cmisra:content has precedence over atom:content
             Element el = cmisContent.getFirstChild(AtomPubCMIS.MEDIA_TYPE);
             if (el == null) {
-                return createErrorResponse(new ResponseContextException(
-                        "missing cmisra:mediatype", 500));
+                throw new ResponseContextException("missing cmisra:mediatype",
+                        500);
             }
             mimeType = el.getText();
             el = cmisContent.getFirstChild(AtomPubCMIS.BASE64);
             if (el == null) {
-                return createErrorResponse(new ResponseContextException(
-                        "missing cmisra:base64", 500));
+                throw new ResponseContextException("missing cmisra:base64", 500);
             }
             byte[] b64 = el.getText().getBytes(); // no charset, pure ASCII
             stream = new ByteArrayInputStream(Base64.decodeBase64(b64));
@@ -260,8 +295,7 @@
                                 content.getValue().getBytes("UTF-8"));
                     }
                 } catch (IOException e1) {
-                    return createErrorResponse(new ResponseContextException(
-                            "cannot get stream", 500));
+                    throw new ResponseContextException("cannot get stream", 500);
                 }
             } else {
                 stream = null;
@@ -269,99 +303,78 @@
             }
         }
 
-        Map&lt;String, Serializable&gt; properties;
-        Type type;
-        Element obb = entry.getFirstChild(AtomPubCMIS.OBJECT);
-        if (obb != null) {
-            ObjectElement objectElement = new ObjectElement(obb, repository);
-            try {
-                properties = objectElement.getProperties();
-            } catch (Exception e) { // TODO proper exception
-                return createErrorResponse(new ResponseContextException(500, e));
-            }
-            String typeId = (String) properties.get(Property.TYPE_ID);
-            type = repository.getType(typeId);
-            if (type == null) {
-                return createErrorResponse(new ResponseContextException(
-                        "Unknown type: " + typeId, 500));
-            }
-        } else {
-            properties = new HashMap&lt;String, Serializable&gt;();
-            type = repository.getType(BaseType.DOCUMENT.getId());
-        }
-
-        // set Atom-defined properties into entry
-        // TODO hardcoded title properties...
-        PropertyDefinition pdt = type.getPropertyDefinition("title");
-        if (pdt == null) {
-            pdt = type.getPropertyDefinition("dc:title");
-        }
-        if (pdt == null) {
-            pdt = type.getPropertyDefinition(Property.NAME); // mandatory
-        }
+        // set Atom-defined properties into properties
+        // title
         String title = entry.getTitle(); // Atom MUST
-        properties.put(pdt.getId(), title);
+        properties.put(Property.NAME, title);
         // TODO summary
-        // parse the date ourselves, as Abdera's AtomDate loses the timezone
-        Calendar updated;
-        DateTime updatedElement = entry.getUpdatedElement(); // Atom MUST
-        if (updatedElement == null) { // TODO XXX TCK
-            updated = null;
-        } else {
-            updated = GregorianCalendar.fromAtomPub(updatedElement.getText());
-            properties.put(Property.LAST_MODIFICATION_DATE, updated);
+        if (isNew) {
+            // updated
+            // parse the date ourselves, as Abdera's AtomDate loses the timezone
+            DateTime updatedElement = entry.getUpdatedElement(); // Atom MUST
+            if (updatedElement != null) { // TODO XXX TCK
+                Calendar updated = GregorianCalendar.fromAtomPub(updatedElement.getText());
+                properties.put(Property.LAST_MODIFICATION_DATE, updated);
+            }
         }
 
-        SPI spi = repository.getSPI(); // TODO XXX connection leak
-        ObjectId folderId = spi.newObjectId(id);
-        ObjectId objectId;
-        switch (type.getBaseType()) {
-        case DOCUMENT:
-            String filename = (String) properties.get(Property.CONTENT_STREAM_FILE_NAME);
-            ContentStream contentStream;
-            if (stream == null) {
-                contentStream = null;
-            } else {
+        PropertiesAndStream res = new PropertiesAndStream();
+        res.properties = properties;
+        res.stream = stream;
+        res.mimeType = mimeType;
+        return res;
+    }
+
+    @Override
+    public ResponseContext postEntry(RequestContext request) {
+        // TODO parameter sourceFolderId
+        // TODO parameter versioningState
+        try {
+            PropertiesAndStream posted = extractCMISProperties(request, null);
+
+            SPI spi = repository.getSPI(); // TODO XXX connection leak
+            ObjectId folderId = spi.newObjectId(id);
+            ObjectId objectId;
+            String typeId = (String) posted.properties.get(Property.TYPE_ID);
+            BaseType baseType = repository.getType(typeId).getBaseType();
+            switch (baseType) {
+            case DOCUMENT:
+                String filename = (String) posted.properties.get(Property.CONTENT_STREAM_FILE_NAME);
+                ContentStream contentStream;
                 try {
-                    contentStream = new SimpleContentStream(stream, mimeType,
-                            filename);
+                    contentStream = new SimpleContentStream(posted.stream,
+                            posted.mimeType, filename);
                 } catch (IOException e) {
-                    return createErrorResponse(new ResponseContextException(
-                            500, e));
+                    throw new ResponseContextException(500, e);
                 }
-            }
-            VersioningState versioningState = null; // TODO
-            objectId = spi.createDocument(properties, folderId, contentStream,
-                    versioningState);
-            break;
-        case FOLDER:
-            objectId = spi.createFolder(properties, folderId);
-            break;
-        default:
-            throw new UnsupportedOperationException("not implemented: "
-                    + type.getBaseType());
-        }
-
-        ObjectEntry object = spi.getProperties(objectId, null, false, false);
-
-        // prepare the updated entry to return in the response
-        // AbstractEntityCollectionAdapter#getEntryFromCollectionProvider is
-        // package-private...
-        entry = request.getAbdera().getFactory().newEntry();
-        try {
-            // AbstractEntityCollectionAdapter#buildEntry is private...
+                VersioningState versioningState = null; // TODO
+                objectId = spi.createDocument(posted.properties, folderId,
+                        contentStream, versioningState);
+                break;
+            case FOLDER:
+                objectId = spi.createFolder(posted.properties, folderId);
+                break;
+            default:
+                throw new UnsupportedOperationException("not implemented: "
+                        + baseType);
+            }
+
+            // prepare the updated entry to return in the response
+            // AbstractEntityCollectionAdapter#getEntryFromCollectionProvider is
+            // package-private...
+            Entry entry = request.getAbdera().getFactory().newEntry();
+            ObjectEntry object = spi.getProperties(objectId, null, false, false);
             addEntryDetails(request, entry, null, object);
             if (isMediaEntry(object)) {
-                IRI feedIri = null;
-                addMediaContent(feedIri, entry, object, request);
+                addMediaContent(null, entry, object, request);
             } else {
                 addContent(entry, object, request);
             }
+            String link = getObjectLink(object.getId(), request);
+            return buildCreateEntryResponse(link, entry);
         } catch (ResponseContextException e) {
             return createErrorResponse(e);
         }
-        String link = getObjectLink(object.getId(), request);
-        return buildCreateEntryResponse(link, entry);
     }
 
     // unused but abstract in parent...
@@ -373,6 +386,57 @@
     }
 
     @Override
+    public ResponseContext putEntry(RequestContext request) {
+        try {
+            // existing object
+            String id = getResourceName(request);
+            SPI spi = repository.getSPI(); // TODO XXX connection leak
+            ObjectEntry object = spi.getProperties(spi.newObjectId(id), null,
+                    false, false);
+            if (object == null) {
+                return new EmptyResponseContext(404);
+            }
+
+            PropertiesAndStream put = extractCMISProperties(request,
+                    object.getTypeId());
+
+            // update entry
+            String changeToken = null; // TODO
+            spi.updateProperties(object, changeToken, put.properties);
+            if (put.stream != null) {
+                String filename = (String) put.properties.get(Property.CONTENT_STREAM_FILE_NAME);
+                if (filename == null) {
+                    filename = (String) object.getValue(Property.CONTENT_STREAM_FILE_NAME);
+                }
+                ContentStream contentStream;
+                try {
+                    contentStream = new SimpleContentStream(put.stream,
+                            put.mimeType, filename);
+                } catch (IOException e) {
+                    throw new ResponseContextException(500, e);
+                }
+                spi.setContentStream(object, true, contentStream);
+            }
+
+            // build response
+            Entry entry = request.getAbdera().getFactory().newEntry();
+            // refetch full object
+            object = spi.getProperties(object, null, false, false);
+            addEntryDetails(request, entry, null, object);
+            if (isMediaEntry(object)) {
+                addMediaContent(null, entry, object, request);
+            } else {
+                addContent(entry, object, request);
+            }
+            return buildGetEntryResponse(request, entry);
+
+        } catch (ResponseContextException e) {
+            return createErrorResponse(e);
+        }
+    }
+
+    // unused but abstract in parent...
+    @Override
     public void putEntry(ObjectEntry object, String title, Date updated,
             List&lt;Person&gt; authors, String summary, Content content,
             RequestContext request) throws ResponseContextException {
@@ -524,16 +588,7 @@
 
     @Override
     public String getTitle(ObjectEntry object) {
-        String title = null;
-        try {
-            title = (String) object.getValue("title"); // TODO improve
-        } catch (Exception e) {
-            // no such property or bad type
-        }
-        if (title == null) {
-            title = (String) object.getValue(Property.NAME);
-        }
-        return title;
+        return (String) object.getValue(Property.NAME);
     }
 
     @Override
@@ -562,8 +617,9 @@
             // no such property or bad type
         }
         if (summary == null) {
-            return null;
+            summary = (String) object.getValue(Property.NAME);
         }
+        // TODO summary not needed if there's a non-base64 inline content
         Text text = request.getAbdera().getFactory().newSummary();
         text.setValue(summary);
         return text;

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java?rev=831421&amp;r1=831420&amp;r2=831421&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
Fri Oct 30 18:46:23 2009
@@ -59,6 +59,7 @@
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.Type;
 import org.apache.chemistry.Unfiling;
+import org.apache.chemistry.Updatability;
 import org.apache.chemistry.VersioningState;
 import org.apache.chemistry.cmissql.CmisSqlLexer;
 import org.apache.chemistry.cmissql.CmisSqlParser;
@@ -577,8 +578,36 @@
 
     public ObjectId setContentStream(ObjectId document, boolean overwrite,
             ContentStream contentStream) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        SimpleData data = repository.datas.get(document.getId());
+        if (contentStream == null) {
+            data.remove(SimpleProperty.CONTENT_BYTES_KEY);
+            data.remove(Property.CONTENT_STREAM_MIME_TYPE);
+            data.remove(Property.CONTENT_STREAM_FILE_NAME);
+            data.remove(Property.CONTENT_STREAM_LENGTH);
+        } else {
+            byte[] bytes;
+            try {
+                bytes = SimpleContentStream.getBytes(contentStream.getStream());
+            } catch (IOException e) {
+                throw new RuntimeException(e);
+            }
+            data.put(SimpleProperty.CONTENT_BYTES_KEY, bytes);
+            data.put(Property.CONTENT_STREAM_LENGTH,
+                    Integer.valueOf(bytes.length)); // TODO-Long
+            String mt = contentStream.getMimeType();
+            if (mt == null) {
+                data.remove(Property.CONTENT_STREAM_MIME_TYPE);
+            } else {
+                data.put(Property.CONTENT_STREAM_MIME_TYPE, mt);
+            }
+            String fn = contentStream.getFileName();
+            if (fn == null) {
+                data.remove(Property.CONTENT_STREAM_FILE_NAME);
+            } else {
+                data.put(Property.CONTENT_STREAM_FILE_NAME, fn);
+            }
+        }
+        return document;
     }
 
     public ObjectId deleteContentStream(ObjectId document) {
@@ -588,8 +617,35 @@
 
     public ObjectId updateProperties(ObjectId object, String changeToken,
             Map&lt;String, Serializable&gt; properties) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        // TODO changeToken
+        SimpleData data = repository.datas.get(object.getId());
+        String typeId = (String) data.get(Property.TYPE_ID);
+        Type type = repository.getType(typeId);
+        for (String key : properties.keySet()) {
+            if (key.equals(Property.ID) || key.equals(Property.TYPE_ID)) {
+                continue;
+            }
+            PropertyDefinition pd = type.getPropertyDefinition(key);
+            Updatability updatability = pd.getUpdatability();
+            if (updatability == Updatability.ON_CREATE
+                    || updatability == Updatability.READ_ONLY) {
+                // ignore attempts to write a read-only prop, as clients
+                // may want to take an existing entry, change a few values,
+                // and write the new one
+                continue;
+                // throw new RuntimeException("Read-only property: " + key);
+            }
+            Serializable value = properties.get(key);
+            if (value == null) {
+                if (pd.isRequired()) {
+                    throw new RuntimeException("Required property: " + key); // TODO
+                }
+                data.remove(key);
+            } else {
+                data.put(key, value);
+            }
+        }
+        return object;
     }
 
     public ObjectId moveObject(ObjectId object, ObjectId targetFolder,

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java?rev=831421&amp;r1=831420&amp;r2=831421&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
Fri Oct 30 18:46:23 2009
@@ -151,8 +151,7 @@
     }
 
     public ObjectId newObjectId(String id) {
-        // TODO Auto-generated method stub
-        throw new UnsupportedOperationException();
+        return new SimpleObjectId(id);
     }
 
     // ----------------------------------------------------------------------

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java?rev=831421&amp;r1=831420&amp;r2=831421&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
Fri Oct 30 18:46:23 2009
@@ -18,9 +18,11 @@
 package org.apache.chemistry.test;
 
 import java.io.InputStream;
+import java.io.Serializable;
 import java.util.Arrays;
 import java.util.Calendar;
 import java.util.Collection;
+import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
@@ -381,4 +383,19 @@
         assertEquals("mytitle", fold.getString("title"));
     }
 
+    public void testUpdateSPI() {
+        ObjectEntry ob = spi.getObjectByPath("/folder 1/doc 1", null, false,
+                false);
+        assertEquals("doc 1 title", ob.getValue("title"));
+        assertEquals("The doc 1 descr", ob.getValue("description"));
+        // update
+        Map&lt;String, Serializable&gt; properties = new HashMap&lt;String, Serializable&gt;();
+        properties.put("description", "new descr");
+        spi.updateProperties(ob, null, properties);
+        // refetch
+        ob = spi.getProperties(ob, null, false, false);
+        assertEquals("doc 1 title", ob.getValue("title"));
+        assertEquals("new descr", ob.getValue("description"));
+    }
+
 }




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r831419 - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main: java/org/apache/chemistry/tck/atompub/test/spec/ resources/org/apache/chemistry/tck/atompub/templates/</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091030184444.A5F5F23888D0@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091030184444-A5F5F23888D0@eris-apache-org%3e</id>
<updated>2009-10-30T18:44:44Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Fri Oct 30 18:44:43 2009
New Revision: 831419

URL: http://svn.apache.org/viewvc?rev=831419&amp;view=rev
Log:
Fix TCK to generate valid Atom entries on create/update (Atom 4.1.2 MUSTs)

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/VersionsTest.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createatomentry.atomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocument.atomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createfolder.atomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.atomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java?rev=831419&amp;r1=831418&amp;r2=831419&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java
Fri Oct 30 18:44:43 2009
@@ -35,7 +35,7 @@
  * CMIS Update Tests
  */
 public class UpdateTest extends TCKTest {
-    
+
     public void testUpdatePutCMISContent() throws Exception {
         // retrieve test folder for update
         Entry document = fixture.createTestDocument("testUpdatePutCMISContent");
@@ -50,6 +50,7 @@
 
         // update
         String updateFile = templates.load("updatedocument.cmisatomentry.xml");
+        updateFile = updateFile.replace("${ID}", document.getId().toString());
         // FIXME: Add a decent UID generation policy
         // String guid = GUID.generate();
         String guid = System.currentTimeMillis() + "";
@@ -84,6 +85,7 @@
 
         // update
         String updateFile = templates.load("updatedocument.atomentry.xml");
+        updateFile = updateFile.replace("${ID}", document.getId().toString());
         // FIXME: Add a decent UID generation policy
         // String guid = GUID.generate();
         String guid = System.currentTimeMillis() + "";
@@ -97,8 +99,9 @@
         Assert.assertEquals(document.getId(), updated.getId());
         Assert.assertEquals(document.getPublished(), updated.getPublished());
         Assert.assertEquals("Updated Title " + guid, updated.getTitle());
-        // TODO: why is this testing for text/plain? it should be test/html
-        Assert.assertEquals("text/plain", updated.getContentMimeType().toString());
+        // entry provides &lt;content&gt; without type -&gt; plain text (Atom 3.1.1)
+        // repository may add a charset after that thus the startsWith
+        Assert.assertTrue(updated.getContentMimeType().toString().startsWith("text/plain"));
         Response contentRes = client.executeRequest(new GetRequest(updated.getContentSrc().toString()),
200);
         Assert.assertEquals("updated content " + guid, contentRes.getContentAsString());
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/VersionsTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/VersionsTest.java?rev=831419&amp;r1=831418&amp;r2=831419&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/VersionsTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/VersionsTest.java
Fri Oct 30 18:44:43 2009
@@ -42,7 +42,7 @@
  * CMIS Versions Tests
  */
 public class VersionsTest extends TCKTest {
-    
+
     @Override
     public void tearDown() throws Exception {
         // cancel any outstanding checkouts
@@ -61,7 +61,7 @@
 
         super.tearDown();
     }
-    
+
     public void testGetCheckedOut() throws Exception {
         // retrieve test folder for checkouts
         Entry testFolder = fixture.getTestCaseFolder();
@@ -206,6 +206,7 @@
 
         // test update of private working copy
         String updateFile = templates.load("updatedocument.atomentry.xml");
+        updateFile = updateFile.replace("${ID}", document.getId().toString());
         // FIXME: Add a decent UID generation policy
         // String guid = GUID.generate();
         String guid = System.currentTimeMillis() + "";

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createatomentry.atomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createatomentry.atomentry.xml?rev=831419&amp;r1=831418&amp;r2=831419&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createatomentry.atomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createatomentry.atomentry.xml
Fri Oct 30 18:44:43 2009
@@ -1,6 +1,8 @@
 &lt;?xml version="1.0" ?&gt;
 &lt;entry xmlns="http://www.w3.org/2005/Atom"&gt;
+  &lt;id&gt;urn:uuid:00000000-0000-0000-0000-000000000000&lt;/id&gt;
   &lt;title&gt;${NAME}&lt;/title&gt;
+  &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
   &lt;author&gt;
     &lt;name&gt;CMIS Test&lt;/name&gt;
   &lt;/author&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocument.atomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocument.atomentry.xml?rev=831419&amp;r1=831418&amp;r2=831419&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocument.atomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocument.atomentry.xml
Fri Oct 30 18:44:43 2009
@@ -1,6 +1,9 @@
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
 &lt;entry xmlns="http://www.w3.org/2005/Atom" xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"&gt;
+  &lt;id&gt;urn:uuid:00000000-0000-0000-0000-000000000000&lt;/id&gt;
   &lt;title&gt;${NAME}&lt;/title&gt;
+  &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
+  &lt;author&gt;admin&lt;/author&gt;
   &lt;summary&gt;${NAME} (summary)&lt;/summary&gt;
   &lt;content type="text/html"&gt;${CONTENT}&lt;/content&gt;
   &lt;cmisra:object&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml?rev=831419&amp;r1=831418&amp;r2=831419&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createdocumentBase64.cmisatomentry.xml
Fri Oct 30 18:44:43 2009
@@ -1,6 +1,9 @@
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
 &lt;entry xmlns="http://www.w3.org/2005/Atom" xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"&gt;
+  &lt;id&gt;urn:uuid:00000000-0000-0000-0000-000000000000&lt;/id&gt;
   &lt;title&gt;${NAME}&lt;/title&gt;
+  &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
+  &lt;author&gt;admin&lt;/author&gt;
   &lt;summary&gt;${NAME} (summary)&lt;/summary&gt;
   &lt;content type="text"&gt;Must be ignored - overridden by cmisra:content&lt;/content&gt;
   &lt;cmisra:content&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createfolder.atomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createfolder.atomentry.xml?rev=831419&amp;r1=831418&amp;r2=831419&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createfolder.atomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/createfolder.atomentry.xml
Fri Oct 30 18:44:43 2009
@@ -1,6 +1,10 @@
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
 &lt;entry xmlns="http://www.w3.org/2005/Atom" xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"&gt;
+  &lt;id&gt;urn:uuid:00000000-0000-0000-0000-000000000000&lt;/id&gt;
   &lt;title&gt;${NAME}&lt;/title&gt;
+  &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
+  &lt;author&gt;admin&lt;/author&gt;
+  &lt;link rel="alternate" href=""/&gt;
   &lt;summary&gt;${NAME} (summary)&lt;/summary&gt;
   &lt;cmisra:object&gt;
     &lt;cmis:properties&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.atomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.atomentry.xml?rev=831419&amp;r1=831418&amp;r2=831419&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.atomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.atomentry.xml
Fri Oct 30 18:44:43 2009
@@ -1,5 +1,8 @@
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
 &lt;entry xmlns="http://www.w3.org/2005/Atom"&gt;
+  &lt;id&gt;${ID}&lt;/id&gt;
   &lt;title&gt;Updated Title ${NAME}&lt;/title&gt;
+  &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
+  &lt;author&gt;admin&lt;/author&gt;
   &lt;content&gt;updated content ${NAME}&lt;/content&gt;
 &lt;/entry&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml?rev=831419&amp;r1=831418&amp;r2=831419&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/updatedocument.cmisatomentry.xml
Fri Oct 30 18:44:43 2009
@@ -1,6 +1,8 @@
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
 &lt;entry xmlns="http://www.w3.org/2005/Atom" xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"&gt;
+  &lt;id&gt;${ID}&lt;/id&gt;
   &lt;title&gt;Updated Title ${NAME}&lt;/title&gt;
+  &lt;updated&gt;2009-01-01T00:00:00Z&lt;/updated&gt;
   &lt;content&gt;this content must be ignored ${NAME}&lt;/content&gt;   &lt;!--  must be
overridden by cmisra:content --&gt;
   &lt;cmisra:content&gt;
     &lt;cmisra:mediatype&gt;text/plain&lt;/cmisra:mediatype&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r830674 - in /incubator/chemistry/trunk/chemistry: ./ chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/ chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/ chemistry-atompub/src/main/java/or...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091028171050.B673023888FF@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091028171050-B673023888FF@eris-apache-org%3e</id>
<updated>2009-10-28T17:10:50Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Wed Oct 28 17:10:49 2009
New Revision: 830674

URL: http://svn.apache.org/viewvc?rev=830674&amp;view=rev
Log:
Pass more of the TCK (RepositoryServiceTest,TypeDefinitionTest,CreateTest,GetTest)

Modified:
    incubator/chemistry/trunk/chemistry/README.txt
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObjectEntry.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java

Modified: incubator/chemistry/trunk/chemistry/README.txt
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/README.txt?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/README.txt (original)
+++ incubator/chemistry/trunk/chemistry/README.txt Wed Oct 28 17:10:49 2009
@@ -18,4 +18,4 @@
 
 A small in-memory demo AtomPub server can then be launched with:
 
-  java -jar chemistry-tests/target/chemistry-tests-0.1-SNAPSHOT-jar-with-dependencies.jar
+  java -jar chemistry-tests/target/chemistry-tests-1.0-SNAPSHOT-jar-with-dependencies.jar

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
Wed Oct 28 17:10:49 2009
@@ -351,7 +351,7 @@
             // TODO do a search (maybe 4 searches as base type unknown)
 
             // XXX hardcoded Chemistry URL pattern
-            href = repository.getCollectionHref(AtomPubCMIS.COL_ROOT_CHILDREN);
+            href = repository.getCollectionHref(AtomPubCMIS.COL_ROOT);
             if (href.matches(".*/children/[0-9a-f-]{36}")) {
                 href = href.substring(0, href.length() - "/children/".length()
                         - 36);

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java
Wed Oct 28 17:10:49 2009
@@ -147,7 +147,7 @@
             return;
         }
         try {
-            String href = getCollectionHref(AtomPubCMIS.COL_TYPES_CHILDREN);
+            String href = getCollectionHref(AtomPubCMIS.COL_TYPES);
             if (href == null) {
                 throw new IllegalArgumentException(
                         "Invalid CMIS repository. No types children collection defined");

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISCollection.java
Wed Oct 28 17:10:49 2009
@@ -125,6 +125,13 @@
         return request.absoluteUrlFor(TargetType.TYPE_ENTRY, params);
     }
 
+    public String getDescendantsLink(String fid, RequestContext request) {
+        Map&lt;String, String&gt; params = new HashMap&lt;String, String&gt;();
+        params.put("collection", "descendants");
+        params.put("id", fid);
+        return request.absoluteUrlFor(TargetType.TYPE_COLLECTION, params);
+    }
+
     public String getParentsLink(String fid, RequestContext request) {
         Map&lt;String, String&gt; params = new HashMap&lt;String, String&gt;();
         params.put("entrytype", "parents");

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
Wed Oct 28 17:10:49 2009
@@ -23,6 +23,7 @@
 import java.util.Calendar;
 import java.util.Collections;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -61,6 +62,7 @@
 import org.apache.chemistry.atompub.abdera.ObjectElement;
 import org.apache.chemistry.impl.simple.SimpleContentStream;
 import org.apache.chemistry.util.GregorianCalendar;
+import org.apache.commons.codec.binary.Base64;
 
 /**
  * CMIS Collection for object entries.
@@ -173,7 +175,8 @@
             // TODO don't add links if no children/decendants
             entry.addLink(getChildrenLink(oid, request), AtomPub.LINK_DOWN,
                     AtomPub.MEDIA_TYPE_ATOM_FEED, null, null, -1);
-            // TODO children descendants and folder tree
+            entry.addLink(getDescendantsLink(oid, request), AtomPub.LINK_DOWN,
+                    AtomPubCMIS.MEDIA_TYPE_CMIS_TREE, null, null, -1);
         } else if (baseType == BaseType.DOCUMENT) {
             // TODO don't add link if no parents
             entry.addLink(getParentsLink(oid, request), AtomPub.LINK_UP,
@@ -207,54 +210,84 @@
         if (entry == null /* || !ProviderHelper.isValidEntry(entry) TODO XXX TCK */) {
             return new EmptyResponseContext(400);
         }
+
         InputStream stream;
         String mimeType;
-        try {
-            org.apache.abdera.model.Content.Type ct = entry.getContentType();
-            switch (ct) {
-            case TEXT:
-                mimeType = "text/plain";
-                break;
-            case HTML:
-                mimeType = "text/html";
-                break;
-            case XHTML:
-                mimeType = "application/xhtml+xml";
-                break;
-            case XML:
-                mimeType = "application/xml";
-                break;
-            case MEDIA:
-                mimeType = entry.getContentMimeType().toString();
-                break;
-            default:
-                throw new AssertionError(ct.toString());
+
+        Element cmisContent = entry.getFirstChild(AtomPubCMIS.CONTENT);
+        if (cmisContent != null) {
+            Element el = cmisContent.getFirstChild(AtomPubCMIS.MEDIA_TYPE);
+            if (el == null) {
+                return createErrorResponse(new ResponseContextException(
+                        "missing cmisra:mediatype", 500));
             }
-            if (ct == org.apache.abdera.model.Content.Type.MEDIA) {
-                stream = entry.getContentStream();
+            mimeType = el.getText();
+            el = cmisContent.getFirstChild(AtomPubCMIS.BASE64);
+            if (el == null) {
+                return createErrorResponse(new ResponseContextException(
+                        "missing cmisra:base64", 500));
+            }
+            byte[] b64 = el.getText().getBytes(); // no charset, pure ASCII
+            stream = new ByteArrayInputStream(Base64.decodeBase64(b64));
+        } else {
+            Content content = entry.getContentElement();
+            if (content != null) {
+                org.apache.abdera.model.Content.Type ct = content.getContentType();
+                switch (ct) {
+                case TEXT:
+                    mimeType = "text/plain;charset=UTF-8";
+                    break;
+                case HTML:
+                    mimeType = "text/html;charset=UTF-8";
+                    break;
+                case XHTML:
+                    mimeType = "application/xhtml+xml";
+                    break;
+                case XML:
+                    mimeType = "application/xml";
+                    break;
+                case MEDIA:
+                    mimeType = content.getMimeType().toString();
+                    break;
+                default:
+                    throw new AssertionError(ct.toString());
+                }
+                try {
+                    if (ct == org.apache.abdera.model.Content.Type.MEDIA) {
+                        stream = content.getDataHandler().getInputStream();
+                    } else {
+                        stream = new ByteArrayInputStream(
+                                content.getValue().getBytes("UTF-8"));
+                    }
+                } catch (IOException e1) {
+                    return createErrorResponse(new ResponseContextException(
+                            "cannot get stream", 500));
+                }
             } else {
-                stream = new ByteArrayInputStream(entry.getContent().getBytes(
-                        "UTF-8"));
+                stream = null;
+                mimeType = null;
             }
-        } catch (IOException e1) {
-            return createErrorResponse(new ResponseContextException(
-                    "cannot get stream", 500));
         }
 
-        Element obb = entry.getFirstChild(AtomPubCMIS.OBJECT);
-        ObjectElement objectElement = new ObjectElement(obb, repository);
         Map&lt;String, Serializable&gt; properties;
-        try {
-            properties = objectElement.getProperties();
-        } catch (Exception e) { // TODO proper exception
-            return createErrorResponse(new ResponseContextException(500, e));
-        }
-
-        String typeId = (String) properties.get(Property.TYPE_ID);
-        Type type = repository.getType(typeId);
-        if (type == null) {
-            return createErrorResponse(new ResponseContextException(
-                    "Unknown type: " + typeId, 500));
+        Type type;
+        Element obb = entry.getFirstChild(AtomPubCMIS.OBJECT);
+        if (obb != null) {
+            ObjectElement objectElement = new ObjectElement(obb, repository);
+            try {
+                properties = objectElement.getProperties();
+            } catch (Exception e) { // TODO proper exception
+                return createErrorResponse(new ResponseContextException(500, e));
+            }
+            String typeId = (String) properties.get(Property.TYPE_ID);
+            type = repository.getType(typeId);
+            if (type == null) {
+                return createErrorResponse(new ResponseContextException(
+                        "Unknown type: " + typeId, 500));
+            }
+        } else {
+            properties = new HashMap&lt;String, Serializable&gt;();
+            type = repository.getType(BaseType.DOCUMENT.getId());
         }
 
         // set Atom-defined properties into entry
@@ -286,11 +319,16 @@
         case DOCUMENT:
             String filename = (String) properties.get(Property.CONTENT_STREAM_FILE_NAME);
             ContentStream contentStream;
-            try {
-                contentStream = new SimpleContentStream(stream, mimeType,
-                        filename);
-            } catch (IOException e) {
-                return createErrorResponse(new ResponseContextException(500, e));
+            if (stream == null) {
+                contentStream = null;
+            } else {
+                try {
+                    contentStream = new SimpleContentStream(stream, mimeType,
+                            filename);
+                } catch (IOException e) {
+                    return createErrorResponse(new ResponseContextException(
+                            500, e));
+                }
             }
             VersioningState versioningState = null; // TODO
             objectId = spi.createDocument(properties, folderId, contentStream,
@@ -413,7 +451,10 @@
             throws ResponseContextException {
         SPI spi = repository.getSPI(); // TODO XXX connection leak
         if ("path".equals(getType())) {
-            String path = "/" + resourceName;
+            String path = resourceName;
+            if (!path.startsWith("/")) {
+                path = "/" + path;
+            }
             return spi.getObjectByPath(path, null, false, false);
         } else { // object
             String id = resourceName;
@@ -434,6 +475,8 @@
         resourceName = resourceName.replace("%3a", ":");
         resourceName = resourceName.replace("%3A", ":");
         resourceName = resourceName.replace("%20", " ");
+        resourceName = resourceName.replace("%2f", "/");
+        resourceName = resourceName.replace("%2F", "/");
         return resourceName;
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
Wed Oct 28 17:10:49 2009
@@ -105,10 +105,6 @@
                 TargetType.TYPE_COLLECTION, "objectid");
         targetResolver.setPattern("/types/([^/?]+)",
                 TargetType.TYPE_COLLECTION, "typeid");
-        targetResolver.setPattern("/typesdescendants(\\?.*)?",
-                TargetType.TYPE_COLLECTION);
-        targetResolver.setPattern("/typesdescendants/([^/?]*)(\\?.*)?",
-                TargetType.TYPE_COLLECTION, "typeid");
 
         // CMIS workspaces available
 
@@ -116,11 +112,7 @@
         workspaceInfo.setTitle(repository.getInfo().getName());
 
         workspaceInfo.addCollection(new CMISChildrenCollection(
-                AtomPubCMIS.COL_ROOT_CHILDREN,
-                repository.getInfo().getRootFolderId().getId(), repository));
-
-        workspaceInfo.addCollection(new CMISCollectionForOther(
-                AtomPubCMIS.COL_ROOT_DESCENDANTS, "descendants",
+                AtomPubCMIS.COL_ROOT,
                 repository.getInfo().getRootFolderId().getId(), repository));
 
         workspaceInfo.addCollection(new CMISCollectionForOther(
@@ -130,10 +122,7 @@
                 AtomPubCMIS.COL_CHECKED_OUT, "checkedout", null, repository));
 
         workspaceInfo.addCollection(new CMISTypesCollection(
-                AtomPubCMIS.COL_TYPES_CHILDREN, null, repository));
-
-        workspaceInfo.addCollection(new CMISTypesCollection(
-                AtomPubCMIS.COL_TYPES_DESCENDANTS, null, repository));
+                AtomPubCMIS.COL_TYPES, null, repository));
 
         workspaceInfo.addCollection(new CMISQueryFeed(repository));
 
@@ -156,7 +145,7 @@
                 base + "object/{id}"));
         list.add(new URITemplate(AtomPubCMIS.URITMPL_OBJECT_BY_PATH, //
                 AtomPub.MEDIA_TYPE_ATOM_ENTRY, //
-                base + "path{path}"));
+                base + "path/{path}"));
         list.add(new URITemplate(AtomPubCMIS.URITMPL_TYPE_BY_ID, //
                 AtomPub.MEDIA_TYPE_ATOM_FEED, //
                 base + "type/{id}"));

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
Wed Oct 28 17:10:49 2009
@@ -80,13 +80,14 @@
                 sw.endCollection();
             }
             // CMIS links
-            sw.startElement(AtomPub.ATOM_LINK);
-            sw.writeAttribute("type", "application/cmistree+xml");
-            sw.writeAttribute("rel", AtomPubCMIS.LINK_TYPES_DESCENDANTS);
-            String tdurl = request.absoluteUrlFor(TargetType.TYPE_SERVICE, null);
-            tdurl = tdurl.replaceFirst("/repository$", "/typesdescendants"); // XXX
-            sw.writeAttribute("href", tdurl);
-            sw.endElement();
+            // sw.startElement(AtomPub.ATOM_LINK);
+            // sw.writeAttribute("type", "application/cmistree+xml");
+            // sw.writeAttribute("rel", AtomPubCMIS.LINK_TYPES_DESCENDANTS);
+            // String tdurl = request.absoluteUrlFor(TargetType.TYPE_SERVICE,
+            // null);
+            // tdurl = tdurl.replaceFirst("/repository$", "/typesdescendants");
+            // sw.writeAttribute("href", tdurl);
+            // sw.endElement();
             // URI templates
             for (URITemplate info : provider.getURITemplates(request)) {
                 sw.startElement(AtomPubCMIS.URI_TEMPLATE);

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java
Wed Oct 28 17:10:49 2009
@@ -18,8 +18,6 @@
 
 import java.io.Serializable;
 import java.net.URI;
-import java.util.ArrayList;
-import java.util.Collection;
 import java.util.Date;
 import java.util.List;
 
@@ -34,7 +32,6 @@
 import org.apache.abdera.model.Person;
 import org.apache.abdera.protocol.server.RequestContext;
 import org.apache.abdera.protocol.server.context.ResponseContextException;
-import org.apache.chemistry.BaseType;
 import org.apache.chemistry.CMIS;
 import org.apache.chemistry.PropertyDefinition;
 import org.apache.chemistry.PropertyType;
@@ -256,29 +253,6 @@
             }
         }
         // end property definitions
-        if (AtomPubCMIS.COL_TYPES_DESCENDANTS.equals(getType())) {
-            Collection&lt;Type&gt; subTypes = repository.getTypes(type.getId(), 1,
-                    includePropertyDefinitions);
-            if (!subTypes.isEmpty()) {
-                Element che = factory.newElement(AtomPubCMIS.CHILDREN, entry);
-                // TODO basic feed info
-                // AbstractCollectionAdapter.createFeedBase:
-                factory.newID(che).setValue(
-                        "urn:x-id:typesdecendants-" + type.getId());
-                // che.setTitle(getTitle(request));
-                // che.addLink("");
-                // che.addLink("", "self");
-                // che.addAuthor(getAuthor(request));
-                // che.setUpdated(new Date());
-                // AbstractEntityCollectionAdapter.addFeedDetails
-                // che.setUpdated(new Date());
-                for (Type subType : subTypes) {
-                    Entry subEntry = factory.newEntry(che);
-                    addEntryDetails(request, subEntry, null, subType);
-                }
-                // end children entry
-            }
-        }
         return link;
     }
 
@@ -289,16 +263,7 @@
     @Override
     public Iterable&lt;Type&gt; getEntries(RequestContext request)
             throws ResponseContextException {
-        if (id == null &amp;&amp; AtomPubCMIS.COL_TYPES_DESCENDANTS.equals(getType())) {
-            // descendants needs only the first level, it will then recurse
-            List&lt;Type&gt; list = new ArrayList&lt;Type&gt;(4);
-            for (String tid : BaseType.ALL_IDS) {
-                list.add(repository.getType(tid));
-            }
-            return list;
-        } else {
-            return repository.getTypes(id);
-        }
+        return repository.getTypes(id);
     }
 
     @Override

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISWorkspaceManager.java
Wed Oct 28 17:10:49 2009
@@ -46,22 +46,18 @@
         if (paths.startsWith("/types/")) {
             return new CMISTypesCollection(null, null, repository);
         }
-        if (paths.startsWith("/typesdescendants/")) {
-            String id = request.getTarget().getParameter("typeid");
-            if ("".equals(id)) {
-                id = null;
-            }
-            return new CMISTypesCollection(AtomPubCMIS.COL_TYPES_DESCENDANTS,
-                    id, repository);
-        }
         if (paths.startsWith("/type/")) {
-            return new CMISTypesCollection(AtomPubCMIS.COL_TYPES_CHILDREN,
+            return new CMISTypesCollection(AtomPubCMIS.COL_TYPES,
                     null, repository);
         }
         if (paths.startsWith("/children/")) {
             String id = request.getTarget().getParameter("objectid");
             return new CMISChildrenCollection(null, id, repository);
         }
+        if (paths.startsWith("/descendants/")) {
+            String id = request.getTarget().getParameter("objectid");
+            return new CMISChildrenCollection(null, id, repository);
+        }
         if (paths.startsWith("/parents/")) {
             String id = request.getTarget().getParameter("objectid");
             return new CMISParentsCollection(null, id, repository);

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
Wed Oct 28 17:10:49 2009
@@ -64,24 +64,24 @@
 
     public static final QName CHILDREN = CMISRAName("children");
 
+    public static final QName CONTENT = CMISRAName("content");
+
+    public static final QName BASE64 = CMISRAName("base64");
+
     /*
      * ----- AtomPub Collection Types -----
      */
 
-    public static final String COL_ROOT_CHILDREN = "root";
+    public static final String COL_ROOT = "root";
 
-    public static final String COL_ROOT_DESCENDANTS = "rootdescendants"; // TODO
-
-    public static final String COL_UNFILED = "unfiled";
+    public static final String COL_TYPES = "types";
 
     public static final String COL_CHECKED_OUT = "checkedout";
 
-    public static final String COL_TYPES_CHILDREN = "types";
-
-    public static final String COL_TYPES_DESCENDANTS = "typesdescendants"; // TODO
-
     public static final String COL_QUERY = "query";
 
+    public static final String COL_UNFILED = "unfiled";
+
     /*
      * ----- AtomPub Link Types -----
      */
@@ -108,9 +108,6 @@
     public static final String LINK_FOLDER_TREE = CMIS_LINK_NS_BASE
             + "foldertree";
 
-    public static final String LINK_TYPES_DESCENDANTS = CMIS_LINK_NS_BASE
-            + "typesdescendants";
-
     public static final String LINK_ROOT_DESCENDANTS = CMIS_LINK_NS_BASE
             + "rootdescendants";
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
Wed Oct 28 17:10:49 2009
@@ -405,7 +405,10 @@
         // TODO contentStream, versioningState
         String typeId = (String) properties.get(Property.TYPE_ID);
         if (typeId == null) {
-            throw new IllegalArgumentException("Missing obejct type id");
+            // use a default type, useful for pure AtomPub POST
+            typeId = BaseType.DOCUMENT.getId();
+            properties.put(Property.TYPE_ID, typeId);
+            // throw new IllegalArgumentException("Missing obejct type id");
         }
         Type type = repository.getType(typeId);
         if (type == null || type.getBaseType() != BaseType.DOCUMENT) {

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java
Wed Oct 28 17:10:49 2009
@@ -131,7 +131,7 @@
         if (pd == null) {
             throw new IllegalArgumentException(id);
         }
-        Serializable value = entry.data.get(id);
+        Serializable value = entry.getValue(id);
         if (value == null) {
             value = pd.getDefaultValue();
         }

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObjectEntry.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObjectEntry.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObjectEntry.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObjectEntry.java
Wed Oct 28 17:10:49 2009
@@ -69,13 +69,55 @@
     }
 
     public Map&lt;String, Serializable&gt; getValues() {
-        return new HashMap&lt;String, Serializable&gt;(data);
+        HashMap&lt;String, Serializable&gt; map = new HashMap&lt;String, Serializable&gt;(
+                data);
+        if (map.containsKey(Property.PATH)) {
+            map.put(Property.PATH, getValue(Property.PATH));
+        }
+        return map;
     }
 
     public Serializable getValue(String id) {
+        if (id.equals(Property.PATH)) {
+            // non-local value
+            return getPath();
+        }
         return data.get(id);
     }
 
+    // TODO add a getPath method to the SPI
+    protected String getPath() {
+        ObjectEntry parent;
+        if (getBaseType() == BaseType.FOLDER) {
+            parent = connection.getSPI().getFolderParent(this, null);
+        } else {
+            Collection&lt;ObjectEntry&gt; parents = connection.getSPI().getObjectParents(
+                    this, null);
+            if (parents.size() == 0) {
+                parent = null;
+            } else if (parents.size() &gt; 1) {
+                // several parents -&gt; no path TODO error?
+                return null;
+            } else {
+                parent = parents.iterator().next();
+            }
+        }
+        String parentPath;
+        if (parent == null) {
+            parentPath = "";
+        } else {
+            parentPath = (String) parent.getValue(Property.PATH);
+            if (parentPath == null) {
+                return null;
+            }
+            if (parentPath.equals("/")) {
+                parentPath = "";
+            }
+        }
+        String name = (String) getValue(Property.NAME);
+        return parentPath + "/" + name;
+    }
+
     public void setValue(String id, Serializable value) {
         if (value == null) {
             data.remove(id);

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml Wed Oct 28 17:10:49
2009
@@ -109,6 +109,49 @@
   &lt;/reporting&gt;
   &lt;profiles&gt;
     &lt;profile&gt;
+      &lt;id&gt;chemistry-local&lt;/id&gt;
+      &lt;build&gt;
+        &lt;plugins&gt;
+          &lt;plugin&gt;
+            &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
+            &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
+            &lt;configuration&gt;
+              &lt;systemProperties&gt;
+                &lt;property&gt;
+                  &lt;name&gt;chemistry.tck.tests&lt;/name&gt;
+                  &lt;value&gt;*&lt;/value&gt;
+                &lt;/property&gt;
+                &lt;property&gt;
+                  &lt;name&gt;chemistry.tck.serviceUrl&lt;/name&gt;
+                  &lt;value&gt;http://localhost:8080/cmis/repository&lt;/value&gt;
+                &lt;/property&gt;
+                &lt;property&gt;
+                  &lt;name&gt;chemistry.tck.user&lt;/name&gt;
+                  &lt;value&gt;admin&lt;/value&gt;
+                &lt;/property&gt;
+                &lt;property&gt;
+                  &lt;name&gt;chemistry.tck.password&lt;/name&gt;
+                  &lt;value&gt;admin&lt;/value&gt;
+                &lt;/property&gt;
+                &lt;property&gt;
+                  &lt;name&gt;chemistry.tck.validate&lt;/name&gt;
+                  &lt;value&gt;true&lt;/value&gt;
+                &lt;/property&gt;
+                &lt;property&gt;
+                  &lt;name&gt;chemistry.tck.failOnValidationError&lt;/name&gt;
+                  &lt;value&gt;false&lt;/value&gt;
+                &lt;/property&gt;
+                &lt;property&gt;
+                  &lt;name&gt;chemistry.tck.traceRequests&lt;/name&gt;
+                  &lt;value&gt;false&lt;/value&gt;
+                &lt;/property&gt;
+              &lt;/systemProperties&gt;
+            &lt;/configuration&gt;
+          &lt;/plugin&gt;
+        &lt;/plugins&gt;
+      &lt;/build&gt;
+    &lt;/profile&gt;
+    &lt;profile&gt;
       &lt;id&gt;example&lt;/id&gt;
       &lt;build&gt;
         &lt;plugins&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java?rev=830674&amp;r1=830673&amp;r2=830674&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
Wed Oct 28 17:10:49 2009
@@ -321,8 +321,8 @@
         // content stream
         String blobText = "Another file...\n";
         byte[] blobBytes = blobText.getBytes("UTF-8");
-        ContentStream cs = new SimpleContentStream(blobBytes, "text/plain",
-                "mydoc.txt");
+        ContentStream cs = new SimpleContentStream(blobBytes,
+                "text/plain;charset=UTF-8", "mydoc.txt");
         doc.setContentStream(cs);
         assertNull(doc.getId()); // not yet saved
         doc.save();
@@ -344,7 +344,7 @@
         assertNotNull(cs);
         assertTrue(cs.getLength() != 0);
         assertEquals("mydoc.txt", cs.getFileName());
-        assertEquals("text/plain", cs.getMimeType());
+        assertEquals("text/plain;charset=UTF-8", cs.getMimeType());
         assertNotNull(cs.getStream());
         InputStream in = doc.getContentStream().getStream();
         assertNotNull(in);




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r830511 [4/4] - in /incubator/chemistry/trunk/chemistry: chemistry-api/src/main/java/org/apache/chemistry/ chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/ chemistry-atompub-client/src/main/java/org/apache/chemist...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091028115429.60C2823889DA@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091028115429-60C2823889DA@eris-apache-org%3e</id>
<updated>2009-10-28T11:54:27Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMISWS-Service.wsdl
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMISWS-Service.wsdl?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMISWS-Service.wsdl
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMISWS-Service.wsdl
Wed Oct 28 11:54:22 2009
@@ -1,17 +1,23 @@
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
-&lt;definitions xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200901"
-	xmlns:cmism="http://docs.oasis-open.org/ns/cmis/messaging/200901"
-	xmlns:cmisw="http://docs.oasis-open.org/ns/cmis/ws/200901" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+	&lt;!--
+		$Revision: 65 $
+		$Date: 2009-08-30 08:18:30 -0700 (Sun, 30 Aug 2009) $
+		$Author: fmueller $
+		$HeadURL: http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/CMISWS-Service.wsdl
$
+	--&gt;
+&lt;definitions xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"
+	xmlns:cmism="http://docs.oasis-open.org/ns/cmis/messaging/200908/"
+	xmlns:cmisw="http://docs.oasis-open.org/ns/cmis/ws/200908/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/"
-	xmlns:ns="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://docs.oasis-open.org/ns/cmis/ws/200901"
+	xmlns:ns="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://docs.oasis-open.org/ns/cmis/ws/200908/"
 	xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" name="CMISWebServices"&gt;
 	&lt;types&gt;
 		&lt;xsd:schema elementFormDefault="qualified"
-			targetNamespace="http://docs.oasis-open.org/ns/cmis/ws/200901"&gt;
+			targetNamespace="http://docs.oasis-open.org/ns/cmis/ws/200908/"&gt;
 			&lt;xsd:import schemaLocation="CMIS-Core.xsd"
-				namespace="http://docs.oasis-open.org/ns/cmis/core/200901" /&gt;
+				namespace="http://docs.oasis-open.org/ns/cmis/core/200908/" /&gt;
 			&lt;xsd:import schemaLocation="CMIS-Messaging.xsd"
-				namespace="http://docs.oasis-open.org/ns/cmis/messaging/200901" /&gt;
+				namespace="http://docs.oasis-open.org/ns/cmis/messaging/200908/" /&gt;
 		&lt;/xsd:schema&gt;
 	&lt;/types&gt;
 
@@ -102,6 +108,12 @@
 	&lt;message name="createDocumentResponse"&gt;
 		&lt;part name="parameters" element="cmism:createDocumentResponse" /&gt;
 	&lt;/message&gt;
+	&lt;message name="createDocumentFromSourceRequest"&gt;
+		&lt;part name="parameters" element="cmism:createDocumentFromSource" /&gt;
+	&lt;/message&gt;
+	&lt;message name="createDocumentFromSourceResponse"&gt;
+		&lt;part name="parameters" element="cmism:createDocumentFromSourceResponse" /&gt;
+	&lt;/message&gt;
 	&lt;message name="createFolderRequest"&gt;
 		&lt;part name="parameters" element="cmism:createFolder" /&gt;
 	&lt;/message&gt;
@@ -126,6 +138,12 @@
 	&lt;message name="getAllowableActionsResponse"&gt;
 		&lt;part name="parameters" element="cmism:getAllowableActionsResponse" /&gt;
 	&lt;/message&gt;
+	&lt;message name="getObjectRequest"&gt;
+		&lt;part name="parameters" element="cmism:getObject" /&gt;
+	&lt;/message&gt;
+	&lt;message name="getObjectResponse"&gt;
+		&lt;part name="parameters" element="cmism:getObjectResponse" /&gt;
+	&lt;/message&gt;
 	&lt;message name="getPropertiesRequest"&gt;
 		&lt;part name="parameters" element="cmism:getProperties" /&gt;
 	&lt;/message&gt;
@@ -133,11 +151,11 @@
 		&lt;part name="parameters" element="cmism:getPropertiesResponse" /&gt;
 	&lt;/message&gt;
 
-	&lt;message name="getFolderByPathRequest"&gt;
-		&lt;part name="parameters" element="cmism:getFolderByPath" /&gt;
+	&lt;message name="getObjectByPathRequest"&gt;
+		&lt;part name="parameters" element="cmism:getObjectByPath" /&gt;
 	&lt;/message&gt;
-	&lt;message name="getFolderByPathResponse"&gt;
-		&lt;part name="parameters" element="cmism:getFolderByPathResponse" /&gt;
+	&lt;message name="getObjectByPathResponse"&gt;
+		&lt;part name="parameters" element="cmism:getObjectByPathResponse" /&gt;
 	&lt;/message&gt;
 
 	&lt;message name="getContentStreamRequest"&gt;
@@ -202,11 +220,11 @@
 		&lt;part name="parameters" element="cmism:getAppliedPoliciesResponse" /&gt;
 	&lt;/message&gt;
 
-	&lt;message name="getRelationshipsRequest"&gt;
-		&lt;part name="parameters" element="cmism:getRelationships" /&gt;
+	&lt;message name="getObjectRelationshipsRequest"&gt;
+		&lt;part name="parameters" element="cmism:getObjectRelationships" /&gt;
 	&lt;/message&gt;
-	&lt;message name="getRelationshipsResponse"&gt;
-		&lt;part name="parameters" element="cmism:getRelationshipsResponse" /&gt;
+	&lt;message name="getObjectRelationshipsResponse"&gt;
+		&lt;part name="parameters" element="cmism:getObjectRelationshipsResponse" /&gt;
 	&lt;/message&gt;
 
 	&lt;message name="getRepositoriesRequest"&gt;
@@ -258,6 +276,12 @@
 	&lt;message name="checkInResponse"&gt;
 		&lt;part name="parameters" element="cmism:checkInResponse" /&gt;
 	&lt;/message&gt;
+	&lt;message name="getObjectOfLatestVersionRequest"&gt;
+		&lt;part name="parameters" element="cmism:getObjectOfLatestVersion" /&gt;
+	&lt;/message&gt;
+	&lt;message name="getObjectOfLatestVersionResponse"&gt;
+		&lt;part name="parameters" element="cmism:getObjectOfLatestVersionResponse" /&gt;
+	&lt;/message&gt;	
 	&lt;message name="getPropertiesOfLatestVersionRequest"&gt;
 		&lt;part name="parameters" element="cmism:getPropertiesOfLatestVersion" /&gt;
 	&lt;/message&gt;
@@ -341,6 +365,11 @@
 			&lt;output message="cmisw:createDocumentResponse" /&gt;
 			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
 		&lt;/operation&gt;
+		&lt;operation name="createDocumentFromSource"&gt;
+			&lt;input message="cmisw:createDocumentFromSourceRequest" /&gt;
+			&lt;output message="cmisw:createDocumentFromSourceResponse" /&gt;
+			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
+		&lt;/operation&gt;
 		&lt;operation name="createFolder"&gt;
 			&lt;input message="cmisw:createFolderRequest" /&gt;
 			&lt;output message="cmisw:createFolderResponse" /&gt;
@@ -361,6 +390,11 @@
 			&lt;output message="cmisw:getAllowableActionsResponse" /&gt;
 			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
 		&lt;/operation&gt;
+		&lt;operation name="getObject"&gt;
+			&lt;input message="cmisw:getObjectRequest" /&gt;
+			&lt;output message="cmisw:getObjectResponse" /&gt;
+			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
+		&lt;/operation&gt;
 		&lt;operation name="getProperties"&gt;
 			&lt;input message="cmisw:getPropertiesRequest" /&gt;
 			&lt;output message="cmisw:getPropertiesResponse" /&gt;
@@ -371,9 +405,9 @@
 			&lt;output message="cmisw:getRenditionsResponse" /&gt;
 			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
 		&lt;/operation&gt;
-		&lt;operation name="getFolderByPath"&gt;
-			&lt;input message="cmisw:getFolderByPathRequest" /&gt;
-			&lt;output message="cmisw:getFolderByPathResponse" /&gt;
+		&lt;operation name="getObjectByPath"&gt;
+			&lt;input message="cmisw:getObjectByPathRequest" /&gt;
+			&lt;output message="cmisw:getObjectByPathResponse" /&gt;
 			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
 		&lt;/operation&gt;
 		&lt;operation name="getContentStream"&gt;
@@ -431,9 +465,9 @@
 	&lt;/portType&gt;
 
 	&lt;portType name="RelationshipServicePort"&gt;
-		&lt;operation name="getRelationships"&gt;
-			&lt;input message="cmisw:getRelationshipsRequest" /&gt;
-			&lt;output message="cmisw:getRelationshipsResponse" /&gt;
+		&lt;operation name="getObjectRelationships"&gt;
+			&lt;input message="cmisw:getObjectRelationshipsRequest" /&gt;
+			&lt;output message="cmisw:getObjectRelationshipsResponse" /&gt;
 			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
 		&lt;/operation&gt;
 	&lt;/portType&gt;
@@ -480,6 +514,11 @@
 			&lt;output message="cmisw:checkInResponse" /&gt;
 			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
 		&lt;/operation&gt;
+		&lt;operation name="getObjectOfLatestVersion"&gt;
+			&lt;input message="cmisw:getObjectOfLatestVersionRequest" /&gt;
+			&lt;output message="cmisw:getObjectOfLatestVersionResponse" /&gt;
+			&lt;fault message="cmisw:cmisException" name="cmisException" /&gt;
+		&lt;/operation&gt;
 		&lt;operation name="getPropertiesOfLatestVersion"&gt;
 			&lt;input message="cmisw:getPropertiesOfLatestVersionRequest" /&gt;
 			&lt;output message="cmisw:getPropertiesOfLatestVersionResponse" /&gt;
@@ -652,6 +691,18 @@
 				&lt;soap:fault name="cmisException" use="literal" /&gt;
 			&lt;/fault&gt;
 		&lt;/operation&gt;
+		&lt;operation name="createDocumentFromSource"&gt;
+			&lt;soap:operation soapAction="" /&gt;
+			&lt;input&gt;
+				&lt;soap:body use="literal" /&gt;
+			&lt;/input&gt;
+			&lt;output&gt;
+				&lt;soap:body use="literal" /&gt;
+			&lt;/output&gt;
+			&lt;fault name="cmisException"&gt;
+				&lt;soap:fault name="cmisException" use="literal" /&gt;
+			&lt;/fault&gt;
+		&lt;/operation&gt;
 		&lt;operation name="createFolder"&gt;
 			&lt;soap:operation soapAction="" /&gt;
 			&lt;input&gt;
@@ -700,6 +751,18 @@
 				&lt;soap:fault name="cmisException" use="literal" /&gt;
 			&lt;/fault&gt;
 		&lt;/operation&gt;
+		&lt;operation name="getObject"&gt;
+			&lt;soap:operation soapAction="" /&gt;
+			&lt;input&gt;
+				&lt;soap:body use="literal" /&gt;
+			&lt;/input&gt;
+			&lt;output&gt;
+				&lt;soap:body use="literal" /&gt;
+			&lt;/output&gt;
+			&lt;fault name="cmisException"&gt;
+				&lt;soap:fault name="cmisException" use="literal" /&gt;
+			&lt;/fault&gt;
+		&lt;/operation&gt;
 		&lt;operation name="getProperties"&gt;
 			&lt;soap:operation soapAction="" /&gt;
 			&lt;input&gt;
@@ -724,7 +787,7 @@
 				&lt;soap:fault name="cmisException" use="literal" /&gt;
 			&lt;/fault&gt;
 		&lt;/operation&gt;
-		&lt;operation name="getFolderByPath"&gt;
+		&lt;operation name="getObjectByPath"&gt;
 			&lt;soap:operation soapAction="" /&gt;
 			&lt;input&gt;
 				&lt;soap:body use="literal" /&gt;
@@ -864,7 +927,7 @@
 	&lt;binding name="RelationshipServicePortBinding" type="cmisw:RelationshipServicePort"&gt;
 		&lt;soap:binding style="document"
 			transport="http://schemas.xmlsoap.org/soap/http" /&gt;
-		&lt;operation name="getRelationships"&gt;
+		&lt;operation name="getObjectRelationships"&gt;
 			&lt;soap:operation soapAction="" /&gt;
 			&lt;input&gt;
 				&lt;soap:body use="literal" /&gt;
@@ -980,6 +1043,18 @@
 				&lt;soap:fault name="cmisException" use="literal" /&gt;
 			&lt;/fault&gt;
 		&lt;/operation&gt;
+		&lt;operation name="getObjectOfLatestVersion"&gt;
+			&lt;soap:operation soapAction="" /&gt;
+			&lt;input&gt;
+				&lt;soap:body use="literal" /&gt;
+			&lt;/input&gt;
+			&lt;output&gt;
+				&lt;soap:body use="literal" /&gt;
+			&lt;/output&gt;
+			&lt;fault name="cmisException"&gt;
+				&lt;soap:fault name="cmisException" use="literal" /&gt;
+			&lt;/fault&gt;
+		&lt;/operation&gt;
 		&lt;operation name="getPropertiesOfLatestVersion"&gt;
 			&lt;soap:operation soapAction="" /&gt;
 			&lt;input&gt;
@@ -1087,4 +1162,4 @@
 		&lt;/port&gt;
 	&lt;/service&gt;
 
-&lt;/definitions&gt;
+&lt;/definitions&gt;
\ No newline at end of file

Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/xml.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/xml.xsd?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/xml.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/xml.xsd Wed Oct
28 11:54:22 2009
@@ -1,4 +1,11 @@
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
+
+	&lt;!--
+		$Revision: 34 $
+		$Date: 2009-08-07 15:20:47 -0700 (Fri, 07 Aug 2009) $
+		$Author: albertcbrown $
+		$HeadURL: http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/xml.xsd
$
+	--&gt;
 &lt;xsd:schema 
 targetNamespace="http://www.w3.org/XML/1998/namespace" 
 xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
@@ -45,4 +52,4 @@
   &lt;xsd:attribute ref="xml:id"/&gt;
  &lt;/xsd:attributeGroup&gt;
 
-&lt;/xsd:schema&gt;
+&lt;/xsd:schema&gt;
\ No newline at end of file




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r830511 [2/4] - in /incubator/chemistry/trunk/chemistry: chemistry-api/src/main/java/org/apache/chemistry/ chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/ chemistry-atompub-client/src/main/java/org/apache/chemist...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091028115429.56D38238890E@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091028115429-56D38238890E@eris-apache-org%3e</id>
<updated>2009-10-28T11:54:27Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/xml/stax/TestXMLWriter.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/xml/stax/TestXMLWriter.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/xml/stax/TestXMLWriter.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/xml/stax/TestXMLWriter.java Wed Oct 28 11:54:22 2009
@@ -27,6 +27,8 @@
 
 import javax.xml.namespace.QName;
 
+import org.apache.chemistry.CMIS;
+
 import junit.framework.TestCase;
 
 /**
@@ -34,11 +36,8 @@
  */
 public class TestXMLWriter extends TestCase {
 
-    public static final String CMIS_NS = "http://docs.oasis-open.org/ns/cmis/core/200901";
-
-    public static final String CMIS_PREFIX = "cmis";
-
-    public static final QName OBJECT = new QName(CMIS_NS, "object", CMIS_PREFIX);
+    public static final QName OBJECT = new QName(CMIS.CMIS_NS, "object",
+            CMIS.CMIS_PREFIX);
 
     public static String toString(Reader r) throws IOException {
         char[] chars = new char[1000]; // big enough for this test
@@ -60,7 +59,7 @@
         x.start();
         {
             x.element("service");
-            x.xmlns("cmis", CMIS_NS).attr("version", "1.0");
+            x.xmlns("cmis", CMIS.CMIS_NS).attr("version", "1.0");
             x.start();
             {
                 x.element("ws1").attr("k", "v").content("test");

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/resources/xmlwriter-output.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/resources/xmlwriter-output.xml?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/resources/xmlwriter-output.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/resources/xmlwriter-output.xml Wed Oct 28 11:54:22 2009
@@ -1,5 +1,5 @@
 &lt;?xml version="1.0"?&gt;
-&lt;service xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200901" version="1.0"&gt;
+&lt;service xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/" version="1.0"&gt;
   &lt;ws1 k="v"&gt;test&lt;/ws1&gt;
   &lt;ws2 key="val"&gt;
     &lt;cmis:object/&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java Wed Oct 28 11:54:22 2009
@@ -494,9 +494,9 @@
 
     public Iterator&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
             boolean includeProperties, int maxItems, boolean[] hasMoreItems,
-            String[] lastChangeLogToken) {
+            String[] latestChangeLogToken) {
         hasMoreItems[0] = false;
-        lastChangeLogToken[0] = null;
+        latestChangeLogToken[0] = null;
         return Collections.&lt;ObjectEntry&gt; emptyList().iterator();
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java Wed Oct 28 11:54:22 2009
@@ -168,10 +168,6 @@
         return repository.getDescriptor(javax.jcr.Repository.REP_NAME_DESC);
     }
 
-    public String getRelationshipName() {
-        return null;
-    }
-
     public URI getThinClientURI() {
         return null;
     }
@@ -234,7 +230,7 @@
     }
 
     public String getVersionSupported() {
-        return "0.62";
+        return "1.0";
     }
 
     // -------------------------------------------------- RepositoryCapabilities
@@ -275,6 +271,10 @@
         return false;
     }
 
+    public boolean hasGetFolderTree() {
+        return false;
+    }
+
     public boolean isContentStreamUpdatableAnytime() {
         return true;
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java Wed Oct 28 11:54:22 2009
@@ -18,16 +18,24 @@
 package org.apache.chemistry.test;
 
 import java.io.InputStream;
+import java.util.Arrays;
 import java.util.Calendar;
 import java.util.Collection;
+import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 import java.util.TimeZone;
 
 import junit.framework.TestCase;
 
 import org.apache.chemistry.BaseType;
 import org.apache.chemistry.CMISObject;
+import org.apache.chemistry.CapabilityACL;
+import org.apache.chemistry.CapabilityChange;
+import org.apache.chemistry.CapabilityJoin;
+import org.apache.chemistry.CapabilityQuery;
+import org.apache.chemistry.CapabilityRendition;
 import org.apache.chemistry.Connection;
 import org.apache.chemistry.ContentStream;
 import org.apache.chemistry.Document;
@@ -36,6 +44,8 @@
 import org.apache.chemistry.ObjectId;
 import org.apache.chemistry.Property;
 import org.apache.chemistry.Repository;
+import org.apache.chemistry.RepositoryCapabilities;
+import org.apache.chemistry.RepositoryInfo;
 import org.apache.chemistry.SPI;
 import org.apache.chemistry.Type;
 import org.apache.chemistry.impl.simple.SimpleContentStream;
@@ -102,6 +112,41 @@
         return null;
     }
 
+    public void testRepository() {
+        assertNotNull(repository);
+        assertEquals("test", repository.getId());
+        assertEquals("test", repository.getName());
+        RepositoryInfo info = repository.getInfo();
+        assertEquals("Repository test", info.getDescription());
+        assertEquals("Apache", info.getVendorName());
+        assertEquals("Chemistry Simple Repository", info.getProductName());
+        assertEquals("1.0-SNAPSHOT", info.getProductVersion());
+        // assertEquals(new SimpleObjectId("XYZ"), info.getRootFolderId());
+        // assertEquals("", info.getLatestChangeLogToken());
+        assertEquals("1.0", info.getVersionSupported());
+        assertFalse(info.isChangeLogIncomplete());
+        Set&lt;BaseType&gt; clbt = info.getChangeLogBaseTypes();
+        Set&lt;BaseType&gt; clbtExpected = new HashSet&lt;BaseType&gt;(Arrays.asList(
+                BaseType.FOLDER, BaseType.DOCUMENT, BaseType.RELATIONSHIP,
+                BaseType.POLICY));
+        assertEquals(clbtExpected, clbt);
+        RepositoryCapabilities cap = info.getCapabilities();
+        assertEquals(CapabilityACL.NONE, cap.getACLCapability());
+        assertFalse(cap.isAllVersionsSearchable());
+        assertEquals(CapabilityChange.NONE, cap.getChangeCapability());
+        assertTrue(cap.isContentStreamUpdatableAnytime());
+        assertTrue(cap.hasGetDescendants());
+        assertFalse(cap.hasGetFolderTree());
+        assertFalse(cap.hasMultifiling());
+        assertFalse(cap.isPWCSearchable());
+        assertFalse(cap.isPWCUpdatable());
+        assertEquals(CapabilityQuery.BOTH_COMBINED, cap.getQueryCapability());
+        assertEquals(CapabilityRendition.NONE, cap.getRenditionCapability());
+        assertFalse(cap.hasUnfiling());
+        assertFalse(cap.hasVersionSpecificFiling());
+        assertEquals(CapabilityJoin.NONE, cap.getJoinCapability());
+    }
+
     public void testBasic() {
         assertNotNull(repository);
         assertNotNull(conn);
@@ -230,7 +275,6 @@
         assertEquals(1, parents.size());
     }
 
-    @SuppressWarnings("null")
     public void testGetStream() throws Exception {
         Folder f1 = (Folder) conn.getRootFolder().getChildren().get(0);
         Folder f2 = getFolderChild(f1);
@@ -309,7 +353,6 @@
         assertEquals(blobBytes.length, cs.getLength());
     }
 
-    @SuppressWarnings("null")
     public void testNewFolder() {
         Folder root = conn.getRootFolder();
         assertNull(getDocumentChild(root));

Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/APP.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/APP.xsd?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/APP.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/APP.xsd Wed Oct 28 11:54:22 2009
@@ -3,18 +3,18 @@
 		-*- rnc -*- RELAX NG Compact Syntax Grammar for the Atom Format
 		Specification Version 11
 	--&gt;
+	&lt;!--
+		$Revision: 34 $
+		$Date: 2009-08-07 15:20:47 -0700 (Fri, 07 Aug 2009) $
+		$Author: albertcbrown $
+		$HeadURL: http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/APP.xsd $
+	--&gt;
 &lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
 	elementFormDefault="qualified" targetNamespace="http://www.w3.org/2007/app"
 	xmlns:atom="http://www.w3.org/2005/Atom" xmlns:app="http://www.w3.org/2007/app"
-	xmlns:cmisc="http://docs.oasis-open.org/ns/cmis/core/200901"
-	xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200901"
-	version="0.62d"&gt;
+	version="0.63"&gt;
 	&lt;xs:import namespace="http://www.w3.org/2005/Atom"
 		schemaLocation="ATOM.xsd" /&gt;
-	&lt;xs:import namespace="http://docs.oasis-open.org/ns/cmis/core/200901"
-		schemaLocation="CMIS-Core.xsd" /&gt;
-	&lt;xs:import namespace="http://docs.oasis-open.org/ns/cmis/restatom/200901"
-		schemaLocation="CMIS-RestAtom.xsd" /&gt;
 
 	&lt;xs:element name="service" type="app:appServiceType"&gt;&lt;/xs:element&gt;
 	&lt;xs:complexType name="appServiceType"&gt;
@@ -84,4 +84,4 @@
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 &lt;/xs:schema&gt;
-	&lt;!-- EOF --&gt;
+	&lt;!-- EOF --&gt;
\ No newline at end of file

Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/ATOM.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/ATOM.xsd?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/ATOM.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/ATOM.xsd Wed Oct 28 11:54:22 2009
@@ -3,20 +3,21 @@
 		-*- rnc -*- RELAX NG Compact Syntax Grammar for the Atom Format
 		Specification Version 11
 	--&gt;
+	&lt;!--
+		$Revision: 34 $
+		$Date: 2009-08-07 15:20:47 -0700 (Fri, 07 Aug 2009) $
+		$Author: albertcbrown $
+		$HeadURL: http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/ATOM.xsd $
+	--&gt;
 &lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
 	elementFormDefault="qualified" targetNamespace="http://www.w3.org/2005/Atom"
 	xmlns:atom="http://www.w3.org/2005/Atom" xmlns:xhtml="http://www.w3.org/1999/xhtml"
-	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200901" xmlns:xml="http://www.w3.org/XML/1998/namespace"
+	xmlns:xml="http://www.w3.org/XML/1998/namespace"
 	xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
-	xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200901"
 	jaxb:extensionBindingPrefixes="xjc" jaxb:version="2.1" version="0.62d"&gt;
 
 	&lt;xs:import namespace="http://www.w3.org/XML/1998/namespace"
 		schemaLocation="xml.xsd" /&gt;
-	&lt;xs:import namespace="http://docs.oasis-open.org/ns/cmis/core/200901"
-		schemaLocation="CMIS-Core.xsd" /&gt;
-	&lt;xs:import namespace="http://docs.oasis-open.org/ns/cmis/restatom/200901"
-		schemaLocation="CMIS-RestAtom.xsd" /&gt;
 
 	&lt;!-- Common attributes --&gt;
 	&lt;xs:attributeGroup name="atomCommonAttributes"&gt;
@@ -444,4 +445,4 @@
 		&lt;/xs:sequence&gt;
 	&lt;/xs:group&gt;
 &lt;/xs:schema&gt;
-	&lt;!-- EOF --&gt;
+	&lt;!-- EOF --&gt;
\ No newline at end of file

Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Core.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Core.xsd?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Core.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Core.xsd Wed Oct 28 11:54:22 2009
@@ -1,15 +1,16 @@
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
 	&lt;!--
-		Common CMIS XSD
+		$Revision: 137 $ $Date: 2009-10-21 15:50:27 -0700 (Wed, 21 Oct 2009) $
+		$Author: albertcbrown $ $HeadURL:
+		http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/CMIS-Core.xsd
+		$
 	--&gt;
 &lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
-	elementFormDefault="qualified" targetNamespace="http://docs.oasis-open.org/ns/cmis/core/200901"
+	elementFormDefault="qualified" targetNamespace="http://docs.oasis-open.org/ns/cmis/core/200908/"
 	xmlns:atom="http://www.w3.org/2005/Atom" xmlns:xhtml="http://www.w3.org/1999/xhtml"
 	xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
 	jaxb:extensionBindingPrefixes="xjc" jaxb:version="2.1"
-	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200901" version="0.62f"&gt;
-	&lt;xs:import namespace="http://www.w3.org/XML/1998/namespace"
-		schemaLocation="xml.xsd" /&gt;
+	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/" version="1.0"&gt;
 
 	&lt;!--  enums --&gt;
 	&lt;xs:simpleType name="enumDecimalPrecision"&gt;
@@ -37,6 +38,14 @@
 			&lt;xs:enumeration value="readonly" /&gt;
 			&lt;xs:enumeration value="readwrite" /&gt;
 			&lt;xs:enumeration value="whencheckedout" /&gt;
+			&lt;xs:enumeration value="oncreate" /&gt;
+		&lt;/xs:restriction&gt;
+	&lt;/xs:simpleType&gt;
+		&lt;xs:simpleType name="enumDateTimeResolution"&gt;
+		&lt;xs:restriction base="xs:string"&gt;
+			&lt;xs:enumeration value="year" /&gt;
+			&lt;xs:enumeration value="date" /&gt;
+			&lt;xs:enumeration value="time" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 	&lt;xs:simpleType name="enumPropertyType"&gt;
@@ -47,10 +56,8 @@
 			&lt;xs:enumeration value="datetime" /&gt;
 			&lt;xs:enumeration value="decimal" /&gt;
 			&lt;xs:enumeration value="html" /&gt;
-			&lt;xs:enumeration value="xhtml" /&gt;
 			&lt;xs:enumeration value="string" /&gt;
 			&lt;xs:enumeration value="uri" /&gt;
-			&lt;xs:enumeration value="xml" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 	&lt;xs:simpleType name="enumBaseObjectTypeIds"&gt;
@@ -80,33 +87,20 @@
 	&lt;xs:simpleType name="enumCapabilityContentStreamUpdates"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
 			&lt;xs:enumeration value="anytime" /&gt;
-			&lt;xs:enumeration value="pwc-only" /&gt;
-		&lt;/xs:restriction&gt;
-	&lt;/xs:simpleType&gt;
-	&lt;xs:simpleType name="enumRepositoryRelationship"&gt;
-		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="self" /&gt;
-			&lt;xs:enumeration value="replica" /&gt;
-			&lt;xs:enumeration value="peer" /&gt;
-			&lt;xs:enumeration value="parent" /&gt;
-			&lt;xs:enumeration value="child" /&gt;
-			&lt;xs:enumeration value="archive" /&gt;
+			&lt;xs:enumeration value="pwconly" /&gt;
+			&lt;xs:enumeration value="none" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
+
 	&lt;xs:simpleType name="enumVersioningState"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
+			&lt;xs:enumeration value="none" /&gt;
 			&lt;xs:enumeration value="checkedout" /&gt;
 			&lt;xs:enumeration value="minor" /&gt;
 			&lt;xs:enumeration value="major" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
-	&lt;xs:simpleType name="enumReturnVersion"&gt;
-		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="this" /&gt;
-			&lt;xs:enumeration value="latest" /&gt;
-			&lt;xs:enumeration value="latestmajor" /&gt;
-		&lt;/xs:restriction&gt;
-	&lt;/xs:simpleType&gt;
+
 	&lt;xs:simpleType name="enumUnfileObject"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
 			&lt;xs:enumeration value="unfile" /&gt;
@@ -133,53 +127,54 @@
 	&lt;!--  properties in CMIS --&gt;
 	&lt;xs:simpleType name="enumPropertiesBase"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="cmis:Name" /&gt;
-			&lt;xs:enumeration value="cmis:ObjectId" /&gt;
-			&lt;xs:enumeration value="cmis:ObjectTypeId" /&gt;
-			&lt;xs:enumeration value="cmis:BaseTypeId" /&gt;
-			&lt;xs:enumeration value="cmis:CreatedBy" /&gt;
-			&lt;xs:enumeration value="cmis:CreationDate" /&gt;
-			&lt;xs:enumeration value="cmis:LastModifiedBy" /&gt;
-			&lt;xs:enumeration value="cmis:LastModificationDate" /&gt;
-			&lt;xs:enumeration value="cmis:ChangeToken" /&gt;
+			&lt;xs:enumeration value="cmis:name" /&gt;
+			&lt;xs:enumeration value="cmis:objectId" /&gt;
+			&lt;xs:enumeration value="cmis:objectTypeId" /&gt;
+			&lt;xs:enumeration value="cmis:baseTypeId" /&gt;
+			&lt;xs:enumeration value="cmis:createdBy" /&gt;
+			&lt;xs:enumeration value="cmis:creationDate" /&gt;
+			&lt;xs:enumeration value="cmis:lastModifiedBy" /&gt;
+			&lt;xs:enumeration value="cmis:lastModificationDate" /&gt;
+			&lt;xs:enumeration value="cmis:changeToken" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 
 	&lt;xs:simpleType name="enumPropertiesDocument"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="cmis:IsImmutable" /&gt;
-			&lt;xs:enumeration value="cmis:IsLatestVersion" /&gt;
-			&lt;xs:enumeration value="cmis:IsMajorVersion" /&gt;
-			&lt;xs:enumeration value="cmis:IsLatestMajorVersion" /&gt;
-			&lt;xs:enumeration value="cmis:VersionLabel" /&gt;
-			&lt;xs:enumeration value="cmis:VersionSeriesId" /&gt;
-			&lt;xs:enumeration value="cmis:IsVersionSeriesCheckedOut" /&gt;
-			&lt;xs:enumeration value="cmis:VersionSeriesCheckedOutBy" /&gt;
-			&lt;xs:enumeration value="cmis:VersionSeriesCheckedOutId" /&gt;
-			&lt;xs:enumeration value="cmis:CheckinComment" /&gt;
-			&lt;xs:enumeration value="cmis:ContentStreamLength" /&gt;
-			&lt;xs:enumeration value="cmis:ContentStreamMimeType" /&gt;
-			&lt;xs:enumeration value="cmis:ContentStreamFileName" /&gt;
-			&lt;xs:enumeration value="cmis:ContentStreamId" /&gt;
+			&lt;xs:enumeration value="cmis:isImmutable" /&gt;
+			&lt;xs:enumeration value="cmis:isLatestVersion" /&gt;
+			&lt;xs:enumeration value="cmis:isMajorVersion" /&gt;
+			&lt;xs:enumeration value="cmis:isLatestMajorVersion" /&gt;
+			&lt;xs:enumeration value="cmis:versionLabel" /&gt;
+			&lt;xs:enumeration value="cmis:versionSeriesId" /&gt;
+			&lt;xs:enumeration value="cmis:isVersionSeriesCheckedOut" /&gt;
+			&lt;xs:enumeration value="cmis:versionSeriesCheckedOutBy" /&gt;
+			&lt;xs:enumeration value="cmis:versionSeriesCheckedOutId" /&gt;
+			&lt;xs:enumeration value="cmis:checkinComment" /&gt;
+			&lt;xs:enumeration value="cmis:contentStreamLength" /&gt;
+			&lt;xs:enumeration value="cmis:contentStreamMimeType" /&gt;
+			&lt;xs:enumeration value="cmis:contentStreamFileName" /&gt;
+			&lt;xs:enumeration value="cmis:contentStreamId" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 
 	&lt;xs:simpleType name="enumPropertiesFolder"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="cmis:ParentId" /&gt;
-			&lt;xs:enumeration value="cmis:AllowedChildObjectTypeNames" /&gt;
+			&lt;xs:enumeration value="cmis:parentId" /&gt;
+			&lt;xs:enumeration value="cmis:allowedChildObjectTypeIds" /&gt;
+			&lt;xs:enumeration value="cmis:path" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 
 	&lt;xs:simpleType name="enumPropertiesRelationship"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="cmis:SourceId" /&gt;
-			&lt;xs:enumeration value="cmis:TargetId" /&gt;
+			&lt;xs:enumeration value="cmis:sourceId" /&gt;
+			&lt;xs:enumeration value="cmis:targetId" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 	&lt;xs:simpleType name="enumPropertiesPolicy"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="cmis:PolicyText" /&gt;
+			&lt;xs:enumeration value="cmis:policyText" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 
@@ -187,30 +182,17 @@
 		&lt;xs:anyAttribute namespace="##other" processContents="lax" /&gt;
 	&lt;/xs:attributeGroup&gt;
 
-	&lt;!--  for propertyIds --&gt;
-	&lt;xs:attribute name="href" type="xs:anyURI" /&gt;
-
 	&lt;!--  main cmis object --&gt;
 	&lt;xs:complexType name="cmisObjectType"&gt;
 		&lt;xs:sequence&gt;
 			&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
 				minOccurs="0" maxOccurs="1" /&gt;
-			&lt;xs:element ref="cmis:allowableActions" minOccurs="0"
-				maxOccurs="1" /&gt;
+			&lt;xs:element name="allowableActions" type="cmis:cmisAllowableActionsType"
+				minOccurs="0" maxOccurs="1" /&gt;
+
 			&lt;xs:element name="relationship" type="cmis:cmisObjectType"
 				minOccurs="0" maxOccurs="unbounded" /&gt;
 
-			&lt;xs:element name="child" type="cmis:cmisObjectType"
-				minOccurs="0" maxOccurs="unbounded"&gt;
-				&lt;xs:annotation&gt;
-					&lt;xs:documentation&gt;
-						This holds the children objects of this folder. This is used only in
-						the Web Service binding. In the REST/AtomPub binding, an atom
-						extension element is used.
-				&lt;/xs:documentation&gt;
-				&lt;/xs:annotation&gt;
-			&lt;/xs:element&gt;
-
 			&lt;!--  if change log --&gt;
 			&lt;xs:element name="changeEventInfo" type="cmis:cmisChangeEventType"
 				minOccurs="0" maxOccurs="1" /&gt;
@@ -218,27 +200,25 @@
 			&lt;!--  ACL --&gt;
 			&lt;xs:element name="acl" type="cmis:cmisAccessControlListType"
 				minOccurs="0" maxOccurs="1" /&gt;
+
 			&lt;xs:element name="exactACL" type="xs:boolean" minOccurs="0"
 				maxOccurs="1" /&gt;
 
+			&lt;!-- Applied Policy IDs --&gt;
+			&lt;xs:element name="policyIds" type="cmis:cmisListOfIdsType"
+				minOccurs="0" maxOccurs="1" /&gt;
+
 			&lt;!--  Rendition --&gt;
 			&lt;xs:element name="rendition" type="cmis:cmisRenditionType"
 				minOccurs="0" maxOccurs="unbounded" /&gt;
 
+			&lt;!--  extensions --&gt;
 			&lt;xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"
 				namespace="##other" /&gt;
 		&lt;/xs:sequence&gt;
 		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
 	&lt;/xs:complexType&gt;
 
-	&lt;!--  anyther tag --&gt;
-	&lt;xs:complexType name="cmisAnyXml"&gt;
-		&lt;xs:sequence&gt;
-			&lt;xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"
-				namespace="##other" /&gt;
-		&lt;/xs:sequence&gt;
-		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
-	&lt;/xs:complexType&gt;
 
 	&lt;!-- property bag --&gt;
 	&lt;xs:attribute name="key" type="xs:string" /&gt;
@@ -264,14 +244,10 @@
 					nillable="true" /&gt;
 				&lt;xs:element name="propertyHtml" type="cmis:cmisPropertyHtml"
 					nillable="true" /&gt;
-				&lt;xs:element name="propertyXhtml" type="cmis:cmisPropertyXhtml"
-					nillable="true" /&gt;
 				&lt;xs:element name="propertyString" type="cmis:cmisPropertyString"
 					nillable="true" /&gt;
 				&lt;xs:element name="propertyUri" type="cmis:cmisPropertyUri"
 					nillable="true" /&gt;
-				&lt;xs:element name="propertyXml" type="cmis:cmisPropertyXml"
-					nillable="true" /&gt;
 			&lt;/xs:choice&gt;
 			&lt;xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
 				processContents="lax" /&gt;
@@ -282,9 +258,44 @@
 
 	&lt;!-- start the prop definitions --&gt;
 	&lt;xs:complexType name="cmisProperty"&gt;
-		&lt;xs:attribute name="pdid" use="required" /&gt;
-		&lt;xs:attribute name="localname" use="optional" /&gt;
-		&lt;xs:attribute name="displayname" use="optional" /&gt;
+		&lt;xs:attribute name="propertyDefinitionId" use="optional"&gt;
+			&lt;xs:annotation&gt;
+				&lt;xs:documentation&gt;
+					This is the property definition id for this
+					property instance. This is
+					not required to be set when used as a
+					default value. This is
+					required to be set when used for query result
+					set or returning
+					properties on an object.
+		&lt;/xs:documentation&gt;
+			&lt;/xs:annotation&gt;
+		&lt;/xs:attribute&gt;
+		&lt;xs:attribute name="localName" use="optional"&gt;
+			&lt;xs:annotation&gt;
+				&lt;xs:documentation&gt;
+					This is the localname as defined by the property
+					definition
+				&lt;/xs:documentation&gt;
+			&lt;/xs:annotation&gt;
+		&lt;/xs:attribute&gt;
+		&lt;xs:attribute name="displayName" use="optional"&gt;
+			&lt;xs:annotation&gt;
+				&lt;xs:documentation&gt;
+					This is the displayname as defined by the property
+					definition
+				&lt;/xs:documentation&gt;
+			&lt;/xs:annotation&gt;
+		&lt;/xs:attribute&gt;
+		&lt;xs:attribute name="queryName" use="optional"&gt;
+			&lt;xs:annotation&gt;
+				&lt;xs:documentation&gt;
+					This is the queryName. This must be specified if
+					this is the result of a query. If aliases are used, the alias is to
+					be specified here instead of the queryName.
+				&lt;/xs:documentation&gt;
+			&lt;/xs:annotation&gt;
+		&lt;/xs:attribute&gt;
 		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
 	&lt;/xs:complexType&gt;
 	&lt;xs:complexType name="cmisPropertyBoolean"&gt;
@@ -304,7 +315,6 @@
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
 						type="xs:string" /&gt;
 				&lt;/xs:sequence&gt;
-				&lt;xs:attribute ref="cmis:href" use="optional" /&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
 	&lt;/xs:complexType&gt;
@@ -342,35 +352,14 @@
 		&lt;xs:complexContent&gt;
 			&lt;xs:extension base="cmis:cmisProperty"&gt;
 				&lt;xs:sequence&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"&gt;
-						&lt;xs:complexType&gt;
-							&lt;xs:sequence&gt;
-								&lt;xs:any minOccurs="0" maxOccurs="unbounded"
-									processContents="lax" namespace="##other" /&gt;
-							&lt;/xs:sequence&gt;
-						&lt;/xs:complexType&gt;
-					&lt;/xs:element&gt;
-				&lt;/xs:sequence&gt;
-			&lt;/xs:extension&gt;
-		&lt;/xs:complexContent&gt;
-	&lt;/xs:complexType&gt;
-	&lt;xs:complexType name="cmisPropertyXhtml"&gt;
-		&lt;xs:complexContent&gt;
-			&lt;xs:extension base="cmis:cmisProperty"&gt;
-				&lt;xs:sequence&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"&gt;
-						&lt;xs:complexType&gt;
-							&lt;xs:sequence&gt;
-								&lt;xs:any minOccurs="0" maxOccurs="unbounded"
-									processContents="lax" namespace="##other" /&gt;
-							&lt;/xs:sequence&gt;
-						&lt;/xs:complexType&gt;
-					&lt;/xs:element&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
+						type="xs:string" /&gt;
 				&lt;/xs:sequence&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
 	&lt;/xs:complexType&gt;
 
+
 	&lt;xs:complexType name="cmisPropertyString"&gt;
 		&lt;xs:complexContent&gt;
 			&lt;xs:extension base="cmis:cmisProperty"&gt;
@@ -391,22 +380,7 @@
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
 	&lt;/xs:complexType&gt;
-	&lt;xs:complexType name="cmisPropertyXml"&gt;
-		&lt;xs:complexContent&gt;
-			&lt;xs:extension base="cmis:cmisProperty"&gt;
-				&lt;xs:sequence&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"&gt;
-						&lt;xs:complexType&gt;
-							&lt;xs:sequence&gt;
-								&lt;xs:any minOccurs="0" maxOccurs="unbounded"
-									processContents="lax" namespace="##other" /&gt;
-							&lt;/xs:sequence&gt;
-						&lt;/xs:complexType&gt;
-					&lt;/xs:element&gt;
-				&lt;/xs:sequence&gt;
-			&lt;/xs:extension&gt;
-		&lt;/xs:complexContent&gt;
-	&lt;/xs:complexType&gt;
+
 
 	&lt;!-- cmis choice --&gt;
 	&lt;xs:complexType name="cmisChoice"&gt;
@@ -419,6 +393,8 @@
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
 						type="xs:boolean" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
+						type="cmis:cmisChoiceBoolean" /&gt;
 				&lt;/xs:sequence&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
@@ -429,8 +405,9 @@
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
 						type="xs:string" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
+						type="cmis:cmisChoiceId" /&gt;
 				&lt;/xs:sequence&gt;
-				&lt;xs:attribute ref="cmis:href" use="optional" /&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
 	&lt;/xs:complexType&gt;
@@ -440,6 +417,8 @@
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
 						type="xs:integer" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
+						type="cmis:cmisChoiceInteger" /&gt;
 				&lt;/xs:sequence&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
@@ -450,6 +429,8 @@
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
 						type="xs:dateTime" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
+						type="cmis:cmisChoiceDateTime" /&gt;
 				&lt;/xs:sequence&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
@@ -460,6 +441,8 @@
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
 						type="xs:decimal" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
+						type="cmis:cmisChoiceDecimal" /&gt;
 				&lt;/xs:sequence&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
@@ -468,40 +451,23 @@
 		&lt;xs:complexContent&gt;
 			&lt;xs:extension base="cmis:cmisChoice"&gt;
 				&lt;xs:sequence&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"&gt;
-						&lt;xs:complexType&gt;
-							&lt;xs:sequence&gt;
-								&lt;xs:any minOccurs="0" maxOccurs="unbounded"
-									processContents="lax" namespace="##other" /&gt;
-							&lt;/xs:sequence&gt;
-						&lt;/xs:complexType&gt;
-					&lt;/xs:element&gt;
-				&lt;/xs:sequence&gt;
-			&lt;/xs:extension&gt;
-		&lt;/xs:complexContent&gt;
-	&lt;/xs:complexType&gt;
-	&lt;xs:complexType name="cmisChoiceXhtml"&gt;
-		&lt;xs:complexContent&gt;
-			&lt;xs:extension base="cmis:cmisChoice"&gt;
-				&lt;xs:sequence&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"&gt;
-						&lt;xs:complexType&gt;
-							&lt;xs:sequence&gt;
-								&lt;xs:any minOccurs="0" maxOccurs="unbounded"
-									processContents="lax" namespace="##other" /&gt;
-							&lt;/xs:sequence&gt;
-						&lt;/xs:complexType&gt;
-					&lt;/xs:element&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
+						type="xs:string" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
+						type="cmis:cmisChoiceHtml" /&gt;
 				&lt;/xs:sequence&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
 	&lt;/xs:complexType&gt;
+
 	&lt;xs:complexType name="cmisChoiceString"&gt;
 		&lt;xs:complexContent&gt;
 			&lt;xs:extension base="cmis:cmisChoice"&gt;
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
 						type="xs:string" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
+						type="cmis:cmisChoiceString" /&gt;
 				&lt;/xs:sequence&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
@@ -512,26 +478,14 @@
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"
 						type="xs:anyURI" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
+						type="cmis:cmisChoiceUri" /&gt;
 				&lt;/xs:sequence&gt;
+
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
 	&lt;/xs:complexType&gt;
-	&lt;xs:complexType name="cmisChoiceXml"&gt;
-		&lt;xs:complexContent&gt;
-			&lt;xs:extension base="cmis:cmisChoice"&gt;
-				&lt;xs:sequence&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="value"&gt;
-						&lt;xs:complexType&gt;
-							&lt;xs:sequence&gt;
-								&lt;xs:any minOccurs="0" maxOccurs="unbounded"
-									processContents="lax" namespace="##other" /&gt;
-							&lt;/xs:sequence&gt;
-						&lt;/xs:complexType&gt;
-					&lt;/xs:element&gt;
-				&lt;/xs:sequence&gt;
-			&lt;/xs:extension&gt;
-		&lt;/xs:complexContent&gt;
-	&lt;/xs:complexType&gt;
+
 
 	&lt;!--  allowable actions --&gt;
 	&lt;xs:complexType name="cmisAllowableActionsType"&gt;
@@ -540,9 +494,11 @@
 				minOccurs="0" maxOccurs="1" /&gt;
 			&lt;xs:element name="canUpdateProperties" type="xs:boolean"
 				minOccurs="0" maxOccurs="1" /&gt;
+			&lt;xs:element name="canGetFolderTree" type="xs:boolean"
+				minOccurs="0" maxOccurs="1" /&gt;
 			&lt;xs:element name="canGetProperties" type="xs:boolean"
 				minOccurs="0" maxOccurs="1" /&gt;
-			&lt;xs:element name="canGetRelationships" type="xs:boolean"
+			&lt;xs:element name="canGetObjectRelationships" type="xs:boolean"
 				minOccurs="0" maxOccurs="1" /&gt;
 			&lt;xs:element name="canGetObjectParents" type="xs:boolean"
 				minOccurs="0" maxOccurs="1" /&gt;
@@ -606,6 +562,18 @@
 	&lt;/xs:complexType&gt;
 
 
+	&lt;xs:complexType name="cmisListOfIdsType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="id" type="xs:string" minOccurs="1"
+				maxOccurs="unbounded" /&gt;
+
+			&lt;!--  extension --&gt;
+			&lt;xs:any processContents="lax" namespace="##other" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
+	&lt;/xs:complexType&gt;
+
 
 	&lt;!-- Property Attributes --&gt;
 	&lt;xs:complexType name="cmisPropertyDefinitionType"&gt;
@@ -698,6 +666,7 @@
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="1" name="defaultValue"
 						type="cmis:cmisPropertyDateTime" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="1" name="resolution" type="cmis:enumDateTimeResolution" /&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
 						type="cmis:cmisChoiceDateTime" /&gt;
 
@@ -737,19 +706,6 @@
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
 	&lt;/xs:complexType&gt;
-	&lt;xs:complexType name="cmisPropertyXhtmlDefinitionType"&gt;
-		&lt;xs:complexContent&gt;
-			&lt;xs:extension base="cmis:cmisPropertyDefinitionType"&gt;
-				&lt;xs:sequence&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="1" name="defaultValue"
-						type="cmis:cmisPropertyXhtml" /&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
-						type="cmis:cmisChoiceXhtml" /&gt;
-
-				&lt;/xs:sequence&gt;
-			&lt;/xs:extension&gt;
-		&lt;/xs:complexContent&gt;
-	&lt;/xs:complexType&gt;
 	&lt;xs:complexType name="cmisPropertyStringDefinitionType"&gt;
 		&lt;xs:complexContent&gt;
 			&lt;xs:extension base="cmis:cmisPropertyDefinitionType"&gt;
@@ -778,24 +734,10 @@
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;
 	&lt;/xs:complexType&gt;
-	&lt;xs:complexType name="cmisPropertyXmlDefinitionType"&gt;
-		&lt;xs:complexContent&gt;
-			&lt;xs:extension base="cmis:cmisPropertyDefinitionType"&gt;
-				&lt;xs:sequence&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="1" name="defaultValue"
-						type="cmis:cmisPropertyXml" /&gt;
-					&lt;xs:element name="schemaURI" type="xs:anyURI" minOccurs="0"
-						maxOccurs="1" /&gt;
-					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
-						type="cmis:cmisChoiceXml" /&gt;
 
-				&lt;/xs:sequence&gt;
-			&lt;/xs:extension&gt;
-		&lt;/xs:complexContent&gt;
-	&lt;/xs:complexType&gt;
 
 	&lt;!-- type definition --&gt;
-	&lt;xs:complexType name="cmisTypeDefinitionType" abstract="false"&gt;
+	&lt;xs:complexType name="cmisTypeDefinitionType"&gt;
 		&lt;xs:sequence&gt;
 			&lt;!--  primary identifying attribute --&gt;
 			&lt;xs:element name="id" type="xs:string" minOccurs="1"
@@ -803,7 +745,7 @@
 			&lt;xs:element name="localName" type="xs:string" minOccurs="1"
 				maxOccurs="1" /&gt;
 			&lt;xs:element name="localNamespace" type="xs:anyURI"
-				minOccurs="0" maxOccurs="1" /&gt;
+				minOccurs="1" maxOccurs="1" nillable="true" /&gt;
 			&lt;xs:element name="displayName" type="xs:string" minOccurs="0"
 				maxOccurs="1" /&gt;
 			&lt;xs:element name="queryName" type="xs:string" minOccurs="0"
@@ -812,12 +754,20 @@
 				maxOccurs="1" /&gt;
 
 			&lt;!--  base type --&gt;
-			&lt;xs:element name="baseTypeId" type="cmis:enumBaseObjectTypeIds"
+			&lt;xs:element name="baseId" type="cmis:enumBaseObjectTypeIds"
 				minOccurs="1" maxOccurs="1" /&gt;
 
 			&lt;!-- parent --&gt;
 			&lt;xs:element name="parentId" type="xs:string" minOccurs="0"
-				maxOccurs="1" /&gt;
+				maxOccurs="1"&gt;
+				&lt;xs:annotation&gt;
+					&lt;xs:documentation&gt;
+						This is the id for the parent type definition. If
+						this is a base type,
+						this is not present.
+			&lt;/xs:documentation&gt;
+				&lt;/xs:annotation&gt;
+			&lt;/xs:element&gt;
 
 			&lt;!-- flags --&gt;
 			&lt;xs:element name="creatable" type="xs:boolean" minOccurs="1"
@@ -826,7 +776,7 @@
 				maxOccurs="1" /&gt;
 			&lt;xs:element name="queryable" type="xs:boolean" minOccurs="1"
 				maxOccurs="1" /&gt;
-			&lt;xs:element name="fulltextindexed" type="xs:boolean"
+			&lt;xs:element name="fulltextIndexed" type="xs:boolean"
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="includedInSupertypeQuery" type="xs:boolean"
 				minOccurs="1" maxOccurs="1" default="true" /&gt;
@@ -851,9 +801,7 @@
 				&lt;xs:element name="propertyIdDefinition" type="cmis:cmisPropertyIdDefinitionType" /&gt;
 				&lt;xs:element name="propertyIntegerDefinition" type="cmis:cmisPropertyIntegerDefinitionType" /&gt;
 				&lt;xs:element name="propertyHtmlDefinition" type="cmis:cmisPropertyHtmlDefinitionType" /&gt;
-				&lt;xs:element name="propertyXhtmlDefinition" type="cmis:cmisPropertyXhtmlDefinitionType" /&gt;
 				&lt;xs:element name="propertyStringDefinition" type="cmis:cmisPropertyStringDefinitionType" /&gt;
-				&lt;xs:element name="propertyXmlDefinition" type="cmis:cmisPropertyXmlDefinitionType" /&gt;
 				&lt;xs:element name="propertyUriDefinition" type="cmis:cmisPropertyUriDefinitionType" /&gt;
 			&lt;/xs:choice&gt;
 
@@ -916,19 +864,20 @@
 				maxOccurs="1" /&gt;
 			&lt;xs:element name="searchAllVersions" type="xs:boolean"
 				minOccurs="0" maxOccurs="1" /&gt;
+
+			&lt;xs:element name="includeAllowableActions" type="xs:boolean"
+				minOccurs="0" maxOccurs="1" /&gt;
+			&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
+				minOccurs="0" maxOccurs="1" /&gt;
+			&lt;xs:element name="renditionFilter" type="xs:string"
+				minOccurs="0" maxOccurs="1" /&gt;
+
 			&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
 				maxOccurs="1" /&gt;
 			&lt;xs:element name="skipCount" type="xs:integer" minOccurs="0"
 				maxOccurs="1" /&gt;
 
-			&lt;xs:element name="includeAllowableActions" type="xs:boolean"
-				minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-			&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
-				minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-			&lt;xs:element name="includeRenditions" type="xs:boolean"
-				minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-
-			&lt;xs:any maxOccurs="unbounded" minOccurs="1" namespace="##other"
+			&lt;xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other"
 				processContents="lax" /&gt;
 		&lt;/xs:sequence&gt;
 		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
@@ -943,8 +892,6 @@
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="repositoryName" type="xs:string"
 				minOccurs="1" maxOccurs="1" /&gt;
-			&lt;xs:element name="repositoryRelationship" type="xs:string"
-				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="repositoryDescription" type="xs:string"
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="vendorName" type="xs:string" minOccurs="1"
@@ -954,7 +901,8 @@
 			&lt;xs:element name="productVersion" type="xs:string"
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="rootFolderId" type="xs:string" /&gt;
-			&lt;xs:element name="latestChangeToken" type="xs:string" /&gt;
+			&lt;xs:element name="latestChangeLogToken" type="xs:string"
+				minOccurs="0" /&gt;
 			&lt;xs:element name="capabilities" type="cmis:cmisRepositoryCapabilitiesType"
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="aclCapability" type="cmis:cmisACLCapabilityType"
@@ -963,9 +911,38 @@
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="thinClientURI" type="xs:anyURI"
 				minOccurs="0" maxOccurs="1" /&gt;
-
 			&lt;xs:element name="changesIncomplete" type="xs:boolean"
 				maxOccurs="1" minOccurs="0" /&gt;
+			&lt;xs:element name="changesOnType" type="cmis:enumBaseObjectTypeIds"
+				minOccurs="0" maxOccurs="unbounded" /&gt;
+
+			&lt;xs:element name="principalAnonymous" type="xs:string"
+				minOccurs="0" maxOccurs="1"&gt;
+				&lt;xs:annotation&gt;
+					&lt;xs:documentation&gt;
+						If set, this field holds the principal who is
+						used for anonymous
+						access. This principal can then be passed to the
+						ACL services to
+						specify what permissions anonymous users should
+						have
+					&lt;/xs:documentation&gt;
+				&lt;/xs:annotation&gt;
+			&lt;/xs:element&gt;
+
+			&lt;xs:element name="principalAnyone" type="xs:string"
+				minOccurs="0" maxOccurs="1"&gt;
+				&lt;xs:annotation&gt;
+					&lt;xs:documentation&gt;
+						If set, this field holds the principal who is
+						used for everyone's access. This principal can then be passed to
+						the
+						ACL services to
+						specify what permissions everyone should
+						have
+					&lt;/xs:documentation&gt;
+				&lt;/xs:annotation&gt;
+			&lt;/xs:element&gt;
 
 			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
 				maxOccurs="unbounded" /&gt;
@@ -976,22 +953,24 @@
 	&lt;xs:complexType name="cmisRepositoryCapabilitiesType"&gt;
 		&lt;xs:sequence&gt;
 			&lt;xs:element name="capabilityACL" type="cmis:enumCapabilityACL"
-				maxOccurs="1" minOccurs="0" /&gt;
+				maxOccurs="1" minOccurs="1" /&gt;
 			&lt;xs:element name="capabilityAllVersionsSearchable" type="xs:boolean"
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="capabilityChanges" type="cmis:enumCapabilityChanges" /&gt;
-			&lt;xs:element name="capabilityChangesOnType" type="cmis:enumBaseObjectTypeIds"
-				minOccurs="1" maxOccurs="unbounded" /&gt;
+
 			&lt;xs:element name="capabilityContentStreamUpdatability"
 				type="cmis:enumCapabilityContentStreamUpdates" minOccurs="1"
 				maxOccurs="1" /&gt;
 			&lt;xs:element name="capabilityGetDescendants" type="xs:boolean"
 				maxOccurs="1" minOccurs="1" /&gt;
+			&lt;xs:element name="capabilityGetFolderTree" type="xs:boolean"
+				maxOccurs="1" minOccurs="1" /&gt;
+
 			&lt;xs:element name="capabilityMultifiling" type="xs:boolean"
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="capabilityPWCSearchable" type="xs:boolean"
 				minOccurs="1" maxOccurs="1" /&gt;
-			&lt;xs:element name="capabilityPWCUpdateable" type="xs:boolean"
+			&lt;xs:element name="capabilityPWCUpdatable" type="xs:boolean"
 				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="capabilityQuery" type="cmis:enumCapabilityQuery"
 				minOccurs="1" maxOccurs="1" /&gt;
@@ -1028,7 +1007,7 @@
 	&lt;xs:simpleType name="enumCapabilityChanges"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
 			&lt;xs:enumeration value="none" /&gt;
-			&lt;xs:enumeration value="objectIdsOnly" /&gt;
+			&lt;xs:enumeration value="objectidsonly" /&gt;
 			&lt;xs:enumeration value="properties" /&gt;
 			&lt;xs:enumeration value="all" /&gt;
 		&lt;/xs:restriction&gt;
@@ -1050,8 +1029,8 @@
 	&lt;!-- ACL --&gt;
 	&lt;xs:simpleType name="enumACLPropagation"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="repository-determined" /&gt;
-			&lt;xs:enumeration value="object-only" /&gt;
+			&lt;xs:enumeration value="repositorydetermined" /&gt;
+			&lt;xs:enumeration value="objectonly" /&gt;
 			&lt;xs:enumeration value="propagate" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
@@ -1068,7 +1047,6 @@
 		&lt;xs:restriction base="xs:string"&gt;
 			&lt;xs:enumeration value="cmis:read" /&gt;
 			&lt;xs:enumeration value="cmis:write" /&gt;
-			&lt;xs:enumeration value="cmis:delete" /&gt;
 			&lt;xs:enumeration value="cmis:all" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
@@ -1078,15 +1056,28 @@
 			&lt;xs:element name="permission" type="xs:string" /&gt;
 			&lt;xs:element name="description" type="xs:string" minOccurs="0"
 				maxOccurs="1" /&gt;
-			&lt;xs:any namespace="##other" processContents="lax" maxOccurs="unbounded" /&gt;
+			&lt;xs:any namespace="##other" minOccurs="0" processContents="lax"
+				maxOccurs="unbounded" /&gt;
 		&lt;/xs:sequence&gt;
 	&lt;/xs:complexType&gt;
 
 	&lt;xs:complexType name="cmisPermissionMapping"&gt;
 		&lt;xs:sequence&gt;
-			&lt;xs:element name="key" type="cmis:enumAllowableActionsKey" minOccurs="1" maxOccurs="1" /&gt;
-			&lt;xs:element name="permission" type="xs:string" minOccurs="1" maxOccurs="1" /&gt;
-			&lt;xs:any namespace="##other" /&gt;
+			&lt;xs:element name="key" type="cmis:enumAllowableActionsKey"
+				minOccurs="1" maxOccurs="1" /&gt;
+			&lt;xs:element name="permission" type="xs:string" minOccurs="1"
+				maxOccurs="unbounded"&gt;
+				&lt;xs:annotation&gt;
+					&lt;xs:documentation&gt;
+						Multiple entries are OR'ed together. Any
+						permission that specified is
+						sufficient to provide rights required
+						in key
+					&lt;/xs:documentation&gt;
+				&lt;/xs:annotation&gt;
+			&lt;/xs:element&gt;
+			&lt;xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
+				processContents="lax" /&gt;
 		&lt;/xs:sequence&gt;
 	&lt;/xs:complexType&gt;
 
@@ -1123,7 +1114,7 @@
 			&lt;xs:enumeration value="canCancelCheckout.Document" /&gt;
 			&lt;xs:enumeration value="canCheckin.Document" /&gt;
 			&lt;xs:enumeration value="canGetAllVersions.VersionSeries" /&gt;
-			&lt;xs:enumeration value="canGetRelationship.Object" /&gt;
+			&lt;xs:enumeration value="canGetObjectRelationships.Object" /&gt;
 			&lt;xs:enumeration value="canAddPolicy.Object" /&gt;
 			&lt;xs:enumeration value="canAddPolicy.Policy" /&gt;
 			&lt;xs:enumeration value="canRemovePolicy.Object" /&gt;
@@ -1134,22 +1125,39 @@
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 
+	&lt;xs:simpleType name="enumUsers"&gt;
+		&lt;xs:restriction base="xs:string"&gt;
+			&lt;xs:enumeration value="cmis:user"&gt;
+				&lt;xs:annotation&gt;
+					&lt;xs:documentation&gt;
+						This user can be used on setting ACLs to specify
+						the permission this
+						user context should have.
+			&lt;/xs:documentation&gt;
+				&lt;/xs:annotation&gt;
+			&lt;/xs:enumeration&gt;
+		&lt;/xs:restriction&gt;
+	&lt;/xs:simpleType&gt;
+
 	&lt;!-- ACL on objects --&gt;
 	&lt;xs:complexType name="cmisAccessControlPrincipalType"&gt;
 		&lt;xs:sequence&gt;
 			&lt;xs:element name="principalId" type="xs:string" /&gt;
 
-			&lt;xs:any namespace="##other" maxOccurs="unbounded" /&gt;
+			&lt;xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
+				processContents="lax" /&gt;
 		&lt;/xs:sequence&gt;
 	&lt;/xs:complexType&gt;
 
 	&lt;xs:complexType name="cmisAccessControlEntryType"&gt;
 		&lt;xs:sequence&gt;
 			&lt;xs:element name="principal" type="cmis:cmisAccessControlPrincipalType" /&gt;
-			&lt;xs:element name="permission" type="xs:string" /&gt;
+			&lt;xs:element name="permission" type="xs:string" minOccurs="1"
+				maxOccurs="unbounded" /&gt;
 			&lt;xs:element name="direct" type="xs:boolean" /&gt;
 
-			&lt;xs:any namespace="##other" maxOccurs="unbounded" /&gt;
+			&lt;xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
+				processContents="lax" /&gt;
 		&lt;/xs:sequence&gt;
 	&lt;/xs:complexType&gt;
 
@@ -1157,13 +1165,14 @@
 		&lt;xs:sequence&gt;
 			&lt;xs:element name="permission" type="cmis:cmisAccessControlEntryType"
 				minOccurs="1" maxOccurs="unbounded" /&gt;
-			&lt;xs:any namespace="##other" maxOccurs="unbounded" /&gt;
+			&lt;xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
+				processContents="lax" /&gt;
 		&lt;/xs:sequence&gt;
 	&lt;/xs:complexType&gt;
 
 	&lt;xs:complexType name="cmisACLCapabilityType"&gt;
 		&lt;xs:sequence&gt;
-			&lt;xs:element name="setType" type="cmis:enumACLPropagation" /&gt;
+			&lt;xs:element name="propagation" type="cmis:enumACLPropagation" /&gt;
 			&lt;xs:element name="permissions" type="cmis:cmisPermissionDefinition"
 				minOccurs="1" maxOccurs="unbounded" /&gt;
 			&lt;xs:element name="mapping" type="cmis:cmisPermissionMapping"
@@ -1188,15 +1197,17 @@
 	&lt;xs:complexType name="cmisRenditionType"&gt;
 		&lt;xs:sequence&gt;
 			&lt;xs:element name="streamId" type="xs:string" /&gt;
-			&lt;xs:element name="mimetype" type="xs:string" minOccurs="0" /&gt;
-			&lt;xs:element name="length" type="xs:integer" minOccurs="0" /&gt;
+			&lt;xs:element name="mimetype" type="xs:string" /&gt;
+			&lt;xs:element name="length" type="xs:integer" /&gt;
+			&lt;xs:element name="kind" type="xs:string" /&gt;
 			&lt;xs:element name="title" type="xs:string" minOccurs="0" /&gt;
-			&lt;xs:element name="kind" type="xs:string" minOccurs="0" /&gt;
 			&lt;xs:element name="height" type="xs:integer" minOccurs="0" /&gt;
 			&lt;xs:element name="width" type="xs:integer" minOccurs="0" /&gt;
 			&lt;xs:element name="renditionDocumentId" type="xs:string"
 				minOccurs="0" /&gt;
-			&lt;xs:any namespace="##other" /&gt;
+
+			&lt;xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
+				processContents="lax" /&gt;
 		&lt;/xs:sequence&gt;
 	&lt;/xs:complexType&gt;
 
@@ -1226,4 +1237,4 @@
 		&lt;/xs:annotation&gt;
 	&lt;/xs:element&gt;
 &lt;/xs:schema&gt;
-	&lt;!-- EOF --&gt;
+	&lt;!-- EOF --&gt;
\ No newline at end of file




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r830511 [3/4] - in /incubator/chemistry/trunk/chemistry: chemistry-api/src/main/java/org/apache/chemistry/ chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/ chemistry-atompub-client/src/main/java/org/apache/chemist...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091028115429.5C0E72388985@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091028115429-5C0E72388985@eris-apache-org%3e</id>
<updated>2009-10-28T11:54:27Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Messaging.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Messaging.xsd?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Messaging.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Messaging.xsd Wed Oct 28 11:54:22 2009
@@ -1,16 +1,23 @@
 &lt;?xml version="1.0" encoding="utf-8"?&gt;
+	&lt;!--
+		$Revision: 135 $
+		$Date: 2009-10-19 10:59:00 -0700 (Mon, 19 Oct 2009) $
+		$Author: albertcbrown $
+		$HeadURL: http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/CMIS-Messaging.xsd $
+	--&gt;
 &lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
-	targetNamespace="http://docs.oasis-open.org/ns/cmis/messaging/200901"
-	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200901"
-	xmlns:cmism="http://docs.oasis-open.org/ns/cmis/messaging/200901"
-	xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" version="0.62g"
+	targetNamespace="http://docs.oasis-open.org/ns/cmis/messaging/200908/"
+	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"
+	xmlns:cmism="http://docs.oasis-open.org/ns/cmis/messaging/200908/"
+	xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" version="1.0"
 	xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
 	jaxb:extensionBindingPrefixes="xjc" jaxb:version="2.1"
 	elementFormDefault="qualified"&gt;
+
 	&lt;xs:import schemaLocation="CMIS-Core.xsd"
-		namespace="http://docs.oasis-open.org/ns/cmis/core/200901" /&gt;
+		namespace="http://docs.oasis-open.org/ns/cmis/core/200908/" /&gt;
 
-	&lt;!--Exceptions--&gt;
+	&lt;!-- exceptions --&gt;
 	&lt;xs:complexType name="cmisFaultType"&gt;
 		&lt;xs:sequence&gt;
 			&lt;xs:element name="type" type="cmism:enumServiceException" /&gt;
@@ -19,10 +26,12 @@
 			&lt;xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" /&gt;
 		&lt;/xs:sequence&gt;
 	&lt;/xs:complexType&gt;
+
 	&lt;xs:element name="cmisFault" type="cmism:cmisFaultType" /&gt;
 	&lt;xs:simpleType name="enumServiceException"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
 			&lt;xs:enumeration value="constraint" /&gt;
+			&lt;xs:enumeration value="nameConstraintViolation" /&gt;
 			&lt;xs:enumeration value="contentAlreadyExists" /&gt;
 			&lt;xs:enumeration value="filterNotValid" /&gt;
 			&lt;xs:enumeration value="invalidArgument" /&gt;
@@ -32,32 +41,115 @@
 			&lt;xs:enumeration value="runtime" /&gt;
 			&lt;xs:enumeration value="storage" /&gt;
 			&lt;xs:enumeration value="streamNotSupported" /&gt;
-			&lt;xs:enumeration value="type" /&gt;
 			&lt;xs:enumeration value="updateConflict" /&gt;
 			&lt;xs:enumeration value="versioning" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 
-
+	&lt;!-- extension --&gt;
+	&lt;xs:complexType name="cmisExtensionType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" /&gt;
+		&lt;/xs:sequence&gt;
+	&lt;/xs:complexType&gt;
+	
 	&lt;!-- types for WS --&gt;
 	&lt;xs:complexType name="cmisTypeContainer"&gt;
 		&lt;xs:sequence&gt;
-			&lt;xs:element name="type" type="cmis:cmisTypeDefinitionType" /&gt;
+			&lt;xs:element name="type" type="cmis:cmisTypeDefinitionType" 
+				minOccurs="1" maxOccurs="1" /&gt;
 			&lt;xs:element name="children" type="cmism:cmisTypeContainer"
 				minOccurs="0" maxOccurs="unbounded" /&gt;
+			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
+	&lt;/xs:complexType&gt;
+
+	&lt;xs:complexType name="cmisTypeDefinitionListType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="types" type="cmis:cmisTypeDefinitionType"
+				minOccurs="0" maxOccurs="unbounded" /&gt;
+			&lt;xs:element name="hasMoreItems" type="xs:boolean"
+				minOccurs="1" maxOccurs="1" /&gt;
+			&lt;xs:element name="numItems" type="xs:integer" minOccurs="0"
+				maxOccurs="1" /&gt;
+			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
+	&lt;/xs:complexType&gt;
+	
+	&lt;xs:complexType name="cmisObjectInFolderContainerType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="objectInFolder" type="cmism:cmisObjectInFolderType"
+				minOccurs="1" maxOccurs="1" /&gt;
+			&lt;xs:element name="children" type="cmism:cmisObjectInFolderContainerType"
+				minOccurs="0" maxOccurs="unbounded" /&gt;
+			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;	
+	&lt;/xs:complexType&gt;
+
+	&lt;xs:complexType name="cmisObjectListType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="objects" type="cmis:cmisObjectType"
+				minOccurs="0" maxOccurs="unbounded" /&gt;
+			&lt;xs:element name="hasMoreItems" type="xs:boolean"
+				minOccurs="1" maxOccurs="1" /&gt;
+			&lt;xs:element name="numItems" type="xs:integer" minOccurs="0"
+				maxOccurs="1" /&gt;
+			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;		
+	&lt;/xs:complexType&gt;
+	
+	&lt;xs:complexType name="cmisObjectInFolderType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="object" type="cmis:cmisObjectType" 
+				minOccurs="1" maxOccurs="1"/&gt;
+			&lt;xs:element name="pathSegment" type="xs:string" minOccurs="0"
+				maxOccurs="1" /&gt;
+			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
 		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;		
 	&lt;/xs:complexType&gt;
 
+	&lt;xs:complexType name="cmisObjectParentsType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="object" type="cmis:cmisObjectType" 
+				minOccurs="1" maxOccurs="1"/&gt;
+			&lt;xs:element name="relativePathSegment" type="xs:string" minOccurs="0"
+				maxOccurs="1" /&gt;
+			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt; 
+	&lt;/xs:complexType&gt;
+	
+	&lt;xs:complexType name="cmisObjectInFolderListType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="objects" type="cmism:cmisObjectInFolderType"
+				minOccurs="0" maxOccurs="unbounded" /&gt;
+			&lt;xs:element name="hasMoreItems" type="xs:boolean"
+				minOccurs="1" maxOccurs="1" /&gt;
+			&lt;xs:element name="numItems" type="xs:integer" minOccurs="0"
+				maxOccurs="1" /&gt;
+			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
+	&lt;/xs:complexType&gt;
+	
 	&lt;xs:complexType name="cmisRepositoryEntryType"&gt;
 		&lt;xs:sequence&gt;
-			&lt;xs:element name="id" type="xs:string" minOccurs="1"
+			&lt;xs:element name="repositoryId" type="xs:string" minOccurs="1"
 				maxOccurs="1" /&gt;
-			&lt;xs:element name="name" type="xs:string" minOccurs="1"
+			&lt;xs:element name="repositoryName" type="xs:string" minOccurs="1"
 				maxOccurs="1" /&gt;
-			&lt;xs:element name="relationship" type="xs:string"
-				minOccurs="0" maxOccurs="1" /&gt;
-			&lt;xs:element name="thinClientURI" type="xs:anyURI"
-				minOccurs="0" maxOccurs="1" /&gt;
 			&lt;xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
 				processContents="lax" /&gt;
 		&lt;/xs:sequence&gt;
@@ -66,10 +158,9 @@
 
 	&lt;xs:complexType name="cmisContentStreamType"&gt;
 		&lt;xs:sequence&gt;
-			&lt;xs:element name="length" type="xs:integer" /&gt;
+			&lt;xs:element name="length" type="xs:integer" minOccurs="0" /&gt;
 			&lt;xs:element name="mimeType" type="xs:string" minOccurs="0" /&gt;
 			&lt;xs:element name="filename" type="xs:string" minOccurs="0" /&gt;
-			&lt;xs:element name="uri" type="xs:anyURI" minOccurs="0" /&gt;
 			&lt;xs:element name="stream" type="xs:base64Binary"
 				xmime:expectedContentTypes="application/octet-stream" xmlns:xmime="http://www.w3.org/2005/05/xmlmime" /&gt;
 			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
@@ -78,16 +169,42 @@
 		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
 	&lt;/xs:complexType&gt;
 
-	&lt;!--[Repository Services]--&gt;
+	&lt;xs:complexType name="cmisACLType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="ACL" type="cmis:cmisAccessControlListType"
+				minOccurs="1" maxOccurs="1" /&gt;
+			&lt;xs:element name="exact" type="xs:boolean" 
+				minOccurs="0" maxOccurs="1"/&gt;
+			&lt;xs:any namespace="##other" processContents="lax" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+		&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
+	&lt;/xs:complexType&gt;
+	
+	&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
+	&lt;!-- [Repository Services] --&gt;
+	
+	&lt;!-- getRepositories Operation --&gt;
 	&lt;xs:element name="getRepositories"&gt;
 		&lt;xs:complexType&gt;
-			&lt;xs:sequence /&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getRepositoriesResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="repository" type="cmism:cmisRepositoryEntryType"
+				&lt;xs:element name="repositories" type="cmism:cmisRepositoryEntryType"
 					minOccurs="0" maxOccurs="unbounded" nillable="true" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
@@ -100,13 +217,25 @@
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getRepositoryInfoResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="repositoryInfo" type="cmis:cmisRepositoryInfoType" /&gt;
+				&lt;xs:element name="repositoryInfo" type="cmis:cmisRepositoryInfoType" 
+					minOccurs="1" maxOccurs="1"/&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -125,15 +254,25 @@
 					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="skipCount" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getTypeChildrenResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="type" type="cmis:cmisTypeDefinitionType"
-					minOccurs="0" maxOccurs="unbounded" /&gt;
-				&lt;xs:element name="hasMoreItems" type="xs:boolean"
+				&lt;xs:element name="types" type="cmism:cmisTypeDefinitionListType"
 					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
@@ -151,13 +290,25 @@
 					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includePropertyDefinitions" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getTypeDescendantsResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="type" type="cmism:cmisTypeContainer"
+				&lt;xs:element name="types" type="cmism:cmisTypeContainer"
 					minOccurs="0" maxOccurs="unbounded" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
@@ -171,6 +322,17 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="typeId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -182,8 +344,10 @@
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-
-	&lt;!--[Navigation Services]--&gt;
+	
+	&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
+	&lt;!-- [Navigation Services] --&gt;
+	
 	&lt;!-- getDescendants Operation --&gt;
 	&lt;xs:element name="getDescendants"&gt;
 		&lt;xs:complexType&gt;
@@ -200,16 +364,29 @@
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeRenditions" type="xs:boolean"
+				&lt;xs:element name="renditionFilter" type="xs:string"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includePathSegments" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="orderBy" type="xs:string" minOccurs="0" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getDescendantsResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
+				&lt;xs:element name="objects" type="cmism:cmisObjectInFolderContainerType"
 					minOccurs="0" maxOccurs="unbounded" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
@@ -223,21 +400,38 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="folderId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
-				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
-					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="depth" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+					
+				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="renditionFilter" type="xs:string"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includePathSegments" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getFolderTreeResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
+				&lt;xs:element name="objects" type="cmism:cmisObjectInFolderContainerType"
 					minOccurs="0" maxOccurs="unbounded" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
@@ -253,28 +447,40 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="orderBy" type="xs:string" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+
 				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeRenditions" type="xs:boolean"
+				&lt;xs:element name="renditionFilter" type="xs:string"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeACL" type="xs:boolean"
+				&lt;xs:element name="includePathSegments" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="skipCount" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="orderBy" type="xs:string" minOccurs="0" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getChildrenResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
-					minOccurs="0" maxOccurs="unbounded" /&gt;
-				&lt;xs:element name="hasMoreItems" type="xs:boolean"
+				&lt;xs:element name="objects" type="cmism:cmisObjectInFolderListType"
 					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
@@ -290,6 +496,18 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -297,7 +515,7 @@
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="object" type="cmis:cmisObjectType"
-					minOccurs="0" maxOccurs="1" /&gt;
+					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -310,21 +528,41 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
-					maxOccurs="1" /&gt;
+					maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="renditionFilter" type="xs:string"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeRelativePathSegment" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getObjectParentsResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
+				&lt;xs:element name="parents" type="cmism:cmisObjectParentsType"
 					minOccurs="0" maxOccurs="unbounded" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-	&lt;!-- getObjectParents Operation--&gt;
+	&lt;!-- getRenditions Operation --&gt;
 	&lt;xs:element name="getRenditions"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -333,18 +571,30 @@
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="renditionFilter" type="xs:string"
-					minOccurs="0" maxOccurs="1" /&gt;
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="skipCount" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getRenditionsResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="rendition" type="cmis:cmisRenditionType"
+				&lt;xs:element name="renditions" type="cmis:cmisRenditionType"
 					minOccurs="0" maxOccurs="unbounded" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
@@ -358,6 +608,7 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="folderId" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="orderBy" type="xs:string" minOccurs="0"
@@ -366,26 +617,39 @@
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="renditionFilter" type="xs:string"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="skipCount" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getCheckedOutDocsResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
-					minOccurs="0" maxOccurs="unbounded" /&gt;
-				&lt;xs:element name="hasMoreItems" type="xs:boolean"
+				&lt;xs:element name="objects" type="cmism:cmisObjectListType"
 					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-	&lt;!--[Object Services]--&gt;
-
+	&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
+	&lt;!-- [Object Services] --&gt;
+	
 	&lt;!-- createDocument Operation --&gt;
 	&lt;xs:element name="createDocument"&gt;
 		&lt;xs:complexType&gt;
@@ -395,17 +659,29 @@
 				&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="folderId" type="xs:string" minOccurs="0"
-					maxOccurs="1" /&gt;
+					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="contentStream" type="cmism:cmisContentStreamType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="versioningState" type="cmis:enumVersioningState"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="applyPolicies" type="xs:string"
+				&lt;xs:element name="policies" type="xs:string"
 					minOccurs="0" maxOccurs="unbounded" nillable="true" /&gt;
 				&lt;xs:element name="addACEs" type="cmis:cmisAccessControlListType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="removeACEs" type="cmis:cmisAccessControlListType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -414,6 +690,74 @@
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
+			&lt;/xs:sequence&gt;
+		&lt;/xs:complexType&gt;
+	&lt;/xs:element&gt;
+
+	&lt;!-- createDocumentFromSource Operation --&gt;
+	&lt;xs:element name="createDocumentFromSource"&gt;
+		&lt;xs:complexType&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="repositoryId" type="xs:string"
+					minOccurs="1" maxOccurs="1" /&gt;
+				&lt;xs:element name="sourceId" type="xs:string" minOccurs="1"
+					maxOccurs="1" /&gt;
+				&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
+					minOccurs="1" maxOccurs="1" /&gt;					
+				&lt;xs:element name="folderId" type="xs:string" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="versioningState" type="cmis:enumVersioningState"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="policies" type="xs:string"
+					minOccurs="0" maxOccurs="unbounded" nillable="true" /&gt;
+				&lt;xs:element name="addACEs" type="cmis:cmisAccessControlListType"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="removeACEs" type="cmis:cmisAccessControlListType"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+					
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
+			&lt;/xs:sequence&gt;
+		&lt;/xs:complexType&gt;
+	&lt;/xs:element&gt;
+	&lt;xs:element name="createDocumentFromSourceResponse"&gt;
+		&lt;xs:complexType&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
+					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -426,15 +770,26 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;!-- must match the type attribute value of the properties object --&gt;
 				&lt;xs:element name="folderId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
-				&lt;xs:element name="applyPolicies" type="xs:string"
+				&lt;xs:element name="policies" type="xs:string"
 					minOccurs="0" maxOccurs="unbounded" nillable="true" /&gt;
 				&lt;xs:element name="addACEs" type="cmis:cmisAccessControlListType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="removeACEs" type="cmis:cmisAccessControlListType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -443,6 +798,18 @@
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -455,26 +822,25 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;!-- must match the type attribute value of the properties object --&gt;
-				&lt;xs:element name="sourceObjectId" type="xs:string"
-					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;!--
-					if sourceObjectId exist in the properties passed in then their
-					values MUST match
-				--&gt;
-				&lt;xs:element name="targetObjectId" type="xs:string"
-					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;!--
-					if targetObjectId exist in the properties passed in then their
-					values MUST match
-				--&gt;
 
-				&lt;xs:element name="applyPolicies" type="xs:string"
+				&lt;xs:element name="policies" type="xs:string"
 					minOccurs="0" maxOccurs="unbounded" nillable="true" /&gt;
 				&lt;xs:element name="addACEs" type="cmis:cmisAccessControlListType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="removeACEs" type="cmis:cmisAccessControlListType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -483,11 +849,22 @@
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-	&lt;!--createPolicy Operation--&gt;
+	&lt;!-- createPolicy Operation --&gt;
 	&lt;xs:element name="createPolicy"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -495,12 +872,25 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;!--
-					note that the object type may also be an element in the object and
-					if present the values must match
-				--&gt;
 				&lt;xs:element name="folderId" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="policies" type="xs:string"
+					minOccurs="0" maxOccurs="unbounded" nillable="true" /&gt;
+				&lt;xs:element name="addACEs" type="cmis:cmisAccessControlListType"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="removeACEs" type="cmis:cmisAccessControlListType"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
@@ -510,13 +900,21 @@
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+	
 	&lt;!-- getAllowableActions Operation --&gt;
 	&lt;xs:element name="getAllowableActions"&gt;
 		&lt;xs:complexType&gt;
@@ -525,6 +923,17 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -533,16 +942,10 @@
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="allowableActions" type="cmis:cmisAllowableActionsType"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;!--
-					returning no action elements indicates that no actions are allowed
-				--&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- getProperties Operation --&gt;
 	&lt;xs:element name="getProperties"&gt;
 		&lt;xs:complexType&gt;
@@ -553,48 +956,65 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
-					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
-					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeACL" type="xs:boolean"
-					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getPropertiesResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
+				&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
 					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!-- getFolderByPath Operation --&gt;
-	&lt;xs:element name="getFolderByPath"&gt;
+	&lt;!-- getObject Operation --&gt;
+	&lt;xs:element name="getObject"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="folderPath" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
-				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
-					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="filter" type="xs:string" 
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="renditionFilter" type="xs:string"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includePolicyIds" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeACL" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;xs:element name="getFolderByPathResponse"&gt;
+	&lt;xs:element name="getObjectResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="object" type="cmis:cmisObjectType"
@@ -603,35 +1023,87 @@
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!-- getContentStream Operation --&gt;
-	&lt;xs:element name="getContentStream"&gt;
+	&lt;!-- getObjectByPath Operation --&gt;
+	&lt;xs:element name="getObjectByPath"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
-					maxOccurs="1" /&gt;
-				&lt;xs:element name="streamId" type="xs:string" minOccurs="0"
+				&lt;xs:element name="path" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="filter" type="xs:string" 
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="renditionFilter" type="xs:string"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includePolicyIds" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeACL" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+					
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+					&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;xs:element name="getContentStreamResponse"&gt;
+	&lt;xs:element name="getObjectByPathResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="contentStream" type="cmism:cmisContentStreamType"
+				&lt;xs:element name="object" type="cmis:cmisObjectType"
 					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
+	&lt;!-- getContentStream Operation --&gt;
+	&lt;xs:element name="getContentStream"&gt;
+		&lt;xs:complexType&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="repositoryId" type="xs:string"
+					minOccurs="1" maxOccurs="1" /&gt;
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
+					maxOccurs="1" /&gt;
+				&lt;xs:element name="streamId" type="xs:string" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="offset" type="xs:integer" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="length" type="xs:integer" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+					
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+					&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+			&lt;/xs:sequence&gt;
+		&lt;/xs:complexType&gt;
+	&lt;/xs:element&gt;
+	&lt;xs:element name="getContentStreamResponse"&gt;
+		&lt;xs:complexType&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="contentStream" type="cmism:cmisContentStreamType"
+					minOccurs="1" maxOccurs="1" /&gt;
+			&lt;/xs:sequence&gt;
+		&lt;/xs:complexType&gt;
+	&lt;/xs:element&gt;
+
 	&lt;!-- updateProperties Operation --&gt;
 	&lt;xs:element name="updateProperties"&gt;
 		&lt;xs:complexType&gt;
@@ -648,6 +1120,17 @@
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
 					minOccurs="1" maxOccurs="1" /&gt;
+					
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+					&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -658,14 +1141,21 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="changeToken" type="xs:string"
 					minOccurs="0" maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+					&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
 	&lt;!-- moveObject Operation --&gt;
 	&lt;xs:element name="moveObject"&gt;
 		&lt;xs:complexType&gt;
@@ -678,6 +1168,17 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="sourceFolderId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -686,13 +1187,21 @@
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- deleteObject Operation --&gt;
 	&lt;xs:element name="deleteObject"&gt;
 		&lt;xs:complexType&gt;
@@ -703,18 +1212,37 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="allVersions" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="deleteObjectResponse"&gt;
 		&lt;xs:complexType&gt;
-			&lt;xs:sequence /&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- deleteTree Operation --&gt;
 	&lt;xs:element name="deleteTree"&gt;
 		&lt;xs:complexType&gt;
@@ -723,10 +1251,23 @@
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="folderId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+				&lt;xs:element name="allVersions" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="unfileObject" type="cmis:enumUnfileObject"
-					minOccurs="1" maxOccurs="1" /&gt;
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="continueOnFailure" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
@@ -736,78 +1277,118 @@
 				&lt;xs:element name="failedToDelete"&gt;
 					&lt;xs:complexType&gt;
 						&lt;xs:sequence&gt;
-							&lt;xs:element name="objectId" type="xs:string"
+							&lt;xs:element name="objectIds" type="xs:string"
 								minOccurs="0" maxOccurs="unbounded" /&gt;
+							&lt;xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"
+								processContents="lax" /&gt;
 						&lt;/xs:sequence&gt;
 					&lt;/xs:complexType&gt;
 				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- setContentStream Operation --&gt;
 	&lt;xs:element name="setContentStream"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="overwriteFlag" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="changeToken" type="xs:string"
-					minOccurs="0" maxOccurs="1" /&gt;
-
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="contentStream" type="cmism:cmisContentStreamType"
 					minOccurs="1" maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="setContentStreamResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+				&lt;xs:element name="changeToken" type="xs:string"
+					minOccurs="0" maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- deleteContentStream Operation --&gt;
 	&lt;xs:element name="deleteContentStream"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="changeToken" type="xs:string"
 					minOccurs="0" maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="deleteContentStreamResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="documentId" type="xs:string" /&gt;
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
+					maxOccurs="1" /&gt;
+				&lt;xs:element name="changeToken" type="xs:string"
+					minOccurs="0" maxOccurs="1" /&gt;
+				
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+	
+	&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
 	&lt;!--[Multi-filing Services]--&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!-- addObjectToFolder Operation--&gt;
+
+	&lt;!-- addObjectToFolder Operation --&gt;
 	&lt;xs:element name="addObjectToFolder"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -817,19 +1398,40 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="folderId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+				&lt;xs:element name="allVersions" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="addObjectToFolderResponse"&gt;
 		&lt;xs:complexType&gt;
-			&lt;xs:sequence /&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+					&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!-- removeObjectFromFolder Operation--&gt;
+
+	&lt;!-- removeObjectFromFolder Operation --&gt;
 	&lt;xs:element name="removeObjectFromFolder"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -839,48 +1441,72 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="folderId" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="removeObjectFromFolderResponse"&gt;
 		&lt;xs:complexType&gt;
-			&lt;xs:sequence /&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!--[Discovery Services]--&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+	
+	&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
+	&lt;!-- [Discovery Services] --&gt;
+	
 	&lt;!-- query Operation --&gt;
-	&lt;!--
-		This already provided in CMIS-Core &lt;xs:element name="query"
-		type="cmis:cmisQueryType" /&gt;
-	--&gt;
 	&lt;xs:element name="query"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
-					minOccurs="0" maxOccurs="1" /&gt;
+					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="statement" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="searchAllVersions" type="xs:boolean"
-					minOccurs="0" maxOccurs="1" /&gt;
-				&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
-					maxOccurs="1" /&gt;
-				&lt;xs:element name="skipCount" type="xs:integer" minOccurs="0"
-					maxOccurs="1" /&gt;
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 
 				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeRenditions" type="xs:boolean"
+				&lt;xs:element name="renditionFilter" type="xs:string"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="skipCount" type="xs:integer" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 			&lt;xs:attributeGroup ref="cmis:cmisUndefinedAttribute" /&gt;
 		&lt;/xs:complexType&gt;
@@ -888,102 +1514,148 @@
 	&lt;xs:element name="queryResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
-					minOccurs="0" maxOccurs="unbounded" /&gt;
-				&lt;xs:element name="hasMoreItems" type="xs:boolean"
+				&lt;xs:element name="objects" type="cmism:cmisObjectListType"
 					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-
+	&lt;!-- getContentChanges operation --&gt;
 	&lt;xs:element name="getContentChanges"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="repositoryId" type="xs:string" /&gt;
-				&lt;xs:element name="changeToken" type="xs:string"
-					minOccurs="0" /&gt;
-				&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
-					maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeACL" type="xs:boolean"
+				&lt;xs:element name="repositoryId" type="xs:string"
+					minOccurs="1" maxOccurs="1" /&gt;
+				&lt;xs:element name="changeLogToken" type="xs:string"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeProperties" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="filter" type="xs:string" minOccurs="0" /&gt;
+				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includePolicyIds" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeACL" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
+					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getContentChangesResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="changedObject" type="cmis:cmisObjectType"
-					minOccurs="0" maxOccurs="unbounded" nillable="true" /&gt;
-				&lt;xs:element name="changeToken" type="xs:string" /&gt;
+				&lt;xs:element name="objects" type="cmism:cmisObjectListType"
+					minOccurs="1" maxOccurs="1" /&gt;
+				&lt;xs:element name="changeLogToken" type="xs:string"
+					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!--[Versioning Services]--&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+	&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
+	&lt;!-- [Versioning Services] --&gt;
+
 	&lt;!-- checkOut Operation --&gt;
 	&lt;xs:element name="checkOut"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="checkOutResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="contentCopied" type="xs:boolean"
 					minOccurs="1" maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- cancelCheckOut Operation --&gt;
 	&lt;xs:element name="cancelCheckOut"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="cancelCheckOutResponse"&gt;
 		&lt;xs:complexType&gt;
-			&lt;xs:sequence /&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- checkIn Operation --&gt;
 	&lt;xs:element name="checkIn"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="major" type="xs:boolean" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
@@ -994,45 +1666,118 @@
 				&lt;xs:element name="checkinComment" type="xs:string"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 
-				&lt;xs:element name="applyPolicies" type="xs:string"
+				&lt;xs:element name="policies" type="xs:string"
 					minOccurs="0" maxOccurs="unbounded" nillable="true" /&gt;
 				&lt;xs:element name="addACEs" type="cmis:cmisAccessControlListType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="removeACEs" type="cmis:cmisAccessControlListType"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="checkInResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="documentId" type="xs:string" minOccurs="1"
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!--getPropertiesOfLatestVersion--&gt;
+
+	&lt;!-- getPropertiesOfLatestVersion --&gt;
 	&lt;xs:element name="getPropertiesOfLatestVersion"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="versionSeriesId" type="xs:string"
+				&lt;xs:element name="objectId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="major" type="xs:boolean" minOccurs="1"
+				&lt;xs:element name="major" type="xs:boolean" minOccurs="0"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+			&lt;/xs:sequence&gt;
+		&lt;/xs:complexType&gt;
+	&lt;/xs:element&gt;
+	&lt;xs:element name="getPropertiesOfLatestVersionResponse"&gt;
+		&lt;xs:complexType&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="properties" type="cmis:cmisPropertiesType"
+					minOccurs="1" maxOccurs="1" /&gt;
+			&lt;/xs:sequence&gt;
+		&lt;/xs:complexType&gt;
+	&lt;/xs:element&gt;
+
+	&lt;!-- getObjectOfLatestVersion Operation --&gt;
+	&lt;xs:element name="getObjectOfLatestVersion"&gt;
+		&lt;xs:complexType&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="repositoryId" type="xs:string"
+					minOccurs="1" maxOccurs="1" /&gt;
+				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
+					maxOccurs="1" /&gt;
+				&lt;xs:element name="major" type="xs:boolean" minOccurs="0"
+					maxOccurs="1" /&gt;
+				&lt;xs:element name="filter" type="xs:string" 
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="renditionFilter" type="xs:string"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+				&lt;xs:element name="includePolicyIds" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeACL" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;xs:element name="getPropertiesOfLatestVersionResponse"&gt;
+	&lt;xs:element name="getObjectOfLatestVersionResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="object" type="cmis:cmisObjectType"
@@ -1040,96 +1785,97 @@
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- getAllVersions Operation --&gt;
 	&lt;xs:element name="getAllVersions"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="versionSeriesId" type="xs:string"
+				&lt;xs:element name="objectId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
+
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
-					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getAllVersionsResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
+				&lt;xs:element name="objects" type="cmis:cmisObjectType"
 					minOccurs="0" maxOccurs="unbounded" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
 
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+	&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
 	&lt;!--[Relationship Services]--&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
 	&lt;!-- getRelationships Operation --&gt;
-	&lt;xs:element name="getRelationships"&gt;
+	&lt;xs:element name="getObjectRelationships"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
 				&lt;xs:element name="repositoryId" type="xs:string"
 					minOccurs="1" maxOccurs="1" /&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
-				&lt;xs:element name="direction" type="cmis:enumRelationshipDirection"
+				&lt;xs:element name="includeSubRelationshipTypes" type="xs:boolean"
+					minOccurs="0" maxOccurs="1" /&gt;
+				&lt;xs:element name="relationshipDirection" type="cmis:enumRelationshipDirection"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="typeId" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeSubRelationshipTypes" type="xs:boolean"
-					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
 				&lt;xs:element name="includeAllowableActions" type="xs:boolean"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
-				&lt;xs:element name="includeRelationships" type="cmis:enumIncludeRelationships"
-					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
 				&lt;xs:element name="maxItems" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
 				&lt;xs:element name="skipCount" type="xs:integer" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;xs:element name="getRelationshipsResponse"&gt;
+	&lt;xs:element name="getObjectRelationshipsResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
-					minOccurs="0" maxOccurs="unbounded" /&gt;
-				&lt;xs:element name="hasMoreItems" type="xs:boolean"
+				&lt;xs:element name="objects" type="cmism:cmisObjectListType"
 					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+
+	&lt;!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --&gt;
 	&lt;!--[Policy Services]--&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!--applyPolicy Operation--&gt;
+
+	&lt;!-- applyPolicy Operation --&gt;
 	&lt;xs:element name="applyPolicy"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -1139,19 +1885,38 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="applyPolicyResponse"&gt;
 		&lt;xs:complexType&gt;
-			&lt;xs:sequence /&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!--removePolicy Operation--&gt;
+
+	&lt;!-- removePolicy Operation --&gt;
 	&lt;xs:element name="removePolicy"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -1161,19 +1926,39 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="removePolicyResponse"&gt;
 		&lt;xs:complexType&gt;
-			&lt;xs:sequence /&gt;
+			&lt;xs:sequence&gt;
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
+
+			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
-	&lt;!--getAppliedPolicies Operation--&gt;
+
+	&lt;!-- getAppliedPolicies Operation --&gt;
 	&lt;xs:element name="getAppliedPolicies"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -1183,23 +1968,30 @@
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="filter" type="xs:string" minOccurs="0"
 					maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getAppliedPoliciesResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="object" type="cmis:cmisObjectType"
+				&lt;xs:element name="objects" type="cmis:cmisObjectType"
 					minOccurs="0" maxOccurs="unbounded" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-
-	&lt;!--
-		- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-		- - - - - - - - - - - - - - - - -
-	--&gt;
+	&lt;!-- getACL Operation --&gt;
 	&lt;xs:element name="getACL"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -1208,17 +2000,31 @@
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="onlyBasicPermissions" type="xs:boolean"
-					minOccurs="1" maxOccurs="1" /&gt;
+					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+						&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="getACLResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="acl" type="cmis:cmisAccessControlListType" /&gt;
+				&lt;xs:element name="ACL" type="cmism:cmisACLType"
+					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
-		&lt;/xs:complexType&gt;
+		&lt;/xs:complexType&gt;	
 	&lt;/xs:element&gt;
+	
+	&lt;!-- applyACL Operation --&gt;
 	&lt;xs:element name="applyACL"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
@@ -1227,23 +2033,32 @@
 				&lt;xs:element name="objectId" type="xs:string" minOccurs="1"
 					maxOccurs="1" /&gt;
 				&lt;xs:element name="addACEs" type="cmis:cmisAccessControlListType"
-					minOccurs="1" maxOccurs="1" /&gt;
+					minOccurs="0" maxOccurs="1" /&gt;
 				&lt;xs:element name="removeACEs" type="cmis:cmisAccessControlListType"
-					minOccurs="1" maxOccurs="1" /&gt;
-				&lt;xs:element name="propogationType" type="cmis:enumACLPropagation"
+					minOccurs="0" maxOccurs="1" /&gt;
+				&lt;xs:element name="ACLPropagation" type="cmis:enumACLPropagation"
 					minOccurs="0" maxOccurs="1" nillable="true" /&gt;
+
+				&lt;xs:element name="extension" type="cmism:cmisExtensionType"
+					minOccurs="0" maxOccurs="1" nillable="true"&gt;
+					&lt;xs:annotation&gt;
+						&lt;xs:documentation&gt;
+							This is an extension element to hold any
+							repository or
+							vendor-specific extensions
+					&lt;/xs:documentation&gt;
+					&lt;/xs:annotation&gt;
+				&lt;/xs:element&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 	&lt;xs:element name="applyACLResponse"&gt;
 		&lt;xs:complexType&gt;
 			&lt;xs:sequence&gt;
-				&lt;xs:element name="ACL" type="cmis:cmisAccessControlListType"
-					minOccurs="1" maxOccurs="unbounded" /&gt;
-				&lt;xs:element name="exact" type="xs:boolean" /&gt;
+				&lt;xs:element name="ACL" type="cmism:cmisACLType"
+					minOccurs="1" maxOccurs="1" /&gt;
 			&lt;/xs:sequence&gt;
 		&lt;/xs:complexType&gt;
 	&lt;/xs:element&gt;
 
-
-&lt;/xs:schema&gt;
+&lt;/xs:schema&gt;
\ No newline at end of file

Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-RestAtom.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-RestAtom.xsd?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-RestAtom.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-RestAtom.xsd Wed Oct 28 11:54:22 2009
@@ -1,30 +1,46 @@
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
 	&lt;!--
-		Common CMIS XSD
+		$Revision: 135 $ $Date: 2009-10-19 10:59:00 -0700 (Mon, 19 Oct 2009) $
+		$Author: albertcbrown $ $HeadURL:
+		http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/CMIS-RestAtom.xsd
+		$
 	--&gt;
 &lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
-	elementFormDefault="qualified" targetNamespace="http://docs.oasis-open.org/ns/cmis/restatom/200901"
+	elementFormDefault="qualified"
+	targetNamespace="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
 	xmlns:atom="http://www.w3.org/2005/Atom" xmlns:xhtml="http://www.w3.org/1999/xhtml"
 	xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
 	jaxb:extensionBindingPrefixes="xjc" jaxb:version="2.1"
-	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200901"
-	xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200901"
-	version="0.62f"&gt;
-	&lt;xs:import namespace="http://docs.oasis-open.org/ns/cmis/core/200901"
+	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"
+	xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
+	version="1.0"&gt;
+	
+	&lt;xs:import namespace="http://docs.oasis-open.org/ns/cmis/core/200908/"
 		schemaLocation="CMIS-Core.xsd" /&gt;
 	&lt;xs:import namespace="http://www.w3.org/2005/Atom"
 		schemaLocation="ATOM.xsd" /&gt;
-	&lt;xs:import namespace="http://www.w3.org/XML/1998/namespace"
-		schemaLocation="xml.xsd" /&gt;
 
-	&lt;!--
-		should be a member of enumRepositoryRelationship. However, it can be
-		extended, so not constrained.
-	--&gt;
-	&lt;xs:attribute name="repositoryRelationship" type="xs:string" /&gt;
-	&lt;xs:attribute name="collectionType" type="cmisra:enumCollectionType" /&gt;
-	&lt;xs:attribute name="id" type="xs:string" /&gt;
-	&lt;xs:attribute name="renditionType" type="xs:string" /&gt;
+
+	&lt;xs:attribute name="id" type="xs:string"&gt;
+		&lt;xs:annotation&gt;
+			&lt;xs:documentation&gt;
+				This attribute MAY be used on XML elements that refer to a CMIS resources.  Examples are:
+				- atom:link
+				- cmis:type
+			&lt;/xs:documentation&gt;
+		&lt;/xs:annotation&gt;
+	&lt;/xs:attribute&gt;
+	
+	&lt;xs:attribute name="renditionKind" type="xs:string"&gt;
+		&lt;xs:annotation&gt;
+			&lt;xs:documentation&gt;
+				This is the AtomPub extension attribute that will
+				be
+				used to specify the rendition kind of a link with relation
+				alternate if it is a CMIS Rendition.
+			&lt;/xs:documentation&gt;
+		&lt;/xs:annotation&gt;
+	&lt;/xs:attribute&gt;
 
 	&lt;xs:element name="repositoryInfo" type="cmis:cmisRepositoryInfoType"&gt;
 		&lt;xs:annotation&gt;
@@ -37,6 +53,23 @@
 		&lt;/xs:annotation&gt;
 	&lt;/xs:element&gt;
 
+	&lt;xs:element name="collectionType" type="xs:string"&gt;
+		&lt;xs:annotation&gt;
+			&lt;xs:documentation&gt;
+				This is the AtomPub extension element that will be
+				used to express the CMIS collection type.
+				This is only valid inside
+				an app:collection element.
+				Valid values are in
+				enumCollectionType. If
+				the value is not in enumCollectionType, then
+				it denotes a
+				repository-specific relationship.
+				
+			&lt;/xs:documentation&gt;
+		&lt;/xs:annotation&gt;
+	&lt;/xs:element&gt;
+
 	&lt;xs:element name="type" type="cmis:cmisTypeDefinitionType"&gt;
 		&lt;xs:annotation&gt;
 			&lt;xs:documentation&gt;
@@ -57,6 +90,21 @@
 		&lt;/xs:annotation&gt;
 	&lt;/xs:element&gt;
 
+	&lt;xs:element name="numItems" type="xs:integer"&gt;
+		&lt;xs:annotation&gt;
+			&lt;xs:documentation&gt;
+				This is the Atom extension element that will be
+				used to express the number of items in a feed if known.
+
+				This may only
+				be used as an extension to the Feed.
+
+				Reference - numItems from Part
+				I.
+			&lt;/xs:documentation&gt;
+		&lt;/xs:annotation&gt;
+	&lt;/xs:element&gt;
+
 	&lt;xs:simpleType name="enumCollectionType"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
 			&lt;xs:enumeration value="root" /&gt;
@@ -70,9 +118,10 @@
 
 	&lt;xs:simpleType name="enumUriTemplateType"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
-			&lt;xs:enumeration value="entrybyid" /&gt;
-			&lt;xs:enumeration value="folderbypath" /&gt;
+			&lt;xs:enumeration value="objectbyid" /&gt;
+			&lt;xs:enumeration value="objectbypath" /&gt;
 			&lt;xs:enumeration value="query" /&gt;
+			&lt;xs:enumeration value="typebyid" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
 
@@ -103,6 +152,94 @@
 		&lt;/xs:annotation&gt;
 	&lt;/xs:element&gt;
 
+	&lt;xs:element name="pathSegment" type="xs:string"&gt;
+		&lt;xs:annotation&gt;
+			&lt;xs:documentation&gt;
+				This is the AtomPub extension element that will be
+				used to contain the path segment for this object in a particular
+				folder. This element MAY only be specified in an atom:entry inside
+			&lt;/xs:documentation&gt;
+		&lt;/xs:annotation&gt;
+	&lt;/xs:element&gt;
+
+	&lt;xs:element name="relativePathSegment" type="xs:string"&gt;
+		&lt;xs:annotation&gt;
+			&lt;xs:documentation&gt;
+				This is the AtomPub extension element that will be
+				used to contain the path segment for this object for the particular
+				folder returned in the Object Parents feed.
+				Unlike pathSegment which
+				is set on the atom entry when contained in a feed for a folder, this
+				is set on an atom entry representing a folder for a parents feed on
+				the object.
+
+				This element MAY only be specified in an atom:entry
+				representing a folder
+				inside an object parents feed.
+			&lt;/xs:documentation&gt;
+		&lt;/xs:annotation&gt;
+	&lt;/xs:element&gt;
+
+	&lt;xs:complexType name="cmisContentType"&gt;
+		&lt;xs:sequence&gt;
+			&lt;xs:element name="mediatype" type="xs:string" /&gt;
+			&lt;xs:element name="base64" type="xs:string" /&gt;
+			&lt;xs:any processContents="lax" namespace="##other" minOccurs="0"
+				maxOccurs="unbounded" /&gt;
+		&lt;/xs:sequence&gt;
+	&lt;/xs:complexType&gt;
+
+	&lt;xs:element name="content" type="cmisra:cmisContentType"&gt;
+		&lt;xs:annotation&gt;
+			&lt;xs:documentation&gt;
+				This is the AtomPub extension element that will be
+				used to contain the base64 content inside an atom entry.
+
+				This is used
+				to convey the content on creation or update via AtomPub as
+				an
+				alternate mechanism.
+			&lt;/xs:documentation&gt;
+		&lt;/xs:annotation&gt;
+	&lt;/xs:element&gt;
+
+	&lt;xs:simpleType name="enumReturnVersion"&gt;
+		&lt;xs:annotation&gt;
+			&lt;xs:documentation&gt;
+				This is an enumeration used for specifying the
+				version to return on a GET of an atom entry via URI argument.
+			&lt;/xs:documentation&gt;
+		&lt;/xs:annotation&gt;
+
+		&lt;xs:restriction base="xs:string"&gt;
+			&lt;xs:enumeration value="this"&gt;
+				&lt;xs:annotation&gt;
+					&lt;xs:documentation&gt;
+						This is getObject service for the version specified
+			&lt;/xs:documentation&gt;
+				&lt;/xs:annotation&gt;
+
+			&lt;/xs:enumeration&gt;
+			&lt;xs:enumeration value="latest"&gt;
+				&lt;xs:annotation&gt;
+					&lt;xs:documentation&gt;
+						This is the same as major==false on
+						getObjectOfLatestVersion
+					&lt;/xs:documentation&gt;
+				&lt;/xs:annotation&gt;
+
+			&lt;/xs:enumeration&gt;
+			&lt;xs:enumeration value="latestmajor"&gt;
+				&lt;xs:annotation&gt;
+					&lt;xs:documentation&gt;
+						This is the same as major==true on
+						getObjectOfLatestVersion
+					&lt;/xs:documentation&gt;
+				&lt;/xs:annotation&gt;
+			&lt;/xs:enumeration&gt;
+		&lt;/xs:restriction&gt;
+	&lt;/xs:simpleType&gt;
+
 
 	&lt;xs:simpleType name="enumLinkRelations"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
@@ -112,6 +249,7 @@
 			&lt;xs:enumeration value="via" /&gt;
 			&lt;xs:enumeration value="up" /&gt;
 			&lt;xs:enumeration value="down" /&gt;
+			&lt;xs:enumeration value="alternate" /&gt;
 			&lt;xs:enumeration value="version-history" /&gt;
 			&lt;xs:enumeration value="current-version" /&gt;
 			&lt;xs:enumeration value="working-copy" /&gt;
@@ -122,11 +260,11 @@
 			&lt;xs:enumeration value="first" /&gt;
 			&lt;xs:enumeration value="last" /&gt;
 			&lt;xs:enumeration value="next" /&gt;
-			&lt;xs:enumeration value="prev" /&gt;
+			&lt;xs:enumeration value="previous" /&gt;
 
 
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/allowableactions"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_ALLOWABLEACTIONS" /&gt;
@@ -135,7 +273,7 @@
 			&lt;/xs:enumeration&gt;
 
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/relationships"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/relationships"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_RELATIONSHIPS" /&gt;
@@ -145,7 +283,7 @@
 
 
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/source"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/source"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_SOURCE" /&gt;
@@ -154,7 +292,7 @@
 			&lt;/xs:enumeration&gt;
 
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/target"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/target"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_TARGET" /&gt;
@@ -163,7 +301,7 @@
 			&lt;/xs:enumeration&gt;
 
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/policies"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/policies"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_POLICIES" /&gt;
@@ -171,7 +309,7 @@
 				&lt;/xs:annotation&gt;
 			&lt;/xs:enumeration&gt;
 
-			&lt;xs:enumeration value="http://docs.oasis-open.org/ns/cmis/link/200901/acl"&gt;
+			&lt;xs:enumeration value="http://docs.oasis-open.org/ns/cmis/link/200908/acl"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_ACL" /&gt;
@@ -182,7 +320,7 @@
 
 			&lt;!--  changes --&gt;
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/changes"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/changes"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_CHANGES" /&gt;
@@ -193,7 +331,7 @@
 
 			&lt;!--  folder tree --&gt;
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/foldertree"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_FOLDERTREE" /&gt;
@@ -205,16 +343,16 @@
 
 			&lt;!--  types descendants --&gt;
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/typesdescendants"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/typedescendants"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
-						&lt;jaxb:typesafeEnumMember name="CMIS_TYPESDESCENDANTS" /&gt;
+						&lt;jaxb:typesafeEnumMember name="CMIS_TYPEDESCENDANTS" /&gt;
 					&lt;/xs:appinfo&gt;
 				&lt;/xs:annotation&gt;
 			&lt;/xs:enumeration&gt;
 
 			&lt;xs:enumeration
-				value="http://docs.oasis-open.org/ns/cmis/link/200901/rootdescendants"&gt;
+				value="http://docs.oasis-open.org/ns/cmis/link/200908/rootdescendants"&gt;
 				&lt;xs:annotation&gt;
 					&lt;xs:appinfo&gt;
 						&lt;jaxb:typesafeEnumMember name="CMIS_ROOTDESCENDANTS" /&gt;
@@ -237,15 +375,21 @@
 			&lt;xs:enumeration value="direction" /&gt;
 			&lt;xs:enumeration value="filter" /&gt;
 			&lt;xs:enumeration value="folderId" /&gt;
+			&lt;xs:enumeration value="includeACL" /&gt;
 			&lt;xs:enumeration value="includeAllowableActions" /&gt;
+			&lt;xs:enumeration value="includeProperties" /&gt;
+			&lt;xs:enumeration value="includePathSegment" /&gt;
+			&lt;xs:enumeration value="includeRelativePathSegment" /&gt;
 			&lt;xs:enumeration value="includePropertyDefinitions" /&gt;
+			&lt;xs:enumeration value="includePolicyIds" /&gt;
 			&lt;xs:enumeration value="includeRelationships" /&gt;
-			&lt;xs:enumeration value="includeSubrelationshipTypes" /&gt;
+			&lt;xs:enumeration value="includeSubRelationshipTypes" /&gt;
 			&lt;xs:enumeration value="length" /&gt;
 			&lt;xs:enumeration value="major" /&gt;
 			&lt;xs:enumeration value="maxItems" /&gt;
-			&lt;xs:enumeration value="offset" /&gt;
+      		&lt;xs:enumeration value="overwriteFlag" /&gt;
 			&lt;xs:enumeration value="removeFrom" /&gt;
+			&lt;xs:enumeration value="relationshipDirection" /&gt;
 			&lt;xs:enumeration value="relationshipType" /&gt;
 			&lt;xs:enumeration value="repositoryId" /&gt;
 			&lt;xs:enumeration value="returnVersion" /&gt;
@@ -253,7 +397,7 @@
 			&lt;xs:enumeration value="thisVersion" /&gt;
 			&lt;xs:enumeration value="typeId" /&gt;
 			&lt;xs:enumeration value="types" /&gt;
-			&lt;xs:enumeration value="unfileMultiFiledDocuments" /&gt;
+			&lt;xs:enumeration value="unfileObject" /&gt;
 			&lt;xs:enumeration value="versioningState" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
@@ -261,4 +405,4 @@
 
 
 &lt;/xs:schema&gt;
-	&lt;!-- EOF --&gt;
+	&lt;!-- EOF --&gt;
\ No newline at end of file




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r830511 [1/4] - in /incubator/chemistry/trunk/chemistry: chemistry-api/src/main/java/org/apache/chemistry/ chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/ chemistry-atompub-client/src/main/java/org/apache/chemist...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091028115429.52254238890A@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091028115429-52254238890A@eris-apache-org%3e</id>
<updated>2009-10-28T11:54:27Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Wed Oct 28 11:54:22 2009
New Revision: 830511

URL: http://svn.apache.org/viewvc?rev=830511&amp;view=rev
Log:
Update to CMIS 1.0 CD 4 (work in progress, did most of the list from CMIS-51)

Added:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/ServiceDocumentReaderTest.java   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/entry.xml
      - copied, changed from r829752, incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feedentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/service-document.xml   (with props)
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/types-feed.xml
      - copied, changed from r829752, incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feed-types.xml
Removed:
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feed-types.xml
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feedentry.xml
Modified:
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/AllowableAction.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMIS.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Property.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PropertyType.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryCapabilities.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryEntry.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java
    incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Updatability.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryCapabilities.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryInfo.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPType.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/PropertyIterator.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ServiceDocumentReader.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/TypeFeedReaderTest.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/stax/TestPropertyIterator.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/ValueAdapter.java
    incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/abdera/PropertiesElement.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/base/BaseRepository.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleRepository.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleTypeManager.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/xml/stax/TestXMLWriter.java
    incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/resources/xmlwriter-output.xml
    incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrConnection.java
    incubator/chemistry/trunk/chemistry/chemistry-jcr/src/main/java/org/apache/chemistry/jcr/JcrRepository.java
    incubator/chemistry/trunk/chemistry/chemistry-tests/src/main/java/org/apache/chemistry/test/BasicTestCase.java
    incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/APP.xsd
    incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/ATOM.xsd
    incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Core.xsd
    incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-Messaging.xsd
    incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMIS-RestAtom.xsd
    incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/CMISWS-Service.wsdl
    incubator/chemistry/trunk/chemistry/chemistry-ws/src/main/resources/wsdl/xml.xsd

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/AllowableAction.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/AllowableAction.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/AllowableAction.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/AllowableAction.java Wed Oct 28 11:54:22 2009
@@ -39,7 +39,7 @@
 
     public static final QName CAN_GET_PROPERTIES = CMISName("canGetProperties");
 
-    public static final QName CAN_GET_RELATIONSHIPS = CMISName("canGetRelationships");
+    public static final QName CAN_GET_OBJECT_RELATIONSHIPS = CMISName("canGetRelationships");
 
     public static final QName CAN_GET_OBJECT_PARENTS = CMISName("canGetObjectParents");
 
@@ -47,6 +47,8 @@
 
     public static final QName CAN_GET_DESCENDANTS = CMISName("canGetDescendants");
 
+    public static final QName CAN_GET_FOLDER_TREE = CMISName("canGetFolderTree");
+
     public static final QName CAN_MOVE_OBJECT = CMISName("canMoveObject");
 
     public static final QName CAN_DELETE_CONTENT_STREAM = CMISName("canDeleteContentStream");
@@ -95,10 +97,11 @@
             CAN_DELETE_OBJECT, //
             CAN_UPDATE_PROPERTIES, //
             CAN_GET_PROPERTIES, //
-            CAN_GET_RELATIONSHIPS, //
+            CAN_GET_OBJECT_RELATIONSHIPS, //
             CAN_GET_OBJECT_PARENTS, //
             CAN_GET_FOLDER_PARENT, //
             CAN_GET_DESCENDANTS, //
+            CAN_GET_FOLDER_TREE, //
             CAN_MOVE_OBJECT, //
             CAN_DELETE_CONTENT_STREAM, //
             CAN_CHECK_OUT, //
@@ -177,11 +180,11 @@
 
     public static final String REMOVE_FROM_FOLDER_FOLDER = "canRemoveFromFolder.Folder";
 
-    public static final String CHECK_OUT_DOCUMENT = "canCheckout.Document"; // TODO-0.63
+    public static final String CHECK_OUT_DOCUMENT = "canCheckOut.Document";
 
-    public static final String CANCEL_CHECK_OUT_DOCUMENT = "canCancelCheckout.Document"; // TODO-0.63
+    public static final String CANCEL_CHECK_OUT_DOCUMENT = "canCancelCheckOut.Document";
 
-    public static final String CHECK_IN_DOCUMENT = "canCheckin.Document"; // TODO-0.63
+    public static final String CHECK_IN_DOCUMENT = "canCheckIn.Document";
 
     public static final String GET_ALL_VERSIONS_VERSIONSERIES = "canGetAllVersions.VersionSeries";
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMIS.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMIS.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMIS.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/CMIS.java Wed Oct 28 11:54:22 2009
@@ -29,7 +29,7 @@
 
     public static final String CMIS_NS_BASE = "http://docs.oasis-open.org/ns/cmis/";
 
-    public static final String CMIS_NS = CMIS_NS_BASE + "core/200901";
+    public static final String CMIS_NS = CMIS_NS_BASE + "core/200908/";
 
     public static final String CMIS_PREFIX = "cmis";
 
@@ -41,8 +41,6 @@
 
     public static final QName REPOSITORY_NAME = CMISName("repositoryName");
 
-    public static final QName REPOSITORY_RELATIONSHIP = CMISName("repositoryRelationship");
-
     public static final QName REPOSITORY_DESCRIPTION = CMISName("repositoryDescription");
 
     public static final QName VENDOR_NAME = CMISName("vendorName");
@@ -53,7 +51,9 @@
 
     public static final QName ROOT_FOLDER_ID = CMISName("rootFolderId");
 
-    public static final QName LATEST_CHANGE_LOG_TOKEN = CMISName("latestChangeToken"); // TODO-0.63
+    public static final QName LATEST_CHANGE_LOG_TOKEN = CMISName("latestChangeLogToken");
+
+    public static final QName CHANGES_ON_TYPE = CMISName("changesOnType");
 
     public static final QName CAPABILITIES = CMISName("capabilities");
 
@@ -63,7 +63,7 @@
 
     public static final QName CAPABILITY_VERSION_SPECIFIC_FILING = CMISName("capabilityVersionSpecificFiling");
 
-    public static final QName CAPABILITY_PWC_UPDATEABLE = CMISName("capabilityPWCUpdateable");
+    public static final QName CAPABILITY_PWC_UPDATABLE = CMISName("capabilityPWCUpdatable");
 
     public static final QName CAPABILITY_PWC_SEARCHABLE = CMISName("capabilityPWCSearchable");
 
@@ -71,6 +71,8 @@
 
     public static final QName CAPABILITY_CAN_GET_DESCENDANTS = CMISName("capabilityGetDescendants");
 
+    public static final QName CAPABILITY_CAN_GET_FOLDER_TREE = CMISName("capabilityGetFolderTree");
+
     public static final QName CAPABILITY_CONTENT_STREAM_UPDATABILITY = CMISName("capabilityContentStreamUpdatability");
 
     public static final QName CAPABILITY_QUERY = CMISName("capabilityQuery");
@@ -81,8 +83,6 @@
 
     public static final QName CAPABILITY_CHANGES = CMISName("capabilityChanges");
 
-    public static final QName CAPABILITY_CHANGES_ON_TYPE = CMISName("capabilityChangesOnType");
-
     public static final QName CAPABILITY_ACL = CMISName("capabilityACL");
 
     public static final QName CHANGES_INCOMPLETE = CMISName("changesIncomplete");
@@ -105,7 +105,7 @@
 
     public static final QName REPOSITORY_SPECIFIC_INFORMATION = CMISName("repositorySpecificInformation");
 
-    public static final QName BASE_TYPE_ID = CMISName("baseTypeId");
+    public static final QName BASE_ID = CMISName("baseId");
 
     public static final QName ID = CMISName("id");
 
@@ -131,7 +131,7 @@
 
     public static final QName CONTROLLABLE_ACL = CMISName("controllableACL");
 
-    public static final QName FULLTEXT_INDEXED = CMISName("fulltextindexed");
+    public static final QName FULLTEXT_INDEXED = CMISName("fulltextIndexed");
 
     public static final QName VERSIONABLE = CMISName("versionable");
 
@@ -153,12 +153,8 @@
 
     public static final QName PROPERTY_ID_DEFINITION = CMISName("propertyIdDefinition");
 
-    public static final QName PROPERTY_XML_DEFINITION = CMISName("propertyXmlDefinition");
-
     public static final QName PROPERTY_HTML_DEFINITION = CMISName("propertyHtmlDefinition");
 
-    public static final QName PROPERTY_XHTML_DEFINITION = CMISName("propertyXhtmlDefinition");
-
     public static final QName PROPERTY_TYPE = CMISName("propertyType");
 
     public static final QName CARDINALITY = CMISName("cardinality");
@@ -193,8 +189,6 @@
 
     public static final QName PROPERTY_HTML = CMISName("propertyHtml");
 
-    public static final QName PROPERTY_XHTML = CMISName("propertyXhtml");
-
     public static final QName VALUE = CMISName("value");
 
     public static final QName ALLOWABLE_ACTIONS = CMISName("allowableActions");
@@ -219,10 +213,10 @@
 
     // no namespace for attributes
 
-    public static final QName PDID = new QName("pdid");
+    public static final QName PDID = new QName("propertyDefinitionId");
 
-    public static final QName LOCALNAME = new QName("localname");
+    public static final QName LOCAL_NAME_NONS = new QName("localName");
 
-    public static final QName DISPLAYNAME = new QName("displayname");
+    public static final QName DISPLAY_NAME_NONS = new QName("displayName");
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Property.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Property.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Property.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Property.java Wed Oct 28 11:54:22 2009
@@ -27,79 +27,79 @@
      * ----- Object -----
      */
 
-    String ID = "cmis:ObjectId";
+    String ID = "cmis:objectId";
 
-    String TYPE_ID = "cmis:ObjectTypeId";
+    String TYPE_ID = "cmis:objectTypeId";
 
-    String BASE_TYPE_ID = "cmis:BaseTypeId";
+    String BASE_TYPE_ID = "cmis:baseTypeId";
 
-    String NAME = "cmis:Name";
+    String NAME = "cmis:name";
 
-    String CREATED_BY = "cmis:CreatedBy";
+    String CREATED_BY = "cmis:createdBy";
 
-    String CREATION_DATE = "cmis:CreationDate";
+    String CREATION_DATE = "cmis:creationDate";
 
-    String LAST_MODIFIED_BY = "cmis:LastModifiedBy";
+    String LAST_MODIFIED_BY = "cmis:lastModifiedBy";
 
-    String LAST_MODIFICATION_DATE = "cmis:LastModificationDate";
+    String LAST_MODIFICATION_DATE = "cmis:lastModificationDate";
 
-    String CHANGE_TOKEN = "cmis:ChangeToken";
+    String CHANGE_TOKEN = "cmis:changeToken";
 
     /*
      * ----- Document -----
      */
 
-    String IS_IMMUTABLE = "cmis:IsImmutable";
+    String IS_IMMUTABLE = "cmis:isImmutable";
 
-    String IS_LATEST_VERSION = "cmis:IsLatestVersion";
+    String IS_LATEST_VERSION = "cmis:isLatestVersion";
 
-    String IS_MAJOR_VERSION = "cmis:IsMajorVersion";
+    String IS_MAJOR_VERSION = "cmis:isMajorVersion";
 
-    String IS_LATEST_MAJOR_VERSION = "cmis:IsLatestMajorVersion";
+    String IS_LATEST_MAJOR_VERSION = "cmis:isLatestMajorVersion";
 
-    String VERSION_LABEL = "cmis:VersionLabel";
+    String VERSION_LABEL = "cmis:versionLabel";
 
-    String VERSION_SERIES_ID = "cmis:VersionSeriesId";
+    String VERSION_SERIES_ID = "cmis:versionSeriesId";
 
-    String IS_VERSION_SERIES_CHECKED_OUT = "cmis:IsVersionSeriesCheckedOut";
+    String IS_VERSION_SERIES_CHECKED_OUT = "cmis:isVersionSeriesCheckedOut";
 
-    String VERSION_SERIES_CHECKED_OUT_BY = "cmis:VersionSeriesCheckedOutBy";
+    String VERSION_SERIES_CHECKED_OUT_BY = "cmis:versionSeriesCheckedOutBy";
 
-    String VERSION_SERIES_CHECKED_OUT_ID = "cmis:VersionSeriesCheckedOutId";
+    String VERSION_SERIES_CHECKED_OUT_ID = "cmis:versionSeriesCheckedOutId";
 
-    String CHECK_IN_COMMENT = "cmis:CheckinComment"; // TODO-0.63
+    String CHECK_IN_COMMENT = "cmis:checkinComment";
 
-    String CONTENT_STREAM_LENGTH = "cmis:ContentStreamLength";
+    String CONTENT_STREAM_LENGTH = "cmis:contentStreamLength";
 
-    String CONTENT_STREAM_MIME_TYPE = "cmis:ContentStreamMimeType";
+    String CONTENT_STREAM_MIME_TYPE = "cmis:contentStreamMimeType";
 
-    String CONTENT_STREAM_FILE_NAME = "cmis:ContentStreamFileName";
+    String CONTENT_STREAM_FILE_NAME = "cmis:contentStreamFileName";
 
-    String CONTENT_STREAM_ID = "cmis:ContentStreamId";
+    String CONTENT_STREAM_ID = "cmis:contentStreamId";
 
     /*
      * ----- Folder -----
      */
 
-    String PARENT_ID = "cmis:ParentId";
+    String PARENT_ID = "cmis:parentId";
 
-    String PATH = "cmis:PathName"; // TODO-0.63
+    String PATH = "cmis:path";
 
-    String ALLOWED_CHILD_OBJECT_TYPE_IDS = "cmis:AllowedChildObjectTypeIds";
+    String ALLOWED_CHILD_OBJECT_TYPE_IDS = "cmis:allowedChildObjectTypeIds";
 
     /*
      * ----- Relationship -----
      */
 
-    String SOURCE_ID = "cmis:SourceId";
+    String SOURCE_ID = "cmis:sourceId";
 
-    String TARGET_ID = "cmis:TargetId";
+    String TARGET_ID = "cmis:targetId";
 
     /*
      * ----- Policy -----
      */
 
-    String POLICY_TEXT = "cmis:PolicyText";
+    String POLICY_TEXT = "cmis:policyText";
 
     /**
      * The property definition.

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PropertyType.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PropertyType.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PropertyType.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/PropertyType.java Wed Oct 28 11:54:22 2009
@@ -41,11 +41,7 @@
 
     public static final int ID_ORD = 7;
 
-    public static final int XML_ORD = 8;
-
-    public static final int HTML_ORD = 9;
-
-    public static final int XHTML_ORD = 10;
+    public static final int HTML_ORD = 8;
 
     private static final Map&lt;String, PropertyType&gt; all = new HashMap&lt;String, PropertyType&gt;();
 
@@ -92,23 +88,11 @@
             ID_ORD, String.class));
 
     /**
-     * An XML property, represented as a String.
-     */
-    public static final PropertyType XML = register(new PropertyType("xml",
-            XML_ORD, String.class));
-
-    /**
      * An HTML property, represented as a String.
      */
     public static final PropertyType HTML = register(new PropertyType("html",
             HTML_ORD, String.class));
 
-    /**
-     * An XHTML property, represented as a String.
-     */
-    public static final PropertyType XHTML = register(new PropertyType("xhtml",
-            XHTML_ORD, String.class));
-
     private final String name;
 
     private final int ordinal;

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryCapabilities.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryCapabilities.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryCapabilities.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryCapabilities.java Wed Oct 28 11:54:22 2009
@@ -58,11 +58,16 @@
 
     /**
      * Ability to enumerate the descendants of a folder via
-     * {@link SPI#getDescendants} and {@link SPI#getFolderTree}.
+     * {@link SPI#getDescendants}.
      */
     boolean hasGetDescendants();
 
     /**
+     * Ability to retrieve the folder tree via {@link SPI#getFolderTree}.
+     */
+    boolean hasGetFolderTree();
+
+    /**
      * Ability to update the content stream anytime, or only on the PWC.
      */
     boolean isContentStreamUpdatableAnytime();

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryEntry.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryEntry.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryEntry.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/RepositoryEntry.java Wed Oct 28 11:54:22 2009
@@ -36,16 +36,6 @@
     String getName();
 
     /**
-     * The relationship name to another repository.
-     * &lt;p&gt;
-     * This returns a value only when this basic info was returned by
-     * {@link RepositoryInfo#getRelatedRepositories}.
-     *
-     * @return a relationship name, or {@code null}
-     */
-    String getRelationshipName();
-
-    /**
      * An optional repository-specific URI pointing to the repository's web
      * interface.
      *

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/SPI.java Wed Oct 28 11:54:22 2009
@@ -609,7 +609,7 @@
      * &lt;p&gt;
      * The return value hasMoreItems is filled if {@code maxItems &gt; 0}.
      * &lt;p&gt;
-     * The return value lastChangeLogToken contains the change token of the last
+     * The return value latestChangeLogToken contains the change token of the last
      * change event returned by the iterator.
      *
      * @param changeLogToken the change log token, or {@code null}
@@ -624,7 +624,7 @@
      */
     Iterator&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
             boolean includeProperties, int maxItems, boolean[] hasMoreItems,
-            String[] lastChangeLogToken);
+            String[] latestChangeLogToken);
 
     /*
      * ----- Versioning Services -----

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Updatability.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Updatability.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Updatability.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/src/main/java/org/apache/chemistry/Updatability.java Wed Oct 28 11:54:22 2009
@@ -56,7 +56,14 @@
      * either made on a Private Working Copy object or made using a "check in"
      * service
      */
-    WHEN_CHECKED_OUT("whencheckedout");
+    WHEN_CHECKED_OUT("whencheckedout"),
+
+    /**
+     * Property is updatable during create.
+     * &lt;p&gt;
+     * A "on create" property is only updateable during the create operation.
+     */
+    ON_CREATE("oncreate");
 
     private final String value;
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPConnection.java Wed Oct 28 11:54:22 2009
@@ -341,7 +341,7 @@
             return ((APPObjectEntry) objectId);
         }
         String href;
-        URITemplate uriTemplate = repository.getURITemplate(AtomPubCMIS.URITMPL_ENTRY_BY_ID);
+        URITemplate uriTemplate = repository.getURITemplate(AtomPubCMIS.URITMPL_OBJECT_BY_ID);
         if (uriTemplate != null) {
             // use entry-by-id URI template
             href = uriTemplate.template;
@@ -436,7 +436,7 @@
             throw new IllegalArgumentException("Path must not end with / : "
                     + path);
         }
-        URITemplate uriTemplate = repository.getURITemplate(AtomPubCMIS.URITMPL_FOLDER_BY_PATH);
+        URITemplate uriTemplate = repository.getURITemplate(AtomPubCMIS.URITMPL_OBJECT_BY_PATH);
         if (uriTemplate == null) {
             throw new UnsupportedOperationException("Cannot get object by path");
         }
@@ -556,9 +556,9 @@
 
     public Iterator&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
             boolean includeProperties, int maxItems, boolean[] hasMoreItems,
-            String[] lastChangeLogToken) {
+            String[] latestChangeLogToken) {
         hasMoreItems[0] = false;
-        lastChangeLogToken[0] = null;
+        latestChangeLogToken[0] = null;
         return Collections.&lt;ObjectEntry&gt; emptyList().iterator();
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepository.java Wed Oct 28 11:54:22 2009
@@ -128,10 +128,6 @@
         return typeManager.getTypes(typeId, depth, returnPropertyDefinitions);
     }
 
-    public String getRelationshipName() {
-        return info.getRelationshipName();
-    }
-
     public String getCollectionHref(String type) {
         return collections.get(type);
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryCapabilities.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryCapabilities.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryCapabilities.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryCapabilities.java Wed Oct 28 11:54:22 2009
@@ -48,6 +48,8 @@
 
     protected boolean hasGetDescendants;
 
+    protected boolean hasGetFolderTree;
+
     protected boolean isContentStreamUpdatableAnytime;
 
     protected boolean isPWCSearchable;
@@ -94,6 +96,10 @@
         return hasGetDescendants;
     }
 
+    public boolean hasGetFolderTree() {
+        return hasGetFolderTree;
+    }
+
     public boolean isContentStreamUpdatableAnytime() {
         return isContentStreamUpdatableAnytime;
     }
@@ -114,6 +120,10 @@
         this.hasGetDescendants = hasGetDescendants;
     }
 
+    public void setHasGetFolderTree(boolean hasGetFolderTree) {
+        this.hasGetFolderTree = hasGetFolderTree;
+    }
+
     public void setContentStreamUpdatableAnytime(
             boolean isContentStreamUpdatableAnytime) {
         this.isContentStreamUpdatableAnytime = isContentStreamUpdatableAnytime;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryInfo.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryInfo.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryInfo.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPRepositoryInfo.java Wed Oct 28 11:54:22 2009
@@ -73,10 +73,6 @@
         return getString(CMIS.REPOSITORY_NAME.getLocalPart());
     }
 
-    public String getRelationshipName() {
-        return getString(CMIS.REPOSITORY_RELATIONSHIP.getLocalPart());
-    }
-
     public URI getThinClientURI() {
         String uri = getString(CMIS.THIN_CLIENT_URI.getLocalPart());
         try {

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPType.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPType.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPType.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/APPType.java Wed Oct 28 11:54:22 2009
@@ -81,7 +81,7 @@
     @Override
     public BaseType getBaseType() {
         if (baseType == null) {
-            baseType = BaseType.get(map.get(CMIS.BASE_TYPE_ID.getLocalPart()));
+            baseType = BaseType.get(map.get(CMIS.BASE_ID.getLocalPart()));
         }
         return baseType;
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/TypeEntryReader.java Wed Oct 28 11:54:22 2009
@@ -101,7 +101,7 @@
                     CMIS.LOCAL_NAME, //
                     CMIS.QUERY_NAME, //
                     CMIS.DISPLAY_NAME, //
-                    CMIS.BASE_TYPE_ID, //
+                    CMIS.BASE_ID, //
                     CMIS.PARENT_ID, //
                     CMIS.DESCRIPTION, //
                     CMIS.CREATABLE, //

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/PropertyIterator.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/PropertyIterator.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/PropertyIterator.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/PropertyIterator.java Wed Oct 28 11:54:22 2009
@@ -57,7 +57,7 @@
             throw new XMLStreamException(
                     "Parse error. Invalid CMIS property at line: "
                             + reader.getLocation().getLineNumber()
-                            + ". No id specified");
+                            + ". No propertyDefinitionId specified");
         }
         ValueIterator vi = new ValueIterator(reader);
         if (!vi.hasNext()) {

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ServiceDocumentReader.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ServiceDocumentReader.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ServiceDocumentReader.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/main/java/org/apache/chemistry/atompub/client/stax/ServiceDocumentReader.java Wed Oct 28 11:54:22 2009
@@ -75,7 +75,14 @@
                     QName name = reader.getName();
                     if (name.equals(AtomPub.APP_COLLECTION)) {
                         String href = reader.getAttributeValue("href");
-                        String type = reader.getAttributeValue(AtomPubCMIS.COLLECTION_TYPE.getLocalPart());
+                        String type = "";
+                        ChildrenNavigator nav = reader.getChildren();
+                        while (nav.next()) {
+                            QName n = reader.getName();
+                            if (n.equals(AtomPubCMIS.COLLECTION_TYPE)) {
+                                type = reader.getElementText();
+                            }
+                        }
                         addCollection(repo, href, type);
                     } else if (name.equals(AtomPubCMIS.REPOSITORY_INFO)) {
                         RepositoryInfo info = readRepositoryInfo(context,
@@ -114,13 +121,15 @@
                         caps.setAllVersionsSearchable(Boolean.parseBoolean(reader.getElementText()));
                     } else if (localName.equals(CMIS.CAPABILITY_CAN_GET_DESCENDANTS.getLocalPart())) {
                         caps.setHasGetDescendants(Boolean.parseBoolean(reader.getElementText()));
+                    } else if (localName.equals(CMIS.CAPABILITY_CAN_GET_FOLDER_TREE.getLocalPart())) {
+                        caps.setHasGetFolderTree(Boolean.parseBoolean(reader.getElementText()));
                     } else if (localName.equals(CMIS.CAPABILITY_CONTENT_STREAM_UPDATABILITY.getLocalPart())) {
                         caps.setContentStreamUpdatableAnytime("anytime".equals(reader.getElementText()));
                     } else if (localName.equals(CMIS.CAPABILITY_MULTIFILING.getLocalPart())) {
                         caps.setHasMultifiling(Boolean.parseBoolean(reader.getElementText()));
                     } else if (localName.equals(CMIS.CAPABILITY_PWC_SEARCHABLE.getLocalPart())) {
                         caps.setPWCSearchable(Boolean.parseBoolean(reader.getElementText()));
-                    } else if (localName.equals(CMIS.CAPABILITY_PWC_UPDATEABLE.getLocalPart())) {
+                    } else if (localName.equals(CMIS.CAPABILITY_PWC_UPDATABLE.getLocalPart())) {
                         caps.setPWCUpdatable(Boolean.parseBoolean(reader.getElementText()));
                     } else if (localName.equals(CMIS.CAPABILITY_UNFILING.getLocalPart())) {
                         caps.setHasUnfiling(Boolean.parseBoolean(reader.getElementText()));
@@ -139,8 +148,6 @@
                     } else if (localName.equals(CMIS.CAPABILITY_CHANGES.getLocalPart())) {
                         caps.setChangeCapability(CapabilityChange.get(
                                 reader.getElementText(), CapabilityChange.NONE));
-                    } else if (localName.equals(CMIS.CAPABILITY_CHANGES_ON_TYPE.getLocalPart())) {
-                        changeLogBaseTypes.add(BaseType.get(reader.getElementText()));
                     } else if (localName.equals(CMIS.CAPABILITY_ACL.getLocalPart())) {
                         caps.setACLCapability(CapabilityACL.get(
                                 reader.getElementText(), CapabilityACL.NONE));
@@ -148,6 +155,8 @@
                 }
             } else if (localName.equals(CMIS.REPOSITORY_SPECIFIC_INFORMATION.getLocalPart())) {
                 readRepositorySpecificInformation(context, reader);
+            } else if (localName.equals(CMIS.CHANGES_ON_TYPE.getLocalPart())) {
+                changeLogBaseTypes.add(BaseType.get(reader.getElementText()));
             } else {
                 map.put(localName, reader.getElementText());
             }

Added: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/ServiceDocumentReaderTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/ServiceDocumentReaderTest.java?rev=830511&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/ServiceDocumentReaderTest.java (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/ServiceDocumentReaderTest.java Wed Oct 28 11:54:22 2009
@@ -0,0 +1,79 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Authors:
+ *     Florent Guillaume, Nuxeo
+ */
+package org.apache.chemistry.atompub.client;
+
+import java.io.InputStream;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Set;
+
+import junit.framework.TestCase;
+
+import org.apache.chemistry.BaseType;
+import org.apache.chemistry.CapabilityACL;
+import org.apache.chemistry.CapabilityChange;
+import org.apache.chemistry.CapabilityJoin;
+import org.apache.chemistry.CapabilityQuery;
+import org.apache.chemistry.CapabilityRendition;
+import org.apache.chemistry.Repository;
+import org.apache.chemistry.RepositoryCapabilities;
+import org.apache.chemistry.RepositoryInfo;
+import org.apache.chemistry.atompub.client.stax.ReadContext;
+import org.apache.chemistry.atompub.client.stax.ServiceDocumentReader;
+import org.apache.chemistry.impl.simple.SimpleObjectId;
+
+public class ServiceDocumentReaderTest extends TestCase {
+
+    public void testReadServiceDocument() throws Exception {
+        InputStream is = getClass().getResourceAsStream("/service-document.xml");
+        ServiceDocumentReader&lt;APPRepository&gt; reader = new APPServiceDocumentReader();
+        Repository[] repos = reader.read(new ReadContext((Repository) null), is);
+        assertEquals(1, repos.length);
+        Repository repo = repos[0];
+        assertEquals("test", repo.getId());
+        assertEquals("testname", repo.getName());
+        RepositoryInfo info = repo.getInfo();
+        assertEquals("Repository test", info.getDescription());
+        assertEquals("Apache Test", info.getVendorName());
+        assertEquals("Chemistry Test", info.getProductName());
+        assertEquals("1.0-test", info.getProductVersion());
+        assertEquals(new SimpleObjectId("1234567890"), info.getRootFolderId());
+        assertEquals("20091027-test", info.getLatestChangeLogToken());
+        assertEquals("1.0-test", info.getVersionSupported());
+        assertFalse(info.isChangeLogIncomplete());
+        Set&lt;BaseType&gt; clbt = info.getChangeLogBaseTypes();
+        Set&lt;BaseType&gt; clbtExpected = new HashSet&lt;BaseType&gt;(Arrays.asList(
+                BaseType.FOLDER, BaseType.DOCUMENT));
+        assertEquals(clbtExpected, clbt);
+        RepositoryCapabilities cap = info.getCapabilities();
+        assertEquals(CapabilityACL.MANAGE, cap.getACLCapability());
+        assertFalse(cap.isAllVersionsSearchable());
+        assertEquals(CapabilityChange.OBJECT_IDS_ONLY, cap.getChangeCapability());
+        assertTrue(cap.isContentStreamUpdatableAnytime());
+        assertTrue(cap.hasGetDescendants());
+        assertTrue(cap.hasGetFolderTree());
+        assertFalse(cap.hasMultifiling());
+        assertFalse(cap.isPWCSearchable());
+        assertTrue(cap.isPWCUpdatable());
+        assertEquals(CapabilityQuery.BOTH_COMBINED, cap.getQueryCapability());
+        assertEquals(CapabilityRendition.READ, cap.getRenditionCapability());
+        assertFalse(cap.hasUnfiling());
+        assertFalse(cap.hasVersionSpecificFiling());
+        assertEquals(CapabilityJoin.INNER_AND_OUTER, cap.getJoinCapability());
+    }
+
+}

Propchange: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/ServiceDocumentReaderTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/ServiceDocumentReaderTest.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/TypeFeedReaderTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/TypeFeedReaderTest.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/TypeFeedReaderTest.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/TypeFeedReaderTest.java Wed Oct 28 11:54:22 2009
@@ -28,7 +28,7 @@
 public class TypeFeedReaderTest extends TestCase {
 
     public void testReadTypesFeed() throws Exception {
-        InputStream is = getClass().getResourceAsStream("/feed-types.xml");
+        InputStream is = getClass().getResourceAsStream("/types-feed.xml");
         TypeManager typeManager = TypeFeedReader.INSTANCE.read(new ReadContext(
                 (Repository) null), is);
         assertEquals(5, typeManager.getTypes(null).size());

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/stax/TestPropertyIterator.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/stax/TestPropertyIterator.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/stax/TestPropertyIterator.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/java/org/apache/chemistry/atompub/client/stax/TestPropertyIterator.java Wed Oct 28 11:54:22 2009
@@ -33,7 +33,7 @@
 public class TestPropertyIterator extends TestCase {
 
     public void testPropertyIterator() throws Exception {
-        URL url = this.getClass().getClassLoader().getResource("feedentry.xml");
+        URL url = this.getClass().getClassLoader().getResource("entry.xml");
         StaxReader sr = StaxReader.newReader(url.openStream());
         sr.getFirstTag(CMIS.PROPERTIES);
         PropertyIterator pi = new PropertyIterator(sr);

Copied: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/entry.xml (from r829752, incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feedentry.xml)
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/entry.xml?p2=incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/entry.xml&amp;p1=incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feedentry.xml&amp;r1=829752&amp;r2=830511&amp;rev=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feedentry.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/entry.xml Wed Oct 28 11:54:22 2009
@@ -1,20 +1,20 @@
 &lt;?xml version="1.0"?&gt;
-&lt;entry xmlns="http://www.w3.org/2005/Atom" xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200901"&gt;
+&lt;entry xmlns="http://www.w3.org/2005/Atom" xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"&gt;
   &lt;cmis:object&gt;
     &lt;cmis:properties&gt;
-      &lt;cmis:propertyString pdid="string_null" /&gt;
-      &lt;cmis:propertyString pdid="string"&gt;
+      &lt;cmis:propertyString propertyDefinitionId="string_null" /&gt;
+      &lt;cmis:propertyString propertyDefinitionId="string"&gt;
         &lt;cmis:value&gt;string1&lt;/cmis:value&gt;
       &lt;/cmis:propertyString&gt;
-      &lt;cmis:propertyDateTime pdid="date"&gt;
+      &lt;cmis:propertyDateTime propertyDefinitionId="date"&gt;
         &lt;cmis:value&gt;2009-03-17T17:55:08+01:00
         &lt;/cmis:value&gt;
       &lt;/cmis:propertyDateTime&gt;
-      &lt;cmis:propertyString pdid="string_array"&gt;
+      &lt;cmis:propertyString propertyDefinitionId="string_array"&gt;
         &lt;cmis:value&gt;string1&lt;/cmis:value&gt;
         &lt;cmis:value&gt;string2&lt;/cmis:value&gt;
       &lt;/cmis:propertyString&gt;
-      &lt;cmis:propertyDateTime pdid="date_array"&gt;
+      &lt;cmis:propertyDateTime propertyDefinitionId="date_array"&gt;
         &lt;cmis:value&gt;2009-03-17T17:55:08+01:00
         &lt;/cmis:value&gt;
         &lt;cmis:value&gt;2009-03-18T17:55:08+01:00

Added: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/service-document.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/service-document.xml?rev=830511&amp;view=auto
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/service-document.xml (added)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/service-document.xml Wed Oct 28 11:54:22 2009
@@ -0,0 +1,77 @@
+&lt;?xml version="1.0" encoding="utf8"?&gt;
+&lt;service xmlns="http://www.w3.org/2007/app"
+  xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"
+  xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"&gt;
+  &lt;workspace&gt;
+    &lt;title xmlns="http://www.w3.org/2005/Atom" type="text"&gt;test&lt;/title&gt;
+    &lt;cmisra:repositoryInfo&gt;
+      &lt;cmis:repositoryId&gt;test&lt;/cmis:repositoryId&gt;
+      &lt;cmis:repositoryName&gt;testname&lt;/cmis:repositoryName&gt;
+      &lt;cmis:repositoryDescription&gt;Repository test&lt;/cmis:repositoryDescription&gt;
+      &lt;cmis:vendorName&gt;Apache Test&lt;/cmis:vendorName&gt;
+      &lt;cmis:productName&gt;Chemistry Test&lt;/cmis:productName&gt;
+      &lt;cmis:productVersion&gt;1.0-test&lt;/cmis:productVersion&gt;
+      &lt;cmis:rootFolderId&gt;1234567890&lt;/cmis:rootFolderId&gt;
+      &lt;cmis:latestChangeLogToken&gt;20091027-test&lt;/cmis:latestChangeLogToken&gt;
+      &lt;cmis:capabilities&gt;
+        &lt;cmis:capabilityACL&gt;manage&lt;/cmis:capabilityACL&gt;
+        &lt;cmis:capabilityAllVersionsSearchable&gt;false&lt;/cmis:capabilityAllVersionsSearchable&gt;
+        &lt;cmis:capabilityChanges&gt;objectidsonly&lt;/cmis:capabilityChanges&gt;
+        &lt;cmis:capabilityContentStreamUpdatability&gt;anytime&lt;/cmis:capabilityContentStreamUpdatability&gt;
+        &lt;cmis:capabilityGetDescendants&gt;true&lt;/cmis:capabilityGetDescendants&gt;
+        &lt;cmis:capabilityGetFolderTree&gt;true&lt;/cmis:capabilityGetFolderTree&gt;
+        &lt;cmis:capabilityMultifiling&gt;false&lt;/cmis:capabilityMultifiling&gt;
+        &lt;cmis:capabilityPWCSearchable&gt;false&lt;/cmis:capabilityPWCSearchable&gt;
+        &lt;cmis:capabilityPWCUpdatable&gt;true&lt;/cmis:capabilityPWCUpdatable&gt;
+        &lt;cmis:capabilityQuery&gt;bothcombined&lt;/cmis:capabilityQuery&gt;
+        &lt;cmis:capabilityRenditions&gt;read&lt;/cmis:capabilityRenditions&gt;
+        &lt;cmis:capabilityUnfiling&gt;false&lt;/cmis:capabilityUnfiling&gt;
+        &lt;cmis:capabilityVersionSpecificFiling&gt;false&lt;/cmis:capabilityVersionSpecificFiling&gt;
+        &lt;cmis:capabilityJoin&gt;innerandouter&lt;/cmis:capabilityJoin&gt;
+      &lt;/cmis:capabilities&gt;
+      &lt;cmis:cmisVersionSupported&gt;1.0-test&lt;/cmis:cmisVersionSupported&gt;
+      &lt;cmis:changesIncomplete&gt;false&lt;/cmis:changesIncomplete&gt;
+      &lt;cmis:changesOnType&gt;cmis:folder&lt;/cmis:changesOnType&gt;
+      &lt;cmis:changesOnType&gt;cmis:document&lt;/cmis:changesOnType&gt;
+    &lt;/cmisra:repositoryInfo&gt;
+    &lt;collection href="http://0.0.0.0:8285/cmis/checkedout"&gt;
+      &lt;title xmlns="http://www.w3.org/2005/Atom" type="text"&gt;the checkedout&lt;/title&gt;
+      &lt;cmisra:collectionType&gt;checkedout&lt;/cmisra:collectionType&gt;
+    &lt;/collection&gt;
+    &lt;collection href="http://0.0.0.0:8285/cmis/unfiled"&gt;
+      &lt;title xmlns="http://www.w3.org/2005/Atom" type="text"&gt;the unfiled&lt;/title&gt;
+      &lt;cmisra:collectionType&gt;unfiled&lt;/cmisra:collectionType&gt;
+    &lt;/collection&gt;
+    &lt;collection href="http://0.0.0.0:8285/cmis/types"&gt;
+      &lt;title xmlns="http://www.w3.org/2005/Atom" type="text"&gt;Types&lt;/title&gt;
+      &lt;cmisra:collectionType&gt;types&lt;/cmisra:collectionType&gt;
+    &lt;/collection&gt;
+    &lt;collection href="http://0.0.0.0:8285/cmis/types"&gt;
+      &lt;title xmlns="http://www.w3.org/2005/Atom" type="text"&gt;Types&lt;/title&gt;
+      &lt;cmisra:collectionType&gt;typesdescendants&lt;/cmisra:collectionType&gt;
+    &lt;/collection&gt;
+    &lt;collection href="http://0.0.0.0:8285/cmis/descendants/cb301806-259a-4a8e-9784-b64f04bbbaca"&gt;
+      &lt;title xmlns="http://www.w3.org/2005/Atom" type="text"&gt;the descendants&lt;/title&gt;
+      &lt;cmisra:collectionType&gt;rootdescendants&lt;/cmisra:collectionType&gt;
+    &lt;/collection&gt;
+    &lt;collection href="http://0.0.0.0:8285/cmis/children/cb301806-259a-4a8e-9784-b64f04bbbaca"&gt;
+      &lt;title xmlns="http://www.w3.org/2005/Atom" type="text"&gt;children collection&lt;/title&gt;
+      &lt;cmisra:collectionType&gt;root&lt;/cmisra:collectionType&gt;
+    &lt;/collection&gt;
+    &lt;collection href="http://0.0.0.0:8285/cmis/query"&gt;
+      &lt;title xmlns="http://www.w3.org/2005/Atom" type="text"&gt;query collection&lt;/title&gt;
+      &lt;cmisra:collectionType&gt;query&lt;/cmisra:collectionType&gt;
+    &lt;/collection&gt;
+    &lt;link xmlns="http://www.w3.org/2005/Atom" type="application/cmistree+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/typesdescendants" href="http://0.0.0.0:8285/cmis/typesdescendants" /&gt;
+    &lt;cmisra:uritemplate&gt;
+      &lt;cmisra:type&gt;objectbyid&lt;/cmisra:type&gt;
+      &lt;cmisra:mediatype&gt;application/atom+xml;type=entry&lt;/cmisra:mediatype&gt;
+      &lt;cmisra:template&gt;http://0.0.0.0:8285/cmis/object/{id}&lt;/cmisra:template&gt;
+    &lt;/cmisra:uritemplate&gt;
+    &lt;cmisra:uritemplate&gt;
+      &lt;cmisra:type&gt;objectbypath&lt;/cmisra:type&gt;
+      &lt;cmisra:mediatype&gt;application/atom+xml;type=entry&lt;/cmisra:mediatype&gt;
+      &lt;cmisra:template&gt;http://0.0.0.0:8285/cmis/path{path}&lt;/cmisra:template&gt;
+    &lt;/cmisra:uritemplate&gt;
+  &lt;/workspace&gt;
+&lt;/service&gt;

Propchange: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/service-document.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/service-document.xml
------------------------------------------------------------------------------
    svn:keywords = Id

Copied: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/types-feed.xml (from r829752, incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feed-types.xml)
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/types-feed.xml?p2=incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/types-feed.xml&amp;p1=incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feed-types.xml&amp;r1=829752&amp;r2=830511&amp;rev=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/feed-types.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/src/test/resources/types-feed.xml Wed Oct 28 11:54:22 2009
@@ -1,6 +1,6 @@
 &lt;?xml version='1.0' encoding='utf-8'?&gt;
-&lt;feed xmlns="http://www.w3.org/2005/Atom" xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200901"
-  xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200901"&gt;
+&lt;feed xmlns="http://www.w3.org/2005/Atom" xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"
+  xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"&gt;
   &lt;id&gt;urn:x-id:types&lt;/id&gt;
   &lt;title type="text"&gt;Types&lt;/title&gt;
   &lt;author&gt;
@@ -15,12 +15,12 @@
     &lt;link href="http://127.0.0.1:8080/cmis/type/document" rel="edit" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/type/document" rel="alternate" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/repository" rel="repository" /&gt;
-    &lt;cmisra:type&gt;
+    &lt;cmisra:type cmisra:id="document"&gt;
       &lt;cmis:id&gt;cmis:document&lt;/cmis:id&gt;
       &lt;cmis:localName&gt;cmis:document&lt;/cmis:localName&gt;
       &lt;cmis:queryName&gt;Document&lt;/cmis:queryName&gt;
       &lt;cmis:displayName&gt;Document Type&lt;/cmis:displayName&gt;
-      &lt;cmis:baseTypeId&gt;cmis:document&lt;/cmis:baseTypeId&gt;
+      &lt;cmis:baseId&gt;cmis:document&lt;/cmis:baseId&gt;
       &lt;cmis:parentId /&gt;
       &lt;cmis:description&gt;&lt;/cmis:description&gt;
       &lt;cmis:creatable&gt;true&lt;/cmis:creatable&gt;
@@ -29,7 +29,7 @@
       &lt;cmis:versionable&gt;true&lt;/cmis:versionable&gt;
       &lt;cmis:controllablePolicy&gt;true&lt;/cmis:controllablePolicy&gt;
       &lt;cmis:controllableACL&gt;true&lt;/cmis:controllableACL&gt;
-      &lt;cmis:fulltextindexed&gt;true&lt;/cmis:fulltextindexed&gt;
+      &lt;cmis:fulltextIndexed&gt;true&lt;/cmis:fulltextIndexed&gt;
       &lt;cmis:includedInSupertypeQuery&gt;true
       &lt;/cmis:includedInSupertypeQuery&gt;
     &lt;/cmisra:type&gt;
@@ -42,12 +42,12 @@
     &lt;link href="http://127.0.0.1:8080/cmis/type/folder" rel="edit" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/type/folder" rel="alternate" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/repository" rel="repository" /&gt;
-    &lt;cmisra:type&gt;
+    &lt;cmisra:type cmisra:id="folder"&gt;
       &lt;cmis:id&gt;cmis:folder&lt;/cmis:id&gt;
       &lt;cmis:localName&gt;cmis:folder&lt;/cmis:localName&gt;
       &lt;cmis:queryName&gt;Folder&lt;/cmis:queryName&gt;
       &lt;cmis:displayName&gt;Folder Type&lt;/cmis:displayName&gt;
-      &lt;cmis:baseTypeId&gt;cmis:folder&lt;/cmis:baseTypeId&gt;
+      &lt;cmis:baseId&gt;cmis:folder&lt;/cmis:baseId&gt;
       &lt;cmis:parentId /&gt;
       &lt;cmis:description&gt;&lt;/cmis:description&gt;
       &lt;cmis:creatable&gt;true&lt;/cmis:creatable&gt;
@@ -56,7 +56,7 @@
       &lt;cmis:versionable&gt;false&lt;/cmis:versionable&gt;
       &lt;cmis:controllablePolicy&gt;true&lt;/cmis:controllablePolicy&gt;
       &lt;cmis:controllableACL&gt;true&lt;/cmis:controllableACL&gt;
-      &lt;cmis:fulltextindexed&gt;true&lt;/cmis:fulltextindexed&gt;
+      &lt;cmis:fulltextIndexed&gt;true&lt;/cmis:fulltextIndexed&gt;
       &lt;cmis:includedInSupertypeQuery&gt;true
       &lt;/cmis:includedInSupertypeQuery&gt;
     &lt;/cmisra:type&gt;
@@ -69,12 +69,12 @@
     &lt;link href="http://127.0.0.1:8080/cmis/type/relationship" rel="edit" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/type/relationship" rel="alternate" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/repository" rel="repository" /&gt;
-    &lt;cmisra:type&gt;
+    &lt;cmisra:type cmisra:id="relationship"&gt;
       &lt;cmis:id&gt;cmis:relationship&lt;/cmis:id&gt;
       &lt;cmis:localName&gt;cmis:relationship&lt;/cmis:localName&gt;
       &lt;cmis:queryName&gt;Relationship&lt;/cmis:queryName&gt;
       &lt;cmis:displayName&gt;Relationship Type&lt;/cmis:displayName&gt;
-      &lt;cmis:baseTypeId&gt;cmis:relationship&lt;/cmis:baseTypeId&gt;
+      &lt;cmis:baseId&gt;cmis:relationship&lt;/cmis:baseId&gt;
       &lt;cmis:parentId /&gt;
       &lt;cmis:description&gt;&lt;/cmis:description&gt;
       &lt;cmis:creatable&gt;true&lt;/cmis:creatable&gt;
@@ -83,7 +83,7 @@
       &lt;cmis:versionable&gt;false&lt;/cmis:versionable&gt;
       &lt;cmis:controllablePolicy&gt;false&lt;/cmis:controllablePolicy&gt;
       &lt;cmis:controllableACL&gt;false&lt;/cmis:controllableACL&gt;
-      &lt;cmis:fulltextindexed&gt;false&lt;/cmis:fulltextindexed&gt;
+      &lt;cmis:fulltextIndexed&gt;false&lt;/cmis:fulltextIndexed&gt;
       &lt;cmis:includedInSupertypeQuery&gt;true
       &lt;/cmis:includedInSupertypeQuery&gt;
     &lt;/cmisra:type&gt;
@@ -96,12 +96,12 @@
     &lt;link href="http://127.0.0.1:8080/cmis/type/policy" rel="edit" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/type/policy" rel="alternate" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/repository" rel="repository" /&gt;
-    &lt;cmisra:type&gt;
+    &lt;cmisra:type cmisra:id="policy"&gt;
       &lt;cmis:id&gt;cmis:policy&lt;/cmis:id&gt;
       &lt;cmis:localName&gt;cmis:policy&lt;/cmis:localName&gt;
       &lt;cmis:queryName&gt;Policy&lt;/cmis:queryName&gt;
       &lt;cmis:displayName&gt;Policy Type&lt;/cmis:displayName&gt;
-      &lt;cmis:baseTypeId&gt;cmis:policy&lt;/cmis:baseTypeId&gt;
+      &lt;cmis:baseId&gt;cmis:policy&lt;/cmis:baseId&gt;
       &lt;cmis:parentId /&gt;
       &lt;cmis:description&gt;&lt;/cmis:description&gt;
       &lt;cmis:creatable&gt;true&lt;/cmis:creatable&gt;
@@ -110,7 +110,7 @@
       &lt;cmis:versionable&gt;false&lt;/cmis:versionable&gt;
       &lt;cmis:controllablePolicy&gt;false&lt;/cmis:controllablePolicy&gt;
       &lt;cmis:controllableACL&gt;false&lt;/cmis:controllableACL&gt;
-      &lt;cmis:fulltextindexed&gt;false&lt;/cmis:fulltextindexed&gt;
+      &lt;cmis:fulltextIndexed&gt;false&lt;/cmis:fulltextIndexed&gt;
       &lt;cmis:includedInSupertypeQuery&gt;true
       &lt;/cmis:includedInSupertypeQuery&gt;
     &lt;/cmisra:type&gt;
@@ -123,12 +123,12 @@
     &lt;link href="http://127.0.0.1:8080/cmis/type/Root" rel="edit" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/type/Root" rel="alternate" /&gt;
     &lt;link href="http://127.0.0.1:8080/cmis/repository" rel="repository" /&gt;
-    &lt;cmisra:type&gt;
+    &lt;cmisra:type cmisra:id="root"&gt;
       &lt;cmis:id&gt;Root&lt;/cmis:id&gt;
       &lt;cmis:localName&gt;Root&lt;/cmis:localName&gt;
       &lt;cmis:queryName&gt;Root&lt;/cmis:queryName&gt;
       &lt;cmis:displayName&gt;Root Folder Type&lt;/cmis:displayName&gt;
-      &lt;cmis:baseTypeId&gt;cmis:folder&lt;/cmis:baseTypeId&gt;
+      &lt;cmis:baseId&gt;cmis:folder&lt;/cmis:baseId&gt;
       &lt;cmis:parentId&gt;cmis:folder&lt;/cmis:parentId&gt;
       &lt;cmis:description&gt;&lt;/cmis:description&gt;
       &lt;cmis:creatable&gt;false&lt;/cmis:creatable&gt;
@@ -137,7 +137,7 @@
       &lt;cmis:versionable&gt;false&lt;/cmis:versionable&gt;
       &lt;cmis:controllablePolicy&gt;false&lt;/cmis:controllablePolicy&gt;
       &lt;cmis:controllableACL&gt;false&lt;/cmis:controllableACL&gt;
-      &lt;cmis:fulltextindexed&gt;false&lt;/cmis:fulltextindexed&gt;
+      &lt;cmis:fulltextIndexed&gt;false&lt;/cmis:fulltextIndexed&gt;
       &lt;cmis:includedInSupertypeQuery&gt;false
       &lt;/cmis:includedInSupertypeQuery&gt;
     &lt;/cmisra:type&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISObjectsCollection.java Wed Oct 28 11:54:22 2009
@@ -401,7 +401,11 @@
 
     @Override
     public String getContentType(ObjectEntry object) {
-        return (String) object.getValue(Property.CONTENT_STREAM_MIME_TYPE);
+        try {
+            return (String) object.getValue(Property.CONTENT_STREAM_MIME_TYPE);
+        } catch (Exception e) {
+            return null;
+        }
     }
 
     @Override

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISProvider.java Wed Oct 28 11:54:22 2009
@@ -151,12 +151,15 @@
             base += '/';
         }
         List&lt;URITemplate&gt; list = new ArrayList&lt;URITemplate&gt;(3);
-        list.add(new URITemplate(AtomPubCMIS.URITMPL_ENTRY_BY_ID, //
+        list.add(new URITemplate(AtomPubCMIS.URITMPL_OBJECT_BY_ID, //
                 AtomPub.MEDIA_TYPE_ATOM_ENTRY, //
                 base + "object/{id}"));
-        list.add(new URITemplate(AtomPubCMIS.URITMPL_FOLDER_BY_PATH, //
+        list.add(new URITemplate(AtomPubCMIS.URITMPL_OBJECT_BY_PATH, //
                 AtomPub.MEDIA_TYPE_ATOM_ENTRY, //
                 base + "path{path}"));
+        list.add(new URITemplate(AtomPubCMIS.URITMPL_TYPE_BY_ID, //
+                AtomPub.MEDIA_TYPE_ATOM_FEED, //
+                base + "type/{id}"));
         if (false) { // TODO
             list.add(new URITemplate(AtomPubCMIS.URITMPL_QUERY, //
                     AtomPub.MEDIA_TYPE_ATOM_FEED, //

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISServiceResponse.java Wed Oct 28 11:54:22 2009
@@ -43,7 +43,7 @@
  */
 public class CMISServiceResponse extends StreamWriterResponseContext {
 
-    public static final String ATOMPUB_VERSION_SUPPORTED = "0.62";
+    public static final String ATOMPUB_VERSION_SUPPORTED = "1.0";
 
     protected final CMISProvider provider;
 
@@ -59,8 +59,7 @@
     protected void writeTo(StreamWriter sw) throws IOException {
         sw.startDocument();
         sw.startService();
-        ((StaxStreamWriter) sw).writeNamespace(CMIS.CMIS_PREFIX,
-                CMIS.CMIS_NS);
+        ((StaxStreamWriter) sw).writeNamespace(CMIS.CMIS_PREFIX, CMIS.CMIS_NS);
         ((StaxStreamWriter) sw).writeNamespace(AtomPubCMIS.CMISRA_PREFIX,
                 AtomPubCMIS.CMISRA_NS);
         for (WorkspaceInfo wi : provider.getWorkspaceManager(request).getWorkspaces(
@@ -72,10 +71,11 @@
             // collections
             for (CollectionInfo ci : wi.getCollections(request)) {
                 sw.startCollection(ci.getHref(request));
-                sw.writeAttribute(AtomPubCMIS.COLLECTION_TYPE,
-                        ((CMISCollection&lt;?&gt;) ci).getType());
                 sw.writeTitle(ci.getTitle(request));
                 sw.writeAccepts(ci.getAccepts(request));
+                sw.startElement(AtomPubCMIS.COLLECTION_TYPE);
+                sw.writeElementText(((CMISCollection&lt;?&gt;) ci).getType());
+                sw.endElement();
                 // no AtomPub categories
                 sw.endCollection();
             }
@@ -132,32 +132,26 @@
             sw.startElement(AtomPubCMIS.REPOSITORY_INFO);
             write(CMIS.REPOSITORY_ID, repository.getId());
             write(CMIS.REPOSITORY_NAME, repository.getName());
-            write(CMIS.REPOSITORY_RELATIONSHIP, "self");
             write(CMIS.REPOSITORY_DESCRIPTION, info.getDescription());
             write(CMIS.VENDOR_NAME, info.getVendorName());
             write(CMIS.PRODUCT_NAME, info.getProductName());
             write(CMIS.PRODUCT_VERSION, info.getProductVersion());
             write(CMIS.ROOT_FOLDER_ID, info.getRootFolderId().getId());
-            write(CMIS.LATEST_CHANGE_LOG_TOKEN,
-                    info.getLatestChangeLogToken());
+            write(CMIS.LATEST_CHANGE_LOG_TOKEN, info.getLatestChangeLogToken());
 
             sw.startElement(CMIS.CAPABILITIES);
             write(CMIS.CAPABILITY_ACL, cap.getACLCapability().toString());
             write(CMIS.CAPABILITY_ALL_VERSIONS_SEARCHABLE,
                     cap.isAllVersionsSearchable());
-            write(CMIS.CAPABILITY_CHANGES,
-                    cap.getJoinCapability().toString());
-            for (BaseType t : info.getChangeLogBaseTypes()) {
-                write(CMIS.CAPABILITY_CHANGES_ON_TYPE, t.toString());
-            }
+            write(CMIS.CAPABILITY_CHANGES, cap.getJoinCapability().toString());
             write(CMIS.CAPABILITY_CONTENT_STREAM_UPDATABILITY,
                     cap.isContentStreamUpdatableAnytime() ? "anytime"
                             : "pwconly");
-            write(CMIS.CAPABILITY_CAN_GET_DESCENDANTS,
-                    cap.hasGetDescendants());
+            write(CMIS.CAPABILITY_CAN_GET_DESCENDANTS, cap.hasGetDescendants());
+            write(CMIS.CAPABILITY_CAN_GET_FOLDER_TREE, cap.hasGetFolderTree());
             write(CMIS.CAPABILITY_MULTIFILING, cap.hasMultifiling());
             write(CMIS.CAPABILITY_PWC_SEARCHABLE, cap.isPWCSearchable());
-            write(CMIS.CAPABILITY_PWC_UPDATEABLE, cap.isPWCUpdatable());
+            write(CMIS.CAPABILITY_PWC_UPDATABLE, cap.isPWCUpdatable());
             write(CMIS.CAPABILITY_QUERY, cap.getQueryCapability().toString());
             write(CMIS.CAPABILITY_RENDITIONS,
                     cap.getRenditionCapability().toString());
@@ -170,6 +164,9 @@
             write(CMIS.VERSION_SUPPORTED, ATOMPUB_VERSION_SUPPORTED);
             // write(CMISXML.THIN_CLIENT_URI, "TODO");
             write(CMIS.CHANGES_INCOMPLETE, info.isChangeLogIncomplete());
+            for (BaseType t : info.getChangeLogBaseTypes()) {
+                write(CMIS.CHANGES_ON_TYPE, t.toString());
+            }
             write(CMIS.REPOSITORY_SPECIFIC_INFORMATION,
                     info.getRepositorySpecificInformation());
             sw.endElement();

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/src/main/java/org/apache/chemistry/atompub/server/CMISTypesCollection.java Wed Oct 28 11:54:22 2009
@@ -113,6 +113,7 @@
 
         // CMIS-specific
         Element te = factory.newElement(AtomPubCMIS.TYPE, entry);
+        te.setAttributeValue(AtomPubCMIS.ID, type.getId());
         Element el;
         // note: setText is called in a separate statement as JDK 5 has problems
         // compiling when it's on one line (compiler generics bug)
@@ -129,7 +130,7 @@
         el.setText(type.getQueryName());
         el = factory.newElement(CMIS.DISPLAY_NAME, te);
         el.setText(type.getDisplayName());
-        el = factory.newElement(CMIS.BASE_TYPE_ID, te);
+        el = factory.newElement(CMIS.BASE_ID, te);
         el.setText(type.getBaseType().getId());
         el = factory.newElement(CMIS.PARENT_ID, te);
         el.setText(type.getParentId());
@@ -179,15 +180,9 @@
                 case PropertyType.ID_ORD:
                     qname = CMIS.PROPERTY_ID_DEFINITION;
                     break;
-                case PropertyType.XML_ORD:
-                    qname = CMIS.PROPERTY_XML_DEFINITION;
-                    break;
                 case PropertyType.HTML_ORD:
                     qname = CMIS.PROPERTY_HTML_DEFINITION;
                     break;
-                case PropertyType.XHTML_ORD:
-                    qname = CMIS.PROPERTY_XHTML_DEFINITION;
-                    break;
                 default:
                     throw new AssertionError(pd.getType().name());
                 }
@@ -252,9 +247,6 @@
                     break;
                 case PropertyType.ID_ORD:
                     break;
-                case PropertyType.XML_ORD:
-                    // TODO schemaURI
-                    break;
                 case PropertyType.HTML_ORD:
                     break;
                 default:

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPub.java Wed Oct 28 11:54:22 2009
@@ -98,14 +98,13 @@
     public static final String LINK_DOWN = "down";
 
     /*
-     * TODO-0.63 update to use properly
      * http://www.ietf.org/id/draft-brown-versioning-link-relations-01.txt
      */
 
-    public static final String LINK_VERSION_HISTORY = "allversions"; // TODO-0.63
+    public static final String LINK_VERSION_HISTORY = "version-history";
 
-    public static final String LINK_LATEST_VERSION = "latestversion"; // TODO-0.63
+    public static final String LINK_CURRENT_VERSION = "current-version";
 
-    public static final String LINK_WORKING_COPY = "pwc"; // TODO-0.63
+    public static final String LINK_WORKING_COPY = "working-copy";
 
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/AtomPubCMIS.java Wed Oct 28 11:54:22 2009
@@ -34,7 +34,7 @@
      */
 
     public static final String CMISRA_NS = CMIS.CMIS_NS_BASE
-            + "restatom/200901";
+            + "restatom/200908/";
 
     public static final String CMISRA_PREFIX = "cmisra";
 
@@ -56,6 +56,8 @@
 
     public static final QName TYPE = CMISRAName("type");
 
+    public static final QName ID = CMISRAName("id");
+
     public static final QName MEDIA_TYPE = CMISRAName("mediatype");
 
     public static final QName OBJECT = CMISRAName("object");
@@ -85,7 +87,7 @@
      */
 
     public static final String CMIS_LINK_NS_BASE = CMIS.CMIS_NS_BASE
-            + "link/200901/";
+            + "link/200908/";
 
     public static final String LINK_SOURCE = CMIS_LINK_NS_BASE + "source";
 
@@ -116,12 +118,14 @@
      * ----- URI Template Types -----
      */
 
-    public static final String URITMPL_ENTRY_BY_ID = "entrybyid";
+    public static final String URITMPL_OBJECT_BY_ID = "objectbyid";
 
-    public static final String URITMPL_FOLDER_BY_PATH = "folderbypath"; // TODO-0.63
+    public static final String URITMPL_OBJECT_BY_PATH = "objectbypath";
 
     public static final String URITMPL_QUERY = "query";
 
+    public static final String URITMPL_TYPE_BY_ID = "typebyid";
+
     /*
      * ----- Media Types -----
      */

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/ValueAdapter.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/ValueAdapter.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/ValueAdapter.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/ValueAdapter.java Wed Oct 28 11:54:22 2009
@@ -242,33 +242,6 @@
         }
     }
 
-    protected static final class XmlValueAdapter extends ValueAdapter {
-        @Override
-        public Serializable readValue(String xml) {
-            return xml;
-        }
-
-        @Override
-        public String writeValue(Serializable val) {
-            return val.toString();
-        }
-
-        @Override
-        public Serializable[] createArray(int size) {
-            return new String[size];
-        }
-
-        @Override
-        public QName getPropertyQName() {
-            return CMIS.PROPERTY_XML;
-        }
-
-        @Override
-        public PropertyType getPropertyType() {
-            return PropertyType.XML;
-        }
-    }
-
     protected static final class HtmlValueAdapter extends ValueAdapter {
         @Override
         public Serializable readValue(String xml) {
@@ -296,33 +269,6 @@
         }
     }
 
-    protected static final class XhtmlValueAdapter extends ValueAdapter {
-        @Override
-        public Serializable readValue(String xml) {
-            return xml;
-        }
-
-        @Override
-        public String writeValue(Serializable val) {
-            return val.toString();
-        }
-
-        @Override
-        public Serializable[] createArray(int size) {
-            return new String[size];
-        }
-
-        @Override
-        public QName getPropertyQName() {
-            return CMIS.PROPERTY_XHTML;
-        }
-
-        @Override
-        public PropertyType getPropertyType() {
-            return PropertyType.XHTML;
-        }
-    }
-
     public static final ValueAdapter STRING = new StringValueAdapter();
 
     public static final ValueAdapter DECIMAL = new DecimalValueAdapter();
@@ -337,12 +283,8 @@
 
     public static final ValueAdapter ID = new IdValueAdapter();
 
-    public static final ValueAdapter XML = new XmlValueAdapter();
-
     public static final ValueAdapter HTML = new HtmlValueAdapter();
 
-    public static final ValueAdapter XHTML = new XhtmlValueAdapter();
-
     protected static final Map&lt;PropertyType, ValueAdapter&gt; byPropertyType = new HashMap&lt;PropertyType, ValueAdapter&gt;();
 
     protected static final Map&lt;QName, ValueAdapter&gt; byQName = new HashMap&lt;QName, ValueAdapter&gt;();
@@ -356,9 +298,7 @@
                 DATETIME, //
                 URI, //
                 ID, //
-                XML, //
-                HTML, //
-                XHTML //
+                HTML //
         )) {
             byPropertyType.put(va.getPropertyType(), va);
             byQName.put(va.getPropertyQName(), va);

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/abdera/PropertiesElement.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/abdera/PropertiesElement.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/abdera/PropertiesElement.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/src/main/java/org/apache/chemistry/atompub/abdera/PropertiesElement.java Wed Oct 28 11:54:22 2009
@@ -167,11 +167,11 @@
         el.setAttributeValue(CMIS.PDID, propertyDefinition.getId());
         String localName = propertyDefinition.getLocalName();
         if (localName != null) {
-            el.setAttributeValue(CMIS.LOCALNAME, localName);
+            el.setAttributeValue(CMIS.LOCAL_NAME_NONS, localName);
         }
         String displayName = propertyDefinition.getDisplayName();
         if (displayName != null) {
-            el.setAttributeValue(CMIS.DISPLAYNAME, displayName);
+            el.setAttributeValue(CMIS.DISPLAY_NAME_NONS, displayName);
         }
         for (String s : values) {
             Element val = el.addExtension(CMIS.VALUE);
@@ -181,7 +181,8 @@
     }
 
     // sets a property without all the type information, used for result sets
-    public void setProperty(String key, Serializable value, PropertyType propertyType) {
+    public void setProperty(String key, Serializable value,
+            PropertyType propertyType) {
         if (value == null) {
             // TODO assumes this isn't called several times
             return;
@@ -206,7 +207,7 @@
      * @return the list of serialized strings
      */
     // TODO move this to a helper somewhere else
-    @SuppressWarnings( { "null", "unchecked" })
+    @SuppressWarnings( { "unchecked" })
     public static List&lt;String&gt; getStringsForValue(Serializable value,
             PropertyType propertyType, boolean multi) {
         List&lt;String&gt; values = null;
@@ -269,12 +270,8 @@
             break;
         case PropertyType.URI_ORD:
             throw new UnsupportedOperationException(propertyType.toString());
-        case PropertyType.XML_ORD:
-            throw new UnsupportedOperationException(propertyType.toString());
         case PropertyType.HTML_ORD:
             throw new UnsupportedOperationException(propertyType.toString());
-        case PropertyType.XHTML_ORD:
-            throw new UnsupportedOperationException(propertyType.toString());
         default:
             throw new UnsupportedOperationException(propertyType.toString());
         }
@@ -297,12 +294,8 @@
             return CMIS.PROPERTY_ID;
         case PropertyType.URI_ORD:
             return CMIS.PROPERTY_URI;
-        case PropertyType.XML_ORD:
-            return CMIS.PROPERTY_XML;
         case PropertyType.HTML_ORD:
             return CMIS.PROPERTY_HTML;
-        case PropertyType.XHTML_ORD:
-            return CMIS.PROPERTY_XHTML;
         default:
             throw new UnsupportedOperationException(propertyType.toString());
         }

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/base/BaseRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/base/BaseRepository.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/base/BaseRepository.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/base/BaseRepository.java Wed Oct 28 11:54:22 2009
@@ -128,11 +128,11 @@
 
     public String getProductVersion() {
         // TODO update this when releasing
-        return "0.1-SNAPSHOT";
+        return "1.0-SNAPSHOT";
     }
 
     public String getVersionSupported() {
-        return "0.62";
+        return "1.0";
     }
 
     public org.w3c.dom.Document getRepositorySpecificInformation() {

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleConnection.java Wed Oct 28 11:54:22 2009
@@ -745,9 +745,9 @@
 
     public Iterator&lt;ObjectEntry&gt; getChangeLog(String changeLogToken,
             boolean includeProperties, int maxItems, boolean[] hasMoreItems,
-            String[] lastChangeLogToken) {
+            String[] latestChangeLogToken) {
         hasMoreItems[0] = false;
-        lastChangeLogToken[0] = null;
+        latestChangeLogToken[0] = null;
         return Collections.&lt;ObjectEntry&gt; emptyList().iterator();
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleObject.java Wed Oct 28 11:54:22 2009
@@ -30,7 +30,6 @@
 import org.apache.chemistry.PropertyDefinition;
 import org.apache.chemistry.Relationship;
 import org.apache.chemistry.RelationshipDirection;
-import org.apache.chemistry.Repository;
 import org.apache.chemistry.Type;
 import org.apache.chemistry.impl.base.BaseObject;
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleRepository.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleRepository.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleRepository.java Wed Oct 28 11:54:22 2009
@@ -98,10 +98,6 @@
      * ----- RepositoryEntry -----
      */
 
-    public String getRelationshipName() {
-        return null;
-    }
-
     public URI getThinClientURI() {
         return null;
     }
@@ -196,6 +192,10 @@
         return true;
     }
 
+    public boolean hasGetFolderTree() {
+        return false;
+    }
+
     public boolean isContentStreamUpdatableAnytime() {
         return true;
     }

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleTypeManager.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleTypeManager.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleTypeManager.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/main/java/org/apache/chemistry/impl/simple/SimpleTypeManager.java Wed Oct 28 11:54:22 2009
@@ -84,6 +84,9 @@
      */
     public Collection&lt;Type&gt; getTypes(String typeId, int depth,
             boolean returnPropertyDefinitions) {
+        if (depth == 0) {
+            throw new IllegalArgumentException("Depth 0 invalid");
+        }
         List&lt;Type&gt; list = new LinkedList&lt;Type&gt;();
         Set&lt;String&gt; done = new HashSet&lt;String&gt;();
         if (typeId == null) {

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java?rev=830511&amp;r1=830510&amp;r2=830511&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/src/test/java/org/apache/chemistry/impl/simple/TestSimpleRepository.java Wed Oct 28 11:54:22 2009
@@ -86,8 +86,8 @@
         assertNotNull(info.getRootFolderId());
         assertEquals("Apache", info.getVendorName());
         assertEquals("Chemistry Simple Repository", info.getProductName());
-        assertEquals("0.1-SNAPSHOT", info.getProductVersion());
-        assertEquals("0.62", info.getVersionSupported());
+        assertEquals("1.0-SNAPSHOT", info.getProductVersion());
+        assertEquals("1.0", info.getVersionSupported());
         assertNull(info.getRepositorySpecificInformation());
 
         RepositoryCapabilities capabilities = info.getCapabilities();
@@ -111,8 +111,6 @@
         assertNull(repo.getType("no-such-type"));
         assertEquals(3,
                 repo.getTypes(BaseType.DOCUMENT.getId(), -1, false).size());
-        assertEquals(0, // TODO spec unclear on depth 0
-                repo.getTypes(BaseType.DOCUMENT.getId(), 0, false).size());
         assertEquals(1,
                 repo.getTypes(BaseType.DOCUMENT.getId(), 1, false).size());
         assertEquals(2,
@@ -120,7 +118,6 @@
         assertEquals(2,
                 repo.getTypes(BaseType.DOCUMENT.getId(), 3, false).size());
         assertEquals(2, repo.getTypes("doc", -1, false).size());
-        assertEquals(0, repo.getTypes("doc", 0, false).size());
         assertEquals(1, repo.getTypes("doc", 1, false).size());
         assertEquals(1, repo.getTypes("doc", 2, false).size());
         assertEquals(1, repo.getTypes("doc", 3, false).size());
@@ -253,13 +250,13 @@
         res = conn.query("SELECT * FROM doc", false);
         assertEquals(1, res.size());
         res = conn.query(
-                "SELECT * FROM cmis:folder WHERE cmis:Name = ''",
+                "SELECT * FROM cmis:folder WHERE cmis:name = ''",
                 false);
         assertEquals(1, res.size());
-        res = conn.query("SELECT * FROM doc WHERE cmis:ObjectId = 'nosuchid'",
+        res = conn.query("SELECT * FROM doc WHERE cmis:objectId = 'nosuchid'",
                 false);
         assertEquals(0, res.size());
-        res = conn.query("SELECT * FROM doc WHERE cmis:ObjectId &lt;&gt; '123'",
+        res = conn.query("SELECT * FROM doc WHERE cmis:objectId &lt;&gt; '123'",
                 false);
         assertEquals(1, res.size());
     }




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r829553 - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec: QueryPagingTest.java QueryTest.java</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091025121540.D2A7323888CF@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091025121540-D2A7323888CF@eris-apache-org%3e</id>
<updated>2009-10-25T12:15:40Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Sun Oct 25 12:15:40 2009
New Revision: 829553

URL: http://svn.apache.org/viewvc?rev=829553&amp;view=rev
Log:
Query tests now check for 201 status (as per spec) on query post.

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryPagingTest.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryTest.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryPagingTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryPagingTest.java?rev=829553&amp;r1=829552&amp;r2=829553&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryPagingTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryPagingTest.java
Sun Oct 25 12:15:40 2009
@@ -80,7 +80,7 @@
         queryReq = queryReq.replace("${SKIPCOUNT}", "0");
         queryReq = queryReq.replace("${MAXITEMS}", "4");
         Response queryRes = client.executeRequest(new PostRequest(queryHREF.toString(), queryReq,
-                CMISConstants.MIMETYPE_CMIS_QUERY), 200);
+                CMISConstants.MIMETYPE_CMIS_QUERY), 201);
         Assert.assertNotNull(queryRes);
 
         // retrieve entries for first page

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryTest.java?rev=829553&amp;r1=829552&amp;r2=829553&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/QueryTest.java
Sun Oct 25 12:15:40 2009
@@ -91,7 +91,7 @@
         queryReq = queryReq.replace("${MAXITEMS}", "5");
 
         Request postReq = new PostRequest(queryHREF.toString(), queryReq,  CMISConstants.MIMETYPE_CMIS_QUERY);
-        Response queryRes = client.executeRequest(postReq, 200);
+        Response queryRes = client.executeRequest(postReq, 201);
         Assert.assertNotNull(queryRes);
         Feed queryFeed = model.parseFeed(new StringReader(queryRes.getContentAsString()),
null);
         Assert.assertNotNull(queryFeed);
@@ -124,7 +124,7 @@
         queryReq = queryReq.replace("${MAXITEMS}", "5");
 
         Request postReq = new PostRequest(queryHREF.toString(), queryReq, CMISConstants.MIMETYPE_CMIS_QUERY);
-        Response queryRes = client.executeRequest(postReq, 200);
+        Response queryRes = client.executeRequest(postReq, 201);
         Assert.assertNotNull(queryRes);
         Feed queryFeed = model.parseFeed(new StringReader(queryRes.getContentAsString()),
null);
         Assert.assertNotNull(queryFeed);
@@ -157,7 +157,7 @@
         queryReq = queryReq.replace("${MAXITEMS}", "5");
 
         Request postReq = new PostRequest(queryHREF.toString(), queryReq, CMISConstants.MIMETYPE_CMIS_QUERY);
-        Response queryRes = client.executeRequest(postReq, 200);
+        Response queryRes = client.executeRequest(postReq, 201);
         Assert.assertNotNull(queryRes);
         Feed queryFeed = model.parseFeed(new StringReader(queryRes.getContentAsString()),
null);
         Assert.assertNotNull(queryFeed);
@@ -191,7 +191,7 @@
         queryReq = queryReq.replace("${MAXITEMS}", "5");
 
         Request postReq = new PostRequest(queryHREF.toString(), queryReq, CMISConstants.MIMETYPE_CMIS_QUERY);
-        Response queryRes = client.executeRequest(postReq, 200);
+        Response queryRes = client.executeRequest(postReq, 201);
         Assert.assertNotNull(queryRes);
         Feed queryFeed = model.parseFeed(new StringReader(queryRes.getContentAsString()),
null);
         Assert.assertNotNull(queryFeed);
@@ -225,7 +225,7 @@
 
         // issue structured query
         Request postReq = new PostRequest(queryHREF.toString(), queryReq, CMISConstants.MIMETYPE_CMIS_QUERY);
-        Response queryRes = client.executeRequest(postReq, 200);
+        Response queryRes = client.executeRequest(postReq, 201);
         Assert.assertNotNull(queryRes);
         Feed queryFeed = model.parseFeed(new StringReader(queryRes.getContentAsString()),
null);
         Assert.assertNotNull(queryFeed);




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r829546 [2/3] - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src: main/resources/org/apache/chemistry/tck/atompub/xsd/ test/resources/org/apache/chemistry/tck/atompub/examples/</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091025114430.368B223889BA@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091025114430-368B223889BA@eris-apache-org%3e</id>
<updated>2009-10-25T11:44:29Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderDescendants.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderDescendants.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderDescendants.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderDescendants.xml Sun Oct 25 11:44:28 2009
@@ -6,42 +6,42 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:19.218-07:00&lt;/atom:updated&gt;
-    &lt;atom:id&gt;urn:uuid:2244c5ca-8185-463a-a068-f215bb526a30&lt;/atom:id&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="self" href="http://cmisexample.oasis-open.org/rep1/d4557ac3-587b-4811-9473-9bcd0ae3e462/3"/&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:56.406-07:00&lt;/atom:updated&gt;
+    &lt;atom:id&gt;urn:uuid:21e6044a-4ff5-4f8e-9483-c97ee45256fe&lt;/atom:id&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="self" href="http://cmisexample.oasis-open.org/rep1/429a5c17-8457-4e3b-b41d-f0c95ed9699e/3"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="via" href="http://cmisexample.oasis-open.org/rep1/d4557ac3-587b-4811-9473-9bcd0ae3e462"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/d4557ac3-587b-4811-9473-9bcd0ae3e462/foldertree"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/d4557ac3-587b-4811-9473-9bcd0ae3e462/children"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/aeedaf34-fed4-4e5a-bb40-d9c4403372ff"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="via" href="http://cmisexample.oasis-open.org/rep1/429a5c17-8457-4e3b-b41d-f0c95ed9699e"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/429a5c17-8457-4e3b-b41d-f0c95ed9699e/foldertree"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/429a5c17-8457-4e3b-b41d-f0c95ed9699e/children"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/f8b2722f-387a-4399-839b-8a943cf323c6"/&gt;
     &lt;atom:entry&gt;
         &lt;atom:author&gt;
             &lt;atom:name&gt;Al Brown&lt;/atom:name&gt;
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b"/&gt;
-        &lt;atom:id&gt;urn:uuid:07a06185-1ea2-4517-8c4c-bbcc17793f0b&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e"/&gt;
+        &lt;atom:id&gt;urn:uuid:88905180-536d-4ecb-b5a9-39750dc14a0e&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Folder as Customer type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.218-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.421-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.218-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  07a06185-1ea2-4517-8c4c-bbcc17793f0b&lt;/atom:summary&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/up"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/children"/&gt;
-        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/tree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/foldertree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.421-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  88905180-536d-4ecb-b5a9-39750dc14a0e&lt;/atom:summary&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/up"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/children"/&gt;
+        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/tree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/foldertree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;07a06185-1ea2-4517-8c4c-bbcc17793f0b&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;88905180-536d-4ecb-b5a9-39750dc14a0e&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;customer&lt;/cmis:value&gt;
@@ -50,10 +50,10 @@
                     &lt;cmis:value&gt;CMIS Example Folder as Customer type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.218-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.421-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.218-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.421-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:folder&lt;/cmis:value&gt;
@@ -65,7 +65,7 @@
                     &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyId localName="rep-cmis:parentId" propertyDefinitionId="cmis:parentId"&gt;
-                    &lt;cmis:value&gt;07a06185-1ea2-4517-8c4c-bbcc17793f0bup&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;88905180-536d-4ecb-b5a9-39750dc14a0eup&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
             &lt;/cmis:properties&gt;
             &lt;cmis:allowableActions&gt;
@@ -94,43 +94,43 @@
                 &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
                 &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
             &lt;/atom:author&gt;
-            &lt;atom:updated&gt;2009-09-25T12:33:19.218-07:00&lt;/atom:updated&gt;
-            &lt;atom:id&gt;urn:uuid:481a5610-9b23-4e14-a9d1-2a6b6285e39a&lt;/atom:id&gt;
-            &lt;atom:link type="application/atom+xml;type=feed" rel="self" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/3"/&gt;
+            &lt;atom:updated&gt;2009-10-19T10:09:56.421-07:00&lt;/atom:updated&gt;
+            &lt;atom:id&gt;urn:uuid:74c8cfe6-34ef-4f77-bc5d-5c98ffe3a326&lt;/atom:id&gt;
+            &lt;atom:link type="application/atom+xml;type=feed" rel="self" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/3"/&gt;
             &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-            &lt;atom:link type="application/atom+xml;type=entry" rel="via" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b"/&gt;
-            &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/foldertree"/&gt;
-            &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/07a06185-1ea2-4517-8c4c-bbcc17793f0b/children"/&gt;
-            &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/d4557ac3-587b-4811-9473-9bcd0ae3e462"/&gt;
+            &lt;atom:link type="application/atom+xml;type=entry" rel="via" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e"/&gt;
+            &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/foldertree"/&gt;
+            &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/88905180-536d-4ecb-b5a9-39750dc14a0e/children"/&gt;
+            &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/429a5c17-8457-4e3b-b41d-f0c95ed9699e"/&gt;
             &lt;atom:entry&gt;
                 &lt;atom:author&gt;
                     &lt;atom:name&gt;Al Brown&lt;/atom:name&gt;
                     &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
                     &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
                 &lt;/atom:author&gt;
-                &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073"/&gt;
-                &lt;atom:id&gt;urn:uuid:866e0234-e242-4c35-ba48-cbf405ab3073&lt;/atom:id&gt;
+                &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac"/&gt;
+                &lt;atom:id&gt;urn:uuid:ba348ee2-7cf0-4fc0-a2e7-177d649b31ac&lt;/atom:id&gt;
                 &lt;atom:title type="text"&gt;CMIS Example Doc as Invoice type&lt;/atom:title&gt;
-                &lt;atom:updated&gt;2009-09-25T12:33:19.218-07:00&lt;/atom:updated&gt;
-                &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073"/&gt;
-                &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073"/&gt;
-                &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/allowableactions"/&gt;
-                &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/type"/&gt;
+                &lt;atom:updated&gt;2009-10-19T10:09:56.421-07:00&lt;/atom:updated&gt;
+                &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac"/&gt;
+                &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac"/&gt;
+                &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/allowableactions"/&gt;
+                &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/type"/&gt;
                 &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-                &lt;atom:published&gt;2009-09-25T12:33:19.234-07:00&lt;/atom:published&gt;
-                &lt;atom:summary type="html"&gt;HTML summary of Entry  866e0234-e242-4c35-ba48-cbf405ab3073&lt;/atom:summary&gt;
-                &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/edit-media"/&gt;
-                &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/alternate"/&gt;
-                &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/parents"/&gt;
-                &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/allversions"/&gt;
-                &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/latest"/&gt;
-                &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/relationships"/&gt;
-                &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/policies"/&gt;
-                &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/866e0234-e242-4c35-ba48-cbf405ab3073/acl"/&gt;
+                &lt;atom:published&gt;2009-10-19T10:09:56.421-07:00&lt;/atom:published&gt;
+                &lt;atom:summary type="html"&gt;HTML summary of Entry  ba348ee2-7cf0-4fc0-a2e7-177d649b31ac&lt;/atom:summary&gt;
+                &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/edit-media"/&gt;
+                &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/alternate"/&gt;
+                &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/parents"/&gt;
+                &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/allversions"/&gt;
+                &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/latest"/&gt;
+                &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/relationships"/&gt;
+                &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/policies"/&gt;
+                &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/ba348ee2-7cf0-4fc0-a2e7-177d649b31ac/acl"/&gt;
                 &lt;cmisra:object&gt;
                     &lt;cmis:properties&gt;
                         &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                            &lt;cmis:value&gt;866e0234-e242-4c35-ba48-cbf405ab3073&lt;/cmis:value&gt;
+                            &lt;cmis:value&gt;ba348ee2-7cf0-4fc0-a2e7-177d649b31ac&lt;/cmis:value&gt;
                         &lt;/cmis:propertyId&gt;
                         &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                             &lt;cmis:value&gt;invoice&lt;/cmis:value&gt;
@@ -139,10 +139,10 @@
                             &lt;cmis:value&gt;CMIS Example Doc as Invoice type&lt;/cmis:value&gt;
                         &lt;/cmis:propertyString&gt;
                         &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                            &lt;cmis:value&gt;2009-09-25T12:33:19.234-07:00&lt;/cmis:value&gt;
+                            &lt;cmis:value&gt;2009-10-19T10:09:56.421-07:00&lt;/cmis:value&gt;
                         &lt;/cmis:propertyDateTime&gt;
                         &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                            &lt;cmis:value&gt;2009-09-25T12:33:19.234-07:00&lt;/cmis:value&gt;
+                            &lt;cmis:value&gt;2009-10-19T10:09:56.421-07:00&lt;/cmis:value&gt;
                         &lt;/cmis:propertyDateTime&gt;
                         &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                             &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;
@@ -220,29 +220,29 @@
                     &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
                     &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
                 &lt;/atom:author&gt;
-                &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd"/&gt;
-                &lt;atom:id&gt;urn:uuid:5ec88876-14c2-49ea-849a-b9180e7732fd&lt;/atom:id&gt;
+                &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c"/&gt;
+                &lt;atom:id&gt;urn:uuid:bc252845-a3bf-48e8-ae1c-cbf953f1988c&lt;/atom:id&gt;
                 &lt;atom:title type="text"&gt;CMIS Example Doc as Invoice type&lt;/atom:title&gt;
-                &lt;atom:updated&gt;2009-09-25T12:33:19.234-07:00&lt;/atom:updated&gt;
-                &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd"/&gt;
-                &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd"/&gt;
-                &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/allowableactions"/&gt;
-                &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/type"/&gt;
+                &lt;atom:updated&gt;2009-10-19T10:09:56.421-07:00&lt;/atom:updated&gt;
+                &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c"/&gt;
+                &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c"/&gt;
+                &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/allowableactions"/&gt;
+                &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/type"/&gt;
                 &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-                &lt;atom:published&gt;2009-09-25T12:33:19.234-07:00&lt;/atom:published&gt;
-                &lt;atom:summary type="html"&gt;HTML summary of Entry  5ec88876-14c2-49ea-849a-b9180e7732fd&lt;/atom:summary&gt;
-                &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/edit-media"/&gt;
-                &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/alternate"/&gt;
-                &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/parents"/&gt;
-                &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/allversions"/&gt;
-                &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/latest"/&gt;
-                &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/relationships"/&gt;
-                &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/policies"/&gt;
-                &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/5ec88876-14c2-49ea-849a-b9180e7732fd/acl"/&gt;
+                &lt;atom:published&gt;2009-10-19T10:09:56.437-07:00&lt;/atom:published&gt;
+                &lt;atom:summary type="html"&gt;HTML summary of Entry  bc252845-a3bf-48e8-ae1c-cbf953f1988c&lt;/atom:summary&gt;
+                &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/edit-media"/&gt;
+                &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/alternate"/&gt;
+                &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/parents"/&gt;
+                &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/allversions"/&gt;
+                &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/latest"/&gt;
+                &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/relationships"/&gt;
+                &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/policies"/&gt;
+                &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/bc252845-a3bf-48e8-ae1c-cbf953f1988c/acl"/&gt;
                 &lt;cmisra:object&gt;
                     &lt;cmis:properties&gt;
                         &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                            &lt;cmis:value&gt;5ec88876-14c2-49ea-849a-b9180e7732fd&lt;/cmis:value&gt;
+                            &lt;cmis:value&gt;bc252845-a3bf-48e8-ae1c-cbf953f1988c&lt;/cmis:value&gt;
                         &lt;/cmis:propertyId&gt;
                         &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                             &lt;cmis:value&gt;invoice&lt;/cmis:value&gt;
@@ -251,10 +251,10 @@
                             &lt;cmis:value&gt;CMIS Example Doc as Invoice type&lt;/cmis:value&gt;
                         &lt;/cmis:propertyString&gt;
                         &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                            &lt;cmis:value&gt;2009-09-25T12:33:19.234-07:00&lt;/cmis:value&gt;
+                            &lt;cmis:value&gt;2009-10-19T10:09:56.437-07:00&lt;/cmis:value&gt;
                         &lt;/cmis:propertyDateTime&gt;
                         &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                            &lt;cmis:value&gt;2009-09-25T12:33:19.234-07:00&lt;/cmis:value&gt;
+                            &lt;cmis:value&gt;2009-10-19T10:09:56.437-07:00&lt;/cmis:value&gt;
                         &lt;/cmis:propertyDateTime&gt;
                         &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                             &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;
@@ -334,28 +334,28 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd"/&gt;
-        &lt;atom:id&gt;urn:uuid:42012e39-d6a4-41e2-bd3f-d12678d86ecd&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f"/&gt;
+        &lt;atom:id&gt;urn:uuid:91c05d31-9661-4e3d-9067-4fe9ff41561f&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Folder as Customer type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.234-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.437-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.234-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  42012e39-d6a4-41e2-bd3f-d12678d86ecd&lt;/atom:summary&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/up"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/children"/&gt;
-        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/tree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/foldertree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/42012e39-d6a4-41e2-bd3f-d12678d86ecd/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.437-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  91c05d31-9661-4e3d-9067-4fe9ff41561f&lt;/atom:summary&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/up"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/children"/&gt;
+        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/tree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/foldertree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/91c05d31-9661-4e3d-9067-4fe9ff41561f/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;42012e39-d6a4-41e2-bd3f-d12678d86ecd&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;91c05d31-9661-4e3d-9067-4fe9ff41561f&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;customer&lt;/cmis:value&gt;
@@ -364,10 +364,10 @@
                     &lt;cmis:value&gt;CMIS Example Folder as Customer type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.234-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.437-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.234-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.437-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:folder&lt;/cmis:value&gt;
@@ -379,7 +379,7 @@
                     &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyId localName="rep-cmis:parentId" propertyDefinitionId="cmis:parentId"&gt;
-                    &lt;cmis:value&gt;42012e39-d6a4-41e2-bd3f-d12678d86ecdup&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;91c05d31-9661-4e3d-9067-4fe9ff41561fup&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
             &lt;/cmis:properties&gt;
             &lt;cmis:allowableActions&gt;
@@ -408,29 +408,29 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d"/&gt;
-        &lt;atom:id&gt;urn:uuid:73782833-ca95-44c3-9328-c9ae77309b0d&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132"/&gt;
+        &lt;atom:id&gt;urn:uuid:1ef1ea6e-2955-4fc3-96c0-7993d0e66132&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Doc as Invoice type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.250-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.437-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.250-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  73782833-ca95-44c3-9328-c9ae77309b0d&lt;/atom:summary&gt;
-        &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/edit-media"/&gt;
-        &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/alternate"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/parents"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/allversions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/latest"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/73782833-ca95-44c3-9328-c9ae77309b0d/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.437-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  1ef1ea6e-2955-4fc3-96c0-7993d0e66132&lt;/atom:summary&gt;
+        &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/edit-media"/&gt;
+        &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/alternate"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/parents"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/allversions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/latest"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/1ef1ea6e-2955-4fc3-96c0-7993d0e66132/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;73782833-ca95-44c3-9328-c9ae77309b0d&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;1ef1ea6e-2955-4fc3-96c0-7993d0e66132&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;invoice&lt;/cmis:value&gt;
@@ -439,10 +439,10 @@
                     &lt;cmis:value&gt;CMIS Example Doc as Invoice type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.250-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.437-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.250-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.437-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderEntry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderEntry.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderEntry.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderEntry.xml Sun Oct 25 11:44:28 2009
@@ -5,28 +5,28 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2"/&gt;
-    &lt;atom:id&gt;urn:uuid:b990bf09-a9ee-4935-92b1-5c10edc73ab2&lt;/atom:id&gt;
+    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe"/&gt;
+    &lt;atom:id&gt;urn:uuid:04336c21-a3ed-43ed-9076-3ddd27380efe&lt;/atom:id&gt;
     &lt;atom:title type="text"&gt;CMIS Example Folder as Customer type&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:18.531-07:00&lt;/atom:updated&gt;
-    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2"/&gt;
-    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2"/&gt;
-    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/allowableactions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/type"/&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:55.656-07:00&lt;/atom:updated&gt;
+    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe"/&gt;
+    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe"/&gt;
+    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/allowableactions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/type"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:18.531-07:00&lt;/atom:published&gt;
-    &lt;atom:summary type="html"&gt;HTML summary of Entry  b990bf09-a9ee-4935-92b1-5c10edc73ab2&lt;/atom:summary&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/up"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/children"/&gt;
-    &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/tree"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/foldertree"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/relationships"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/policies"/&gt;
-    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/b990bf09-a9ee-4935-92b1-5c10edc73ab2/acl"/&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:55.656-07:00&lt;/atom:published&gt;
+    &lt;atom:summary type="html"&gt;HTML summary of Entry  04336c21-a3ed-43ed-9076-3ddd27380efe&lt;/atom:summary&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/up"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/children"/&gt;
+    &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/tree"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/foldertree"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/relationships"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/policies"/&gt;
+    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/04336c21-a3ed-43ed-9076-3ddd27380efe/acl"/&gt;
     &lt;cmisra:object&gt;
         &lt;cmis:properties&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                &lt;cmis:value&gt;b990bf09-a9ee-4935-92b1-5c10edc73ab2&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;04336c21-a3ed-43ed-9076-3ddd27380efe&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                 &lt;cmis:value&gt;customer&lt;/cmis:value&gt;
@@ -35,10 +35,10 @@
                 &lt;cmis:value&gt;CMIS Example Folder as Customer type&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.531-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.656-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.531-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.656-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                 &lt;cmis:value&gt;cmis:folder&lt;/cmis:value&gt;
@@ -50,7 +50,7 @@
                 &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyId localName="rep-cmis:parentId" propertyDefinitionId="cmis:parentId"&gt;
-                &lt;cmis:value&gt;b990bf09-a9ee-4935-92b1-5c10edc73ab2up&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;04336c21-a3ed-43ed-9076-3ddd27380efeup&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
         &lt;/cmis:properties&gt;
         &lt;cmis:allowableActions&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/PolicyEntry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/PolicyEntry.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/PolicyEntry.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/PolicyEntry.xml Sun Oct 25 11:44:28 2009
@@ -5,24 +5,24 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/ccd52e9a-3a93-484c-806d-d9ff8451f693"/&gt;
-    &lt;atom:id&gt;urn:uuid:ccd52e9a-3a93-484c-806d-d9ff8451f693&lt;/atom:id&gt;
+    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/b1307fec-85a0-454d-978b-edc204f83ef5"/&gt;
+    &lt;atom:id&gt;urn:uuid:b1307fec-85a0-454d-978b-edc204f83ef5&lt;/atom:id&gt;
     &lt;atom:title type="text"&gt;CMIS Example Policy&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:18.671-07:00&lt;/atom:updated&gt;
-    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/ccd52e9a-3a93-484c-806d-d9ff8451f693"/&gt;
-    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/ccd52e9a-3a93-484c-806d-d9ff8451f693"/&gt;
-    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/ccd52e9a-3a93-484c-806d-d9ff8451f693/allowableactions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/ccd52e9a-3a93-484c-806d-d9ff8451f693/type"/&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:55.796-07:00&lt;/atom:updated&gt;
+    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/b1307fec-85a0-454d-978b-edc204f83ef5"/&gt;
+    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/b1307fec-85a0-454d-978b-edc204f83ef5"/&gt;
+    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/b1307fec-85a0-454d-978b-edc204f83ef5/allowableactions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/b1307fec-85a0-454d-978b-edc204f83ef5/type"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:18.671-07:00&lt;/atom:published&gt;
-    &lt;atom:summary type="html"&gt;HTML summary of Entry  ccd52e9a-3a93-484c-806d-d9ff8451f693&lt;/atom:summary&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/ccd52e9a-3a93-484c-806d-d9ff8451f693/parents"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/ccd52e9a-3a93-484c-806d-d9ff8451f693/relationships"/&gt;
-    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/ccd52e9a-3a93-484c-806d-d9ff8451f693/acl"/&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:55.796-07:00&lt;/atom:published&gt;
+    &lt;atom:summary type="html"&gt;HTML summary of Entry  b1307fec-85a0-454d-978b-edc204f83ef5&lt;/atom:summary&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/b1307fec-85a0-454d-978b-edc204f83ef5/parents"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/b1307fec-85a0-454d-978b-edc204f83ef5/relationships"/&gt;
+    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/b1307fec-85a0-454d-978b-edc204f83ef5/acl"/&gt;
     &lt;cmisra:object&gt;
         &lt;cmis:properties&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                &lt;cmis:value&gt;ccd52e9a-3a93-484c-806d-d9ff8451f693&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;b1307fec-85a0-454d-978b-edc204f83ef5&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                 &lt;cmis:value&gt;policy&lt;/cmis:value&gt;
@@ -31,10 +31,10 @@
                 &lt;cmis:value&gt;CMIS Example Policy&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.671-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.796-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.671-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.796-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                 &lt;cmis:value&gt;cmis:policy&lt;/cmis:value&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Query.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Query.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Query.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Query.xml Sun Oct 25 11:44:28 2009
@@ -1,6 +1,6 @@
 &lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt;
 &lt;cmis:query xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/" xmlns:cmism="http://docs.oasis-open.org/ns/cmis/messaging/200908/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:app="http://www.w3.org/2007/app" xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"&gt;
-    &lt;cmis:statement&gt;SELECT * FROM Document&lt;/cmis:statement&gt;
+    &lt;cmis:statement&gt;SELECT * FROM cmis:document&lt;/cmis:statement&gt;
     &lt;cmis:searchAllVersions&gt;true&lt;/cmis:searchAllVersions&gt;
     &lt;cmis:includeAllowableActions&gt;false&lt;/cmis:includeAllowableActions&gt;
     &lt;cmis:includeRelationships&gt;none&lt;/cmis:includeRelationships&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/RelationshipEntry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/RelationshipEntry.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/RelationshipEntry.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/RelationshipEntry.xml Sun Oct 25 11:44:28 2009
@@ -5,25 +5,25 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae"/&gt;
-    &lt;atom:id&gt;urn:uuid:f1f9d566-55a8-4b9e-ac41-c652f97700ae&lt;/atom:id&gt;
+    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67"/&gt;
+    &lt;atom:id&gt;urn:uuid:63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67&lt;/atom:id&gt;
     &lt;atom:title type="text"&gt;CMIS Example Relationship as Compound Document type&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:18.781-07:00&lt;/atom:updated&gt;
-    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae"/&gt;
-    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae"/&gt;
-    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae/allowableactions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae/type"/&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:55.921-07:00&lt;/atom:updated&gt;
+    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67"/&gt;
+    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67"/&gt;
+    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67/allowableactions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67/type"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:18.781-07:00&lt;/atom:published&gt;
-    &lt;atom:summary type="html"&gt;HTML summary of Entry  f1f9d566-55a8-4b9e-ac41-c652f97700ae&lt;/atom:summary&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="http://docs.oasis-open.org/ns/cmis/link/200908/source" href="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae/source"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="http://docs.oasis-open.org/ns/cmis/link/200908/target" href="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae/target"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae/policies"/&gt;
-    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/f1f9d566-55a8-4b9e-ac41-c652f97700ae/acl"/&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:55.921-07:00&lt;/atom:published&gt;
+    &lt;atom:summary type="html"&gt;HTML summary of Entry  63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67&lt;/atom:summary&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="http://docs.oasis-open.org/ns/cmis/link/200908/source" href="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67/source"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="http://docs.oasis-open.org/ns/cmis/link/200908/target" href="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67/target"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67/policies"/&gt;
+    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67/acl"/&gt;
     &lt;cmisra:object&gt;
         &lt;cmis:properties&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                &lt;cmis:value&gt;f1f9d566-55a8-4b9e-ac41-c652f97700ae&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;63f6c4b1-8d04-4a1c-9246-39b8fe0b1d67&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                 &lt;cmis:value&gt;compounddocument&lt;/cmis:value&gt;
@@ -32,10 +32,10 @@
                 &lt;cmis:value&gt;CMIS Example Relationship as Compound Document type&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.781-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.921-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.781-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.921-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                 &lt;cmis:value&gt;cmis:relationship&lt;/cmis:value&gt;
@@ -47,10 +47,10 @@
                 &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyId localName="rep-cmis:sourceId" propertyDefinitionId="cmis:sourceId"&gt;
-                &lt;cmis:value&gt;3ca9fa87-8c9c-4fc0-bd7d-1374c55caaa6&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;31b0149a-bda0-4ea5-ad5c-1bcff0d3a2b8&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
             &lt;cmis:propertyId localName="rep-cmis:targetId" propertyDefinitionId="cmis:targetId"&gt;
-                &lt;cmis:value&gt;f05b5fe3-428e-44b9-a972-9e69950797dc&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;58586ecd-f957-4628-852e-99effb2f8bea&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
         &lt;/cmis:properties&gt;
         &lt;cmis:allowableActions&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Service.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Service.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Service.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Service.xml Sun Oct 25 11:44:28 2009
@@ -39,7 +39,7 @@
             &lt;cmis:productName&gt;CMIS Prototype for VendorX&lt;/cmis:productName&gt;
             &lt;cmis:productVersion&gt;0.62&lt;/cmis:productVersion&gt;
             &lt;cmis:rootFolderId&gt;rootfolder&lt;/cmis:rootFolderId&gt;
-            &lt;cmis:latestChangeLogToken&gt;token-Fri Sep 25 12:33:19 PDT 2009&lt;/cmis:latestChangeLogToken&gt;
+            &lt;cmis:latestChangeLogToken&gt;token-Mon Oct 19 10:09:57 PDT 2009&lt;/cmis:latestChangeLogToken&gt;
             &lt;cmis:capabilities&gt;
                 &lt;cmis:capabilityACL&gt;manage&lt;/cmis:capabilityACL&gt;
                 &lt;cmis:capabilityAllVersionsSearchable&gt;true&lt;/cmis:capabilityAllVersionsSearchable&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeChildren.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeChildren.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeChildren.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeChildren.xml Sun Oct 25 11:44:28 2009
@@ -6,13 +6,13 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:updated&gt;
-    &lt;atom:id&gt;urn:uuid:c519c27c-c3e9-49a6-be2e-894e74336b2c&lt;/atom:id&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:updated&gt;
+    &lt;atom:id&gt;urn:uuid:25a91820-3244-4f1e-b27d-30b7d14191f4&lt;/atom:id&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="self" href="http://cmisexample.oasis-open.org/rep1/type1feed/3"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
     &lt;atom:link type="application/atom+xml;type=entry" rel="via" href="http://cmisexample.oasis-open.org/rep1/type1feed"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type1feed/tree"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/e70ea6fa-ef2c-485c-8863-3b40ee73a8de"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/f220dd26-0c84-497b-ac7f-2f20d629af65"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="first" href="http://cmisexample.oasis-open.org/rep1/type1feed/first"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="next" href="http://cmisexample.oasis-open.org/rep1/type1feed/4"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="previous" href="http://cmisexample.oasis-open.org/rep1/type1feed/2"/&gt;
@@ -35,11 +35,11 @@
         &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/parent"/&gt;
         &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/children/flat"/&gt;
         &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/children/tree"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:published&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:published&gt;
         &lt;atom:summary type="html"&gt;HTML summary of Type Definition  document-invoice&lt;/atom:summary&gt;
         &lt;atom:title type="text"&gt;Type Definition - document-invoice&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:updated&gt;
-        &lt;app:edited&gt;2009-09-25T12:33:19.531-07:00&lt;/app:edited&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:updated&gt;
+        &lt;app:edited&gt;2009-10-19T10:09:56.765-07:00&lt;/app:edited&gt;
         &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeDocumentDefinitionType" cmisra:id="document-invoice"&gt;
             &lt;cmis:id&gt;dtdocument-invoice&lt;/cmis:id&gt;
             &lt;cmis:localName&gt;myrepname-document-invoice&lt;/cmis:localName&gt;
@@ -74,11 +74,11 @@
         &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/parent"/&gt;
         &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/children/flat"/&gt;
         &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/children/tree"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:published&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:published&gt;
         &lt;atom:summary type="html"&gt;HTML summary of Type Definition  folder-invoice&lt;/atom:summary&gt;
         &lt;atom:title type="text"&gt;Type Definition - folder-invoice&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:updated&gt;
-        &lt;app:edited&gt;2009-09-25T12:33:19.531-07:00&lt;/app:edited&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:updated&gt;
+        &lt;app:edited&gt;2009-10-19T10:09:56.765-07:00&lt;/app:edited&gt;
         &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeFolderDefinitionType" cmisra:id="folder-invoice"&gt;
             &lt;cmis:id&gt;dtfolder-invoice&lt;/cmis:id&gt;
             &lt;cmis:localName&gt;myrepname-folder-invoice&lt;/cmis:localName&gt;
@@ -111,11 +111,11 @@
         &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/parent"/&gt;
         &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/children/flat"/&gt;
         &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/children/tree"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:published&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:published&gt;
         &lt;atom:summary type="html"&gt;HTML summary of Type Definition  customer-relationship&lt;/atom:summary&gt;
         &lt;atom:title type="text"&gt;Type Definition - customer-relationship&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:updated&gt;
-        &lt;app:edited&gt;2009-09-25T12:33:19.531-07:00&lt;/app:edited&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:updated&gt;
+        &lt;app:edited&gt;2009-10-19T10:09:56.765-07:00&lt;/app:edited&gt;
         &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeRelationshipDefinitionType" cmisra:id="customer-relationship"&gt;
             &lt;cmis:id&gt;dtcustomer-relationship&lt;/cmis:id&gt;
             &lt;cmis:localName&gt;myrepname-customer-relationship&lt;/cmis:localName&gt;
@@ -151,11 +151,11 @@
         &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/parent"/&gt;
         &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/children/flat"/&gt;
         &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/children/tree"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:published&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:published&gt;
         &lt;atom:summary type="html"&gt;HTML summary of Type Definition  security-policy&lt;/atom:summary&gt;
         &lt;atom:title type="text"&gt;Type Definition - security-policy&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.531-07:00&lt;/atom:updated&gt;
-        &lt;app:edited&gt;2009-09-25T12:33:19.531-07:00&lt;/app:edited&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.765-07:00&lt;/atom:updated&gt;
+        &lt;app:edited&gt;2009-10-19T10:09:56.765-07:00&lt;/app:edited&gt;
         &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypePolicyDefinitionType" cmisra:id="security-policy"&gt;
             &lt;cmis:id&gt;dtsecurity-policy&lt;/cmis:id&gt;
             &lt;cmis:localName&gt;myrepname-security-policy&lt;/cmis:localName&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWith.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWith.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWith.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWith.xml Sun Oct 25 11:44:28 2009
@@ -13,11 +13,11 @@
     &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/parent"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/children/flat"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/children/tree"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:20.546-07:00&lt;/atom:published&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:57.921-07:00&lt;/atom:published&gt;
     &lt;atom:summary type="html"&gt;HTML summary of Type Definition  document-invoice&lt;/atom:summary&gt;
     &lt;atom:title type="text"&gt;Type Definition - document-invoice&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:20.546-07:00&lt;/atom:updated&gt;
-    &lt;app:edited&gt;2009-09-25T12:33:20.546-07:00&lt;/app:edited&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:57.937-07:00&lt;/atom:updated&gt;
+    &lt;app:edited&gt;2009-10-19T10:09:57.937-07:00&lt;/app:edited&gt;
     &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeDocumentDefinitionType" cmisra:id="document-invoice"&gt;
         &lt;cmis:id&gt;dtdocument-invoice&lt;/cmis:id&gt;
         &lt;cmis:localName&gt;myrepname-document-invoice&lt;/cmis:localName&gt;
@@ -135,6 +135,7 @@
             &lt;cmis:queryable&gt;true&lt;/cmis:queryable&gt;
             &lt;cmis:orderable&gt;true&lt;/cmis:orderable&gt;
             &lt;cmis:openChoice&gt;false&lt;/cmis:openChoice&gt;
+            &lt;cmis:resolution&gt;time&lt;/cmis:resolution&gt;
         &lt;/cmis:propertyDateTimeDefinition&gt;
         &lt;cmis:propertyStringDefinition&gt;
             &lt;cmis:id&gt;cmis:lastModifiedBy&lt;/cmis:id&gt;
@@ -164,6 +165,7 @@
             &lt;cmis:queryable&gt;true&lt;/cmis:queryable&gt;
             &lt;cmis:orderable&gt;true&lt;/cmis:orderable&gt;
             &lt;cmis:openChoice&gt;false&lt;/cmis:openChoice&gt;
+            &lt;cmis:resolution&gt;time&lt;/cmis:resolution&gt;
         &lt;/cmis:propertyDateTimeDefinition&gt;
         &lt;cmis:propertyStringDefinition&gt;
             &lt;cmis:id&gt;cmis:changeToken&lt;/cmis:id&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWithout.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWithout.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWithout.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWithout.xml Sun Oct 25 11:44:28 2009
@@ -13,11 +13,11 @@
     &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/parent"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/children/flat"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/document-invoice/children/tree"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:20.453-07:00&lt;/atom:published&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:57.828-07:00&lt;/atom:published&gt;
     &lt;atom:summary type="html"&gt;HTML summary of Type Definition  document-invoice&lt;/atom:summary&gt;
     &lt;atom:title type="text"&gt;Type Definition - document-invoice&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:20.453-07:00&lt;/atom:updated&gt;
-    &lt;app:edited&gt;2009-09-25T12:33:20.453-07:00&lt;/app:edited&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:57.828-07:00&lt;/atom:updated&gt;
+    &lt;app:edited&gt;2009-10-19T10:09:57.828-07:00&lt;/app:edited&gt;
     &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeDocumentDefinitionType" cmisra:id="document-invoice"&gt;
         &lt;cmis:id&gt;dtdocument-invoice&lt;/cmis:id&gt;
         &lt;cmis:localName&gt;myrepname-document-invoice&lt;/cmis:localName&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWith.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWith.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWith.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWith.xml Sun Oct 25 11:44:28 2009
@@ -13,11 +13,11 @@
     &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/parent"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/children/flat"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/children/tree"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:20.859-07:00&lt;/atom:published&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:58.265-07:00&lt;/atom:published&gt;
     &lt;atom:summary type="html"&gt;HTML summary of Type Definition  folder-invoice&lt;/atom:summary&gt;
     &lt;atom:title type="text"&gt;Type Definition - folder-invoice&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:20.859-07:00&lt;/atom:updated&gt;
-    &lt;app:edited&gt;2009-09-25T12:33:20.859-07:00&lt;/app:edited&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:58.265-07:00&lt;/atom:updated&gt;
+    &lt;app:edited&gt;2009-10-19T10:09:58.265-07:00&lt;/app:edited&gt;
     &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeFolderDefinitionType" cmisra:id="folder-invoice"&gt;
         &lt;cmis:id&gt;dtfolder-invoice&lt;/cmis:id&gt;
         &lt;cmis:localName&gt;myrepname-folder-invoice&lt;/cmis:localName&gt;
@@ -135,6 +135,7 @@
             &lt;cmis:queryable&gt;true&lt;/cmis:queryable&gt;
             &lt;cmis:orderable&gt;true&lt;/cmis:orderable&gt;
             &lt;cmis:openChoice&gt;false&lt;/cmis:openChoice&gt;
+            &lt;cmis:resolution&gt;time&lt;/cmis:resolution&gt;
         &lt;/cmis:propertyDateTimeDefinition&gt;
         &lt;cmis:propertyStringDefinition&gt;
             &lt;cmis:id&gt;cmis:lastModifiedBy&lt;/cmis:id&gt;
@@ -164,6 +165,7 @@
             &lt;cmis:queryable&gt;true&lt;/cmis:queryable&gt;
             &lt;cmis:orderable&gt;true&lt;/cmis:orderable&gt;
             &lt;cmis:openChoice&gt;false&lt;/cmis:openChoice&gt;
+            &lt;cmis:resolution&gt;time&lt;/cmis:resolution&gt;
         &lt;/cmis:propertyDateTimeDefinition&gt;
         &lt;cmis:propertyStringDefinition&gt;
             &lt;cmis:id&gt;cmis:changeToken&lt;/cmis:id&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWithout.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWithout.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWithout.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWithout.xml Sun Oct 25 11:44:28 2009
@@ -13,11 +13,11 @@
     &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/parent"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/children/flat"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/folder-invoice/children/tree"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:20.656-07:00&lt;/atom:published&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:58.046-07:00&lt;/atom:published&gt;
     &lt;atom:summary type="html"&gt;HTML summary of Type Definition  folder-invoice&lt;/atom:summary&gt;
     &lt;atom:title type="text"&gt;Type Definition - folder-invoice&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:20.656-07:00&lt;/atom:updated&gt;
-    &lt;app:edited&gt;2009-09-25T12:33:20.656-07:00&lt;/app:edited&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:58.046-07:00&lt;/atom:updated&gt;
+    &lt;app:edited&gt;2009-10-19T10:09:58.046-07:00&lt;/app:edited&gt;
     &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeFolderDefinitionType" cmisra:id="folder-invoice"&gt;
         &lt;cmis:id&gt;dtfolder-invoice&lt;/cmis:id&gt;
         &lt;cmis:localName&gt;myrepname-folder-invoice&lt;/cmis:localName&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWith.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWith.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWith.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWith.xml Sun Oct 25 11:44:28 2009
@@ -13,11 +13,11 @@
     &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/parent"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/children/flat"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/children/tree"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:21.343-07:00&lt;/atom:published&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:58.781-07:00&lt;/atom:published&gt;
     &lt;atom:summary type="html"&gt;HTML summary of Type Definition  security-policy&lt;/atom:summary&gt;
     &lt;atom:title type="text"&gt;Type Definition - security-policy&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:21.343-07:00&lt;/atom:updated&gt;
-    &lt;app:edited&gt;2009-09-25T12:33:21.343-07:00&lt;/app:edited&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:58.781-07:00&lt;/atom:updated&gt;
+    &lt;app:edited&gt;2009-10-19T10:09:58.781-07:00&lt;/app:edited&gt;
     &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypePolicyDefinitionType" cmisra:id="security-policy"&gt;
         &lt;cmis:id&gt;dtsecurity-policy&lt;/cmis:id&gt;
         &lt;cmis:localName&gt;myrepname-security-policy&lt;/cmis:localName&gt;
@@ -135,6 +135,7 @@
             &lt;cmis:queryable&gt;true&lt;/cmis:queryable&gt;
             &lt;cmis:orderable&gt;true&lt;/cmis:orderable&gt;
             &lt;cmis:openChoice&gt;false&lt;/cmis:openChoice&gt;
+            &lt;cmis:resolution&gt;time&lt;/cmis:resolution&gt;
         &lt;/cmis:propertyDateTimeDefinition&gt;
         &lt;cmis:propertyStringDefinition&gt;
             &lt;cmis:id&gt;cmis:lastModifiedBy&lt;/cmis:id&gt;
@@ -164,6 +165,7 @@
             &lt;cmis:queryable&gt;true&lt;/cmis:queryable&gt;
             &lt;cmis:orderable&gt;true&lt;/cmis:orderable&gt;
             &lt;cmis:openChoice&gt;false&lt;/cmis:openChoice&gt;
+            &lt;cmis:resolution&gt;time&lt;/cmis:resolution&gt;
         &lt;/cmis:propertyDateTimeDefinition&gt;
         &lt;cmis:propertyStringDefinition&gt;
             &lt;cmis:id&gt;cmis:changeToken&lt;/cmis:id&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWithout.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWithout.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWithout.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWithout.xml Sun Oct 25 11:44:28 2009
@@ -13,11 +13,11 @@
     &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/parent"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/children/flat"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/security-policy/children/tree"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:21.250-07:00&lt;/atom:published&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:58.687-07:00&lt;/atom:published&gt;
     &lt;atom:summary type="html"&gt;HTML summary of Type Definition  security-policy&lt;/atom:summary&gt;
     &lt;atom:title type="text"&gt;Type Definition - security-policy&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:21.250-07:00&lt;/atom:updated&gt;
-    &lt;app:edited&gt;2009-09-25T12:33:21.265-07:00&lt;/app:edited&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:58.687-07:00&lt;/atom:updated&gt;
+    &lt;app:edited&gt;2009-10-19T10:09:58.687-07:00&lt;/app:edited&gt;
     &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypePolicyDefinitionType" cmisra:id="security-policy"&gt;
         &lt;cmis:id&gt;dtsecurity-policy&lt;/cmis:id&gt;
         &lt;cmis:localName&gt;myrepname-security-policy&lt;/cmis:localName&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWith.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWith.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWith.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWith.xml Sun Oct 25 11:44:28 2009
@@ -13,11 +13,11 @@
     &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/parent"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/children/flat"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/children/tree"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:21.062-07:00&lt;/atom:published&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:58.468-07:00&lt;/atom:published&gt;
     &lt;atom:summary type="html"&gt;HTML summary of Type Definition  customer-relationship&lt;/atom:summary&gt;
     &lt;atom:title type="text"&gt;Type Definition - customer-relationship&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:21.062-07:00&lt;/atom:updated&gt;
-    &lt;app:edited&gt;2009-09-25T12:33:21.062-07:00&lt;/app:edited&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:58.468-07:00&lt;/atom:updated&gt;
+    &lt;app:edited&gt;2009-10-19T10:09:58.468-07:00&lt;/app:edited&gt;
     &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeRelationshipDefinitionType" cmisra:id="customer-relationship"&gt;
         &lt;cmis:id&gt;dtcustomer-relationship&lt;/cmis:id&gt;
         &lt;cmis:localName&gt;myrepname-customer-relationship&lt;/cmis:localName&gt;
@@ -135,6 +135,7 @@
             &lt;cmis:queryable&gt;true&lt;/cmis:queryable&gt;
             &lt;cmis:orderable&gt;true&lt;/cmis:orderable&gt;
             &lt;cmis:openChoice&gt;false&lt;/cmis:openChoice&gt;
+            &lt;cmis:resolution&gt;time&lt;/cmis:resolution&gt;
         &lt;/cmis:propertyDateTimeDefinition&gt;
         &lt;cmis:propertyStringDefinition&gt;
             &lt;cmis:id&gt;cmis:lastModifiedBy&lt;/cmis:id&gt;
@@ -164,6 +165,7 @@
             &lt;cmis:queryable&gt;true&lt;/cmis:queryable&gt;
             &lt;cmis:orderable&gt;true&lt;/cmis:orderable&gt;
             &lt;cmis:openChoice&gt;false&lt;/cmis:openChoice&gt;
+            &lt;cmis:resolution&gt;time&lt;/cmis:resolution&gt;
         &lt;/cmis:propertyDateTimeDefinition&gt;
         &lt;cmis:propertyStringDefinition&gt;
             &lt;cmis:id&gt;cmis:changeToken&lt;/cmis:id&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r829546 [1/3] - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src: main/resources/org/apache/chemistry/tck/atompub/xsd/ test/resources/org/apache/chemistry/tck/atompub/examples/</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091025114430.314562388987@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091025114430-314562388987@eris-apache-org%3e</id>
<updated>2009-10-25T11:44:29Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Sun Oct 25 11:44:28 2009
New Revision: 829546

URL: http://svn.apache.org/viewvc?rev=829546&amp;view=rev
Log:
Update AtomPub TCK to v1.0cd04 XSDs and examples.

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/APP.xsd
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/ATOM.xsd
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-Core.xsd
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-RestAtom.xsd
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/xml.xsd
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/ChangeLog.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryPWC.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryWithChanges.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderChildren.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderDescendants.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderEntry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/PolicyEntry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Query.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/RelationshipEntry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/Service.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeChildren.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWith.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeDocumentWithout.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWith.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeFolderWithout.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWith.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypePolicyWithout.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWith.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWithout.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/APP.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/APP.xsd?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/APP.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/APP.xsd Sun Oct 25 11:44:28 2009
@@ -5,7 +5,7 @@
 	--&gt;
 	&lt;!--
 		$Revision: 34 $
-		$Date: 2009-08-07 23:20:47 +0100 (Fri, 07 Aug 2009) $
+		$Date: 2009-08-07 15:20:47 -0700 (Fri, 07 Aug 2009) $
 		$Author: albertcbrown $
 		$HeadURL: http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/APP.xsd $
 	--&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/ATOM.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/ATOM.xsd?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/ATOM.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/ATOM.xsd Sun Oct 25 11:44:28 2009
@@ -5,7 +5,7 @@
 	--&gt;
 	&lt;!--
 		$Revision: 34 $
-		$Date: 2009-08-07 23:20:47 +0100 (Fri, 07 Aug 2009) $
+		$Date: 2009-08-07 15:20:47 -0700 (Fri, 07 Aug 2009) $
 		$Author: albertcbrown $
 		$HeadURL: http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/ATOM.xsd $
 	--&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-Core.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-Core.xsd?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-Core.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-Core.xsd Sun Oct 25 11:44:28 2009
@@ -1,6 +1,6 @@
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
 	&lt;!--
-		$Revision: 102 $ $Date: 2009-09-21 19:39:42 +0100 (Mon, 21 Sep 2009) $
+		$Revision: 137 $ $Date: 2009-10-21 15:50:27 -0700 (Wed, 21 Oct 2009) $
 		$Author: albertcbrown $ $HeadURL:
 		http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/CMIS-Core.xsd
 		$
@@ -10,10 +10,7 @@
 	xmlns:atom="http://www.w3.org/2005/Atom" xmlns:xhtml="http://www.w3.org/1999/xhtml"
 	xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
 	jaxb:extensionBindingPrefixes="xjc" jaxb:version="2.1"
-	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/" version="0.63"&gt;
-
-	&lt;xs:import namespace="http://www.w3.org/XML/1998/namespace"
-		schemaLocation="xml.xsd" /&gt;
+	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/" version="1.0"&gt;
 
 	&lt;!--  enums --&gt;
 	&lt;xs:simpleType name="enumDecimalPrecision"&gt;
@@ -44,6 +41,13 @@
 			&lt;xs:enumeration value="oncreate" /&gt;
 		&lt;/xs:restriction&gt;
 	&lt;/xs:simpleType&gt;
+		&lt;xs:simpleType name="enumDateTimeResolution"&gt;
+		&lt;xs:restriction base="xs:string"&gt;
+			&lt;xs:enumeration value="year" /&gt;
+			&lt;xs:enumeration value="date" /&gt;
+			&lt;xs:enumeration value="time" /&gt;
+		&lt;/xs:restriction&gt;
+	&lt;/xs:simpleType&gt;
 	&lt;xs:simpleType name="enumPropertyType"&gt;
 		&lt;xs:restriction base="xs:string"&gt;
 			&lt;xs:enumeration value="boolean" /&gt;
@@ -490,6 +494,8 @@
 				minOccurs="0" maxOccurs="1" /&gt;
 			&lt;xs:element name="canUpdateProperties" type="xs:boolean"
 				minOccurs="0" maxOccurs="1" /&gt;
+			&lt;xs:element name="canGetFolderTree" type="xs:boolean"
+				minOccurs="0" maxOccurs="1" /&gt;
 			&lt;xs:element name="canGetProperties" type="xs:boolean"
 				minOccurs="0" maxOccurs="1" /&gt;
 			&lt;xs:element name="canGetObjectRelationships" type="xs:boolean"
@@ -660,6 +666,7 @@
 				&lt;xs:sequence&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="1" name="defaultValue"
 						type="cmis:cmisPropertyDateTime" /&gt;
+					&lt;xs:element minOccurs="0" maxOccurs="1" name="resolution" type="cmis:enumDateTimeResolution" /&gt;
 					&lt;xs:element minOccurs="0" maxOccurs="unbounded" name="choice"
 						type="cmis:cmisChoiceDateTime" /&gt;
 
@@ -832,9 +839,9 @@
 			&lt;xs:extension base="cmis:cmisTypeDefinitionType"&gt;
 				&lt;xs:sequence&gt;
 					&lt;xs:element name="allowedSourceTypes" type="xs:string"
-						minOccurs="1" maxOccurs="unbounded" /&gt;
+						minOccurs="0" maxOccurs="unbounded" /&gt;
 					&lt;xs:element name="allowedTargetTypes" type="xs:string"
-						minOccurs="1" maxOccurs="unbounded" /&gt;
+						minOccurs="0" maxOccurs="unbounded" /&gt;
 				&lt;/xs:sequence&gt;
 			&lt;/xs:extension&gt;
 		&lt;/xs:complexContent&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-RestAtom.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-RestAtom.xsd?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-RestAtom.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/CMIS-RestAtom.xsd Sun Oct 25 11:44:28 2009
@@ -1,6 +1,6 @@
 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
 	&lt;!--
-		$Revision: 122 $ $Date: 2009-09-25 20:25:29 +0100 (Fri, 25 Sep 2009) $
+		$Revision: 135 $ $Date: 2009-10-19 10:59:00 -0700 (Mon, 19 Oct 2009) $
 		$Author: albertcbrown $ $HeadURL:
 		http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/CMIS-RestAtom.xsd
 		$
@@ -13,7 +13,8 @@
 	jaxb:extensionBindingPrefixes="xjc" jaxb:version="2.1"
 	xmlns:cmis="http://docs.oasis-open.org/ns/cmis/core/200908/"
 	xmlns:cmisra="http://docs.oasis-open.org/ns/cmis/restatom/200908/"
-	version="0.63"&gt;
+	version="1.0"&gt;
+	
 	&lt;xs:import namespace="http://docs.oasis-open.org/ns/cmis/core/200908/"
 		schemaLocation="CMIS-Core.xsd" /&gt;
 	&lt;xs:import namespace="http://www.w3.org/2005/Atom"
@@ -377,6 +378,8 @@
 			&lt;xs:enumeration value="includeACL" /&gt;
 			&lt;xs:enumeration value="includeAllowableActions" /&gt;
 			&lt;xs:enumeration value="includeProperties" /&gt;
+			&lt;xs:enumeration value="includePathSegment" /&gt;
+			&lt;xs:enumeration value="includeRelativePathSegment" /&gt;
 			&lt;xs:enumeration value="includePropertyDefinitions" /&gt;
 			&lt;xs:enumeration value="includePolicyIds" /&gt;
 			&lt;xs:enumeration value="includeRelationships" /&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/xml.xsd
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/xml.xsd?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/xml.xsd (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/xsd/xml.xsd Sun Oct 25 11:44:28 2009
@@ -2,7 +2,7 @@
 
 	&lt;!--
 		$Revision: 34 $
-		$Date: 2009-08-07 23:20:47 +0100 (Fri, 07 Aug 2009) $
+		$Date: 2009-08-07 15:20:47 -0700 (Fri, 07 Aug 2009) $
 		$Author: albertcbrown $
 		$HeadURL: http://tools.oasis-open.org/version-control/svn/cmis/trunk/SchemaProject/schema/xml.xsd $
 	--&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/ChangeLog.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/ChangeLog.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/ChangeLog.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/ChangeLog.xml Sun Oct 25 11:44:28 2009
@@ -6,8 +6,8 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:20.046-07:00&lt;/atom:updated&gt;
-    &lt;atom:id&gt;urn:uuid:b939566b-2a18-43ca-a413-bae67270cdfb&lt;/atom:id&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:57.375-07:00&lt;/atom:updated&gt;
+    &lt;atom:id&gt;urn:uuid:d2d2ec29-c06f-4c01-b7ae-d32d3f0dec2d&lt;/atom:id&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="self" href="http://cmisexample.oasis-open.org/rep1/folder1feed/3"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="first" href="http://cmisexample.oasis-open.org/rep1/folder1feed/first"/&gt;
@@ -20,28 +20,28 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab"/&gt;
-        &lt;atom:id&gt;urn:uuid:a781a714-9a8c-4924-921b-01ea8df5f3ab&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3"/&gt;
+        &lt;atom:id&gt;urn:uuid:c04c8271-e725-4f63-a8ee-c4216279cae3&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Folder as Customer type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:20.046-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:57.375-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:20.062-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  a781a714-9a8c-4924-921b-01ea8df5f3ab&lt;/atom:summary&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/up"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/children"/&gt;
-        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/tree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/foldertree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/a781a714-9a8c-4924-921b-01ea8df5f3ab/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:57.375-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  c04c8271-e725-4f63-a8ee-c4216279cae3&lt;/atom:summary&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/up"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/children"/&gt;
+        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/tree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/foldertree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/c04c8271-e725-4f63-a8ee-c4216279cae3/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;a781a714-9a8c-4924-921b-01ea8df5f3ab&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;c04c8271-e725-4f63-a8ee-c4216279cae3&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;customer&lt;/cmis:value&gt;
@@ -50,10 +50,10 @@
                     &lt;cmis:value&gt;CMIS Example Folder as Customer type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:20.062-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:57.375-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:20.062-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:57.375-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:folder&lt;/cmis:value&gt;
@@ -65,7 +65,7 @@
                     &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyId localName="rep-cmis:parentId" propertyDefinitionId="cmis:parentId"&gt;
-                    &lt;cmis:value&gt;a781a714-9a8c-4924-921b-01ea8df5f3abup&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;c04c8271-e725-4f63-a8ee-c4216279cae3up&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
             &lt;/cmis:properties&gt;
             &lt;cmis:allowableActions&gt;
@@ -87,7 +87,7 @@
             &lt;/cmis:allowableActions&gt;
             &lt;cmis:changeEventInfo&gt;
                 &lt;cmis:changeType&gt;updated&lt;/cmis:changeType&gt;
-                &lt;cmis:changeTime&gt;2009-09-25T12:33:20.062-07:00&lt;/cmis:changeTime&gt;
+                &lt;cmis:changeTime&gt;2009-10-19T10:09:57.375-07:00&lt;/cmis:changeTime&gt;
             &lt;/cmis:changeEventInfo&gt;
         &lt;/cmisra:object&gt;
         &lt;cmisra:pathSegment&gt;customer1&lt;/cmisra:pathSegment&gt;
@@ -98,28 +98,28 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23"/&gt;
-        &lt;atom:id&gt;urn:uuid:72296dff-5e76-46ee-9e37-b7be392f1b23&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371"/&gt;
+        &lt;atom:id&gt;urn:uuid:4ca14c9e-027d-4035-bd72-8c145ffec371&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Folder as Customer type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:20.062-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:57.375-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:20.062-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  72296dff-5e76-46ee-9e37-b7be392f1b23&lt;/atom:summary&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/up"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/children"/&gt;
-        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/tree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/foldertree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/72296dff-5e76-46ee-9e37-b7be392f1b23/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:57.375-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  4ca14c9e-027d-4035-bd72-8c145ffec371&lt;/atom:summary&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/up"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/children"/&gt;
+        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/tree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/foldertree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/4ca14c9e-027d-4035-bd72-8c145ffec371/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;72296dff-5e76-46ee-9e37-b7be392f1b23&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;4ca14c9e-027d-4035-bd72-8c145ffec371&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;customer&lt;/cmis:value&gt;
@@ -128,10 +128,10 @@
                     &lt;cmis:value&gt;CMIS Example Folder as Customer type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:20.062-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:57.390-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:20.078-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:57.390-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:folder&lt;/cmis:value&gt;
@@ -143,7 +143,7 @@
                     &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyId localName="rep-cmis:parentId" propertyDefinitionId="cmis:parentId"&gt;
-                    &lt;cmis:value&gt;72296dff-5e76-46ee-9e37-b7be392f1b23up&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;4ca14c9e-027d-4035-bd72-8c145ffec371up&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
             &lt;/cmis:properties&gt;
             &lt;cmis:allowableActions&gt;
@@ -165,7 +165,7 @@
             &lt;/cmis:allowableActions&gt;
             &lt;cmis:changeEventInfo&gt;
                 &lt;cmis:changeType&gt;updated&lt;/cmis:changeType&gt;
-                &lt;cmis:changeTime&gt;2009-09-25T12:33:20.078-07:00&lt;/cmis:changeTime&gt;
+                &lt;cmis:changeTime&gt;2009-10-19T10:09:57.390-07:00&lt;/cmis:changeTime&gt;
             &lt;/cmis:changeEventInfo&gt;
         &lt;/cmisra:object&gt;
         &lt;cmisra:pathSegment&gt;customer2&lt;/cmisra:pathSegment&gt;
@@ -176,28 +176,28 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3"/&gt;
-        &lt;atom:id&gt;urn:uuid:980acfbc-02a0-47f3-b636-278ba594dbe3&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68"/&gt;
+        &lt;atom:id&gt;urn:uuid:ed7387fa-8e8f-4223-8b00-4145171c3f68&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Folder as Customer Policy type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:20.078-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:57.390-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:20.078-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  980acfbc-02a0-47f3-b636-278ba594dbe3&lt;/atom:summary&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/up"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/children"/&gt;
-        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/tree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/foldertree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/980acfbc-02a0-47f3-b636-278ba594dbe3/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:57.390-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  ed7387fa-8e8f-4223-8b00-4145171c3f68&lt;/atom:summary&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/up"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/children"/&gt;
+        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/tree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/foldertree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/ed7387fa-8e8f-4223-8b00-4145171c3f68/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;980acfbc-02a0-47f3-b636-278ba594dbe3&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;ed7387fa-8e8f-4223-8b00-4145171c3f68&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;customerpolicy&lt;/cmis:value&gt;
@@ -206,10 +206,10 @@
                     &lt;cmis:value&gt;CMIS Example Folder as Customer Policy type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:20.078-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:57.390-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:20.078-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:57.390-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:folder&lt;/cmis:value&gt;
@@ -221,7 +221,7 @@
                     &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyId localName="rep-cmis:parentId" propertyDefinitionId="cmis:parentId"&gt;
-                    &lt;cmis:value&gt;980acfbc-02a0-47f3-b636-278ba594dbe3up&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;ed7387fa-8e8f-4223-8b00-4145171c3f68up&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
             &lt;/cmis:properties&gt;
             &lt;cmis:allowableActions&gt;
@@ -243,7 +243,7 @@
             &lt;/cmis:allowableActions&gt;
             &lt;cmis:changeEventInfo&gt;
                 &lt;cmis:changeType&gt;updated&lt;/cmis:changeType&gt;
-                &lt;cmis:changeTime&gt;2009-09-25T12:33:20.078-07:00&lt;/cmis:changeTime&gt;
+                &lt;cmis:changeTime&gt;2009-10-19T10:09:57.390-07:00&lt;/cmis:changeTime&gt;
             &lt;/cmis:changeEventInfo&gt;
         &lt;/cmisra:object&gt;
         &lt;cmisra:pathSegment&gt;policy&lt;/cmisra:pathSegment&gt;
@@ -254,29 +254,29 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7"/&gt;
-        &lt;atom:id&gt;urn:uuid:aebc0da6-debd-4bb3-9e48-00a562fcf9b7&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9"/&gt;
+        &lt;atom:id&gt;urn:uuid:4958f36d-7bd8-425d-8323-b2028f70faa9&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Document as Policy type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:20.078-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:57.390-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:20.078-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  aebc0da6-debd-4bb3-9e48-00a562fcf9b7&lt;/atom:summary&gt;
-        &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/edit-media"/&gt;
-        &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/alternate"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/parents"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/allversions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/latest"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/aebc0da6-debd-4bb3-9e48-00a562fcf9b7/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:57.390-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  4958f36d-7bd8-425d-8323-b2028f70faa9&lt;/atom:summary&gt;
+        &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/edit-media"/&gt;
+        &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/alternate"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/parents"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/allversions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/latest"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/4958f36d-7bd8-425d-8323-b2028f70faa9/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;aebc0da6-debd-4bb3-9e48-00a562fcf9b7&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;4958f36d-7bd8-425d-8323-b2028f70faa9&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;policy&lt;/cmis:value&gt;
@@ -285,10 +285,10 @@
                     &lt;cmis:value&gt;CMIS Example Document as Policy type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:20.078-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:57.390-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:20.078-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:57.406-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;
@@ -359,7 +359,7 @@
             &lt;/cmis:allowableActions&gt;
             &lt;cmis:changeEventInfo&gt;
                 &lt;cmis:changeType&gt;updated&lt;/cmis:changeType&gt;
-                &lt;cmis:changeTime&gt;2009-09-25T12:33:20.078-07:00&lt;/cmis:changeTime&gt;
+                &lt;cmis:changeTime&gt;2009-10-19T10:09:57.406-07:00&lt;/cmis:changeTime&gt;
             &lt;/cmis:changeEventInfo&gt;
         &lt;/cmisra:object&gt;
         &lt;cmisra:pathSegment&gt;policy.pdf&lt;/cmisra:pathSegment&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntry.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntry.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntry.xml Sun Oct 25 11:44:28 2009
@@ -5,29 +5,29 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f"/&gt;
-    &lt;atom:id&gt;urn:uuid:7e25b188-60fa-4b54-8586-937173c6085f&lt;/atom:id&gt;
+    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3"/&gt;
+    &lt;atom:id&gt;urn:uuid:221bbfb3-dbe4-4a68-a3c3-23ee751091b3&lt;/atom:id&gt;
     &lt;atom:title type="text"&gt;CMIS Example Document&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:18.031-07:00&lt;/atom:updated&gt;
-    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f"/&gt;
-    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f"/&gt;
-    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/allowableactions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/type"/&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:55.140-07:00&lt;/atom:updated&gt;
+    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3"/&gt;
+    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3"/&gt;
+    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/allowableactions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/type"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:18.046-07:00&lt;/atom:published&gt;
-    &lt;atom:summary type="html"&gt;HTML summary of Entry  7e25b188-60fa-4b54-8586-937173c6085f&lt;/atom:summary&gt;
-    &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/edit-media"/&gt;
-    &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/alternate"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/parents"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/allversions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/latest"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/relationships"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/policies"/&gt;
-    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/7e25b188-60fa-4b54-8586-937173c6085f/acl"/&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:55.156-07:00&lt;/atom:published&gt;
+    &lt;atom:summary type="html"&gt;HTML summary of Entry  221bbfb3-dbe4-4a68-a3c3-23ee751091b3&lt;/atom:summary&gt;
+    &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/edit-media"/&gt;
+    &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/alternate"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/parents"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/allversions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/latest"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/relationships"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/policies"/&gt;
+    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/221bbfb3-dbe4-4a68-a3c3-23ee751091b3/acl"/&gt;
     &lt;cmisra:object&gt;
         &lt;cmis:properties&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                &lt;cmis:value&gt;7e25b188-60fa-4b54-8586-937173c6085f&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;221bbfb3-dbe4-4a68-a3c3-23ee751091b3&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                 &lt;cmis:value&gt;invoice&lt;/cmis:value&gt;
@@ -36,10 +36,10 @@
                 &lt;cmis:value&gt;CMIS Example Document&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.062-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.156-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.062-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.156-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                 &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryPWC.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryPWC.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryPWC.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryPWC.xml Sun Oct 25 11:44:28 2009
@@ -5,30 +5,30 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608"/&gt;
-    &lt;atom:id&gt;urn:uuid:af9f8e70-6ffc-4747-a854-60b651d67608&lt;/atom:id&gt;
+    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa"/&gt;
+    &lt;atom:id&gt;urn:uuid:d2eef40b-c429-4481-954e-5cc5f1ae63fa&lt;/atom:id&gt;
     &lt;atom:title type="text"&gt;CMIS Example Document for PWC&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:18.265-07:00&lt;/atom:updated&gt;
-    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608"/&gt;
-    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608"/&gt;
-    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/allowableactions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/type"/&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:55.359-07:00&lt;/atom:updated&gt;
+    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa"/&gt;
+    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa"/&gt;
+    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/allowableactions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/type"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:18.265-07:00&lt;/atom:published&gt;
-    &lt;atom:summary type="html"&gt;HTML summary of Entry  af9f8e70-6ffc-4747-a854-60b651d67608&lt;/atom:summary&gt;
-    &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/edit-media"/&gt;
-    &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/alternate"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/parents"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/allversions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/latest"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/relationships"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/policies"/&gt;
-    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/acl"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="working-copy" href="http://cmisexample.oasis-open.org/rep1/af9f8e70-6ffc-4747-a854-60b651d67608/pwc"/&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:55.359-07:00&lt;/atom:published&gt;
+    &lt;atom:summary type="html"&gt;HTML summary of Entry  d2eef40b-c429-4481-954e-5cc5f1ae63fa&lt;/atom:summary&gt;
+    &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/edit-media"/&gt;
+    &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/alternate"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/parents"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/allversions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/latest"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/relationships"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/policies"/&gt;
+    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/acl"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="working-copy" href="http://cmisexample.oasis-open.org/rep1/d2eef40b-c429-4481-954e-5cc5f1ae63fa/pwc"/&gt;
     &lt;cmisra:object&gt;
         &lt;cmis:properties&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                &lt;cmis:value&gt;af9f8e70-6ffc-4747-a854-60b651d67608&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;d2eef40b-c429-4481-954e-5cc5f1ae63fa&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                 &lt;cmis:value&gt;invoice&lt;/cmis:value&gt;
@@ -37,10 +37,10 @@
                 &lt;cmis:value&gt;CMIS Example Document for PWC&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.265-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.359-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:18.265-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:55.359-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                 &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;
@@ -88,7 +88,7 @@
                 &lt;cmis:value&gt;cmis&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyId localName="rep-cmis:versionSeriesCheckedOutId" propertyDefinitionId="cmis:versionSeriesCheckedOutId"&gt;
-                &lt;cmis:value&gt;af9f8e70-6ffc-4747-a854-60b651d67608&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;d2eef40b-c429-4481-954e-5cc5f1ae63fa&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
             &lt;cmis:propertyString localName="rep-cmis:versionSeriesCheckedOutBy" propertyDefinitionId="cmis:versionSeriesCheckedOutBy"&gt;
                 &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryWithChanges.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryWithChanges.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryWithChanges.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/DocumentEntryWithChanges.xml Sun Oct 25 11:44:28 2009
@@ -5,29 +5,29 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da"/&gt;
-    &lt;atom:id&gt;urn:uuid:91b3b37c-35ed-46de-abab-bf02fd1523da&lt;/atom:id&gt;
+    &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9"/&gt;
+    &lt;atom:id&gt;urn:uuid:d0856820-b621-497e-875e-8e35919dbbc9&lt;/atom:id&gt;
     &lt;atom:title type="text"&gt;CMIS Example Document - Loan&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:20.218-07:00&lt;/atom:updated&gt;
-    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da"/&gt;
-    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da"/&gt;
-    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/allowableactions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/type"/&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:57.546-07:00&lt;/atom:updated&gt;
+    &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9"/&gt;
+    &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9"/&gt;
+    &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/allowableactions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/type"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:20.218-07:00&lt;/atom:published&gt;
-    &lt;atom:summary type="html"&gt;HTML summary of Entry  91b3b37c-35ed-46de-abab-bf02fd1523da&lt;/atom:summary&gt;
-    &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/edit-media"/&gt;
-    &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/alternate"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/parents"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/allversions"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/latest"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/relationships"/&gt;
-    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/policies"/&gt;
-    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/91b3b37c-35ed-46de-abab-bf02fd1523da/acl"/&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:57.546-07:00&lt;/atom:published&gt;
+    &lt;atom:summary type="html"&gt;HTML summary of Entry  d0856820-b621-497e-875e-8e35919dbbc9&lt;/atom:summary&gt;
+    &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/edit-media"/&gt;
+    &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/alternate"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/parents"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/allversions"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/latest"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/relationships"/&gt;
+    &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/policies"/&gt;
+    &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/d0856820-b621-497e-875e-8e35919dbbc9/acl"/&gt;
     &lt;cmisra:object&gt;
         &lt;cmis:properties&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                &lt;cmis:value&gt;91b3b37c-35ed-46de-abab-bf02fd1523da&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;d0856820-b621-497e-875e-8e35919dbbc9&lt;/cmis:value&gt;
             &lt;/cmis:propertyId&gt;
             &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                 &lt;cmis:value&gt;loan&lt;/cmis:value&gt;
@@ -36,10 +36,10 @@
                 &lt;cmis:value&gt;CMIS Example Document - Loan&lt;/cmis:value&gt;
             &lt;/cmis:propertyString&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:20.218-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:57.546-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                &lt;cmis:value&gt;2009-09-25T12:33:20.218-07:00&lt;/cmis:value&gt;
+                &lt;cmis:value&gt;2009-10-19T10:09:57.546-07:00&lt;/cmis:value&gt;
             &lt;/cmis:propertyDateTime&gt;
             &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                 &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;
@@ -110,7 +110,7 @@
         &lt;/cmis:allowableActions&gt;
         &lt;cmis:changeEventInfo&gt;
             &lt;cmis:changeType&gt;updated&lt;/cmis:changeType&gt;
-            &lt;cmis:changeTime&gt;2009-09-25T12:33:20.218-07:00&lt;/cmis:changeTime&gt;
+            &lt;cmis:changeTime&gt;2009-10-19T10:09:57.546-07:00&lt;/cmis:changeTime&gt;
         &lt;/cmis:changeEventInfo&gt;
     &lt;/cmisra:object&gt;
 &lt;/atom:entry&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderChildren.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderChildren.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderChildren.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/FolderChildren.xml Sun Oct 25 11:44:28 2009
@@ -6,14 +6,14 @@
         &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
         &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
     &lt;/atom:author&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:19.062-07:00&lt;/atom:updated&gt;
-    &lt;atom:id&gt;urn:uuid:e26c2183-af56-41b6-9927-2927371e4140&lt;/atom:id&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:56.203-07:00&lt;/atom:updated&gt;
+    &lt;atom:id&gt;urn:uuid:2267ebb3-f5a1-44b1-8a7b-9a8c34cc7d79&lt;/atom:id&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="self" href="http://cmisexample.oasis-open.org/rep1/folder1feed/3"/&gt;
     &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
     &lt;atom:link type="application/atom+xml;type=entry" rel="via" href="http://cmisexample.oasis-open.org/rep1/folder1feed"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/folder1feed/foldertree"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/folder1feed/tree"/&gt;
-    &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/f87e300e-64de-46c2-9296-c9c7a91cb0af"/&gt;
+    &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/2e198c26-425a-46f4-ae87-3b79df744cbe"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="first" href="http://cmisexample.oasis-open.org/rep1/folder1feed/first"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="next" href="http://cmisexample.oasis-open.org/rep1/folder1feed/4"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="previous" href="http://cmisexample.oasis-open.org/rep1/folder1feed/2"/&gt;
@@ -31,28 +31,28 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528"/&gt;
-        &lt;atom:id&gt;urn:uuid:b8916d66-e61b-4d82-951c-56d359309528&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de"/&gt;
+        &lt;atom:id&gt;urn:uuid:2effd91f-da38-40d6-b972-fcc11b1941de&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Folder of type Customer&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.062-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.203-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.062-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  b8916d66-e61b-4d82-951c-56d359309528&lt;/atom:summary&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/up"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/children"/&gt;
-        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/tree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/foldertree"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/b8916d66-e61b-4d82-951c-56d359309528/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.203-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  2effd91f-da38-40d6-b972-fcc11b1941de&lt;/atom:summary&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/up"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/children"/&gt;
+        &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/tree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/foldertree" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/foldertree"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/2effd91f-da38-40d6-b972-fcc11b1941de/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;b8916d66-e61b-4d82-951c-56d359309528&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2effd91f-da38-40d6-b972-fcc11b1941de&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;customer&lt;/cmis:value&gt;
@@ -61,10 +61,10 @@
                     &lt;cmis:value&gt;CMIS Example Folder of type Customer&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.062-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.203-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.062-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.218-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:folder&lt;/cmis:value&gt;
@@ -76,7 +76,7 @@
                     &lt;cmis:value&gt;Al Brown&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyId localName="rep-cmis:parentId" propertyDefinitionId="cmis:parentId"&gt;
-                    &lt;cmis:value&gt;b8916d66-e61b-4d82-951c-56d359309528up&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2effd91f-da38-40d6-b972-fcc11b1941deup&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
             &lt;/cmis:properties&gt;
             &lt;cmis:allowableActions&gt;
@@ -105,29 +105,29 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e"/&gt;
-        &lt;atom:id&gt;urn:uuid:2b580240-080b-4ef1-b008-2e954329f39e&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb"/&gt;
+        &lt;atom:id&gt;urn:uuid:3d270a22-cd85-43c2-8542-ccc2604775bb&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Doc as Invoice type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.062-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.218-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.062-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  2b580240-080b-4ef1-b008-2e954329f39e&lt;/atom:summary&gt;
-        &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/edit-media"/&gt;
-        &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/alternate"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/parents"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/allversions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/latest"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/2b580240-080b-4ef1-b008-2e954329f39e/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.218-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  3d270a22-cd85-43c2-8542-ccc2604775bb&lt;/atom:summary&gt;
+        &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/edit-media"/&gt;
+        &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/alternate"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/parents"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/allversions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/latest"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/3d270a22-cd85-43c2-8542-ccc2604775bb/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;2b580240-080b-4ef1-b008-2e954329f39e&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;3d270a22-cd85-43c2-8542-ccc2604775bb&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;invoice&lt;/cmis:value&gt;
@@ -136,10 +136,10 @@
                     &lt;cmis:value&gt;CMIS Example Doc as Invoice type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.062-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.218-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.062-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.218-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;
@@ -217,29 +217,29 @@
             &lt;atom:uri&gt;http://www.ibm.com/&lt;/atom:uri&gt;
             &lt;atom:email&gt;albertcbrown@us.ibm.com&lt;/atom:email&gt;
         &lt;/atom:author&gt;
-        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315"/&gt;
-        &lt;atom:id&gt;urn:uuid:d4e365dc-5440-4998-b407-275baa831315&lt;/atom:id&gt;
+        &lt;atom:content src="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440"/&gt;
+        &lt;atom:id&gt;urn:uuid:5c2063b5-0abb-41ed-af34-a47e82825440&lt;/atom:id&gt;
         &lt;atom:title type="text"&gt;CMIS Example Doc as Invoice type&lt;/atom:title&gt;
-        &lt;atom:updated&gt;2009-09-25T12:33:19.062-07:00&lt;/atom:updated&gt;
-        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315"/&gt;
-        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315"/&gt;
-        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/allowableactions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/type"/&gt;
+        &lt;atom:updated&gt;2009-10-19T10:09:56.218-07:00&lt;/atom:updated&gt;
+        &lt;atom:link rel="self" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440"/&gt;
+        &lt;atom:link rel="edit" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440"/&gt;
+        &lt;atom:link type="application/cmis+xml;type=allowableActions" rel="http://docs.oasis-open.org/ns/cmis/link/200908/allowableactions" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/allowableactions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="describedby" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/type"/&gt;
         &lt;atom:link type="application/atomsvc+xml" rel="service" href="http://cmisexample.oasis-open.org/rep1//service"/&gt;
-        &lt;atom:published&gt;2009-09-25T12:33:19.078-07:00&lt;/atom:published&gt;
-        &lt;atom:summary type="html"&gt;HTML summary of Entry  d4e365dc-5440-4998-b407-275baa831315&lt;/atom:summary&gt;
-        &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/edit-media"/&gt;
-        &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/alternate"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/parents"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/allversions"/&gt;
-        &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/latest"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/relationships"/&gt;
-        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/policies"/&gt;
-        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/d4e365dc-5440-4998-b407-275baa831315/acl"/&gt;
+        &lt;atom:published&gt;2009-10-19T10:09:56.218-07:00&lt;/atom:published&gt;
+        &lt;atom:summary type="html"&gt;HTML summary of Entry  5c2063b5-0abb-41ed-af34-a47e82825440&lt;/atom:summary&gt;
+        &lt;atom:link rel="edit-media" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/edit-media"/&gt;
+        &lt;atom:link rel="alternate" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/alternate"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="up" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/parents"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="version-history" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/allversions"/&gt;
+        &lt;atom:link type="application/atom+xml;type=entry" rel="current-version" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/latest"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/relationships" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/relationships"/&gt;
+        &lt;atom:link type="application/atom+xml;type=feed" rel="http://docs.oasis-open.org/ns/cmis/link/200908/policies" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/policies"/&gt;
+        &lt;atom:link type="application/cmisacl+xml" rel="http://docs.oasis-open.org/ns/cmis/link/200908/acl" href="http://cmisexample.oasis-open.org/rep1/5c2063b5-0abb-41ed-af34-a47e82825440/acl"/&gt;
         &lt;cmisra:object&gt;
             &lt;cmis:properties&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectId" propertyDefinitionId="cmis:objectId"&gt;
-                    &lt;cmis:value&gt;d4e365dc-5440-4998-b407-275baa831315&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;5c2063b5-0abb-41ed-af34-a47e82825440&lt;/cmis:value&gt;
                 &lt;/cmis:propertyId&gt;
                 &lt;cmis:propertyId localName="rep-cmis:objectTypeId" propertyDefinitionId="cmis:objectTypeId"&gt;
                     &lt;cmis:value&gt;invoice&lt;/cmis:value&gt;
@@ -248,10 +248,10 @@
                     &lt;cmis:value&gt;CMIS Example Doc as Invoice type&lt;/cmis:value&gt;
                 &lt;/cmis:propertyString&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:creationDate" propertyDefinitionId="cmis:creationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.078-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.218-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyDateTime localName="rep-cmis:lastModificationDate" propertyDefinitionId="cmis:lastModificationDate"&gt;
-                    &lt;cmis:value&gt;2009-09-25T12:33:19.078-07:00&lt;/cmis:value&gt;
+                    &lt;cmis:value&gt;2009-10-19T10:09:56.218-07:00&lt;/cmis:value&gt;
                 &lt;/cmis:propertyDateTime&gt;
                 &lt;cmis:propertyId localName="rep-cmis:baseTypeId" propertyDefinitionId="cmis:baseTypeId"&gt;
                     &lt;cmis:value&gt;cmis:document&lt;/cmis:value&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r829546 [3/3] - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src: main/resources/org/apache/chemistry/tck/atompub/xsd/ test/resources/org/apache/chemistry/tck/atompub/examples/</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091025114430.3BDC823889D7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091025114430-3BDC823889D7@eris-apache-org%3e</id>
<updated>2009-10-25T11:44:29Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWithout.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWithout.xml?rev=829546&amp;r1=829545&amp;r2=829546&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWithout.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/test/resources/org/apache/chemistry/tck/atompub/examples/TypeRelationshipWithout.xml
Sun Oct 25 11:44:28 2009
@@ -13,11 +13,11 @@
     &lt;atom:link type="application/atom+xml;type=entry" rel="up" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/parent"/&gt;
     &lt;atom:link type="application/atom+xml;type=feed" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/children/flat"/&gt;
     &lt;atom:link type="application/cmistree+xml" rel="down" href="http://cmisexample.oasis-open.org/rep1/type/customer-relationship/children/tree"/&gt;
-    &lt;atom:published&gt;2009-09-25T12:33:20.968-07:00&lt;/atom:published&gt;
+    &lt;atom:published&gt;2009-10-19T10:09:58.359-07:00&lt;/atom:published&gt;
     &lt;atom:summary type="html"&gt;HTML summary of Type Definition  customer-relationship&lt;/atom:summary&gt;
     &lt;atom:title type="text"&gt;Type Definition - customer-relationship&lt;/atom:title&gt;
-    &lt;atom:updated&gt;2009-09-25T12:33:20.968-07:00&lt;/atom:updated&gt;
-    &lt;app:edited&gt;2009-09-25T12:33:20.968-07:00&lt;/app:edited&gt;
+    &lt;atom:updated&gt;2009-10-19T10:09:58.359-07:00&lt;/atom:updated&gt;
+    &lt;app:edited&gt;2009-10-19T10:09:58.375-07:00&lt;/app:edited&gt;
     &lt;cmisra:type xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="cmis:cmisTypeRelationshipDefinitionType"
cmisra:id="customer-relationship"&gt;
         &lt;cmis:id&gt;dtcustomer-relationship&lt;/cmis:id&gt;
         &lt;cmis:localName&gt;myrepname-customer-relationship&lt;/cmis:localName&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r829544 - in /incubator/chemistry/trunk/chemistry: ./ chemistry-api/ chemistry-atompub-client/ chemistry-atompub-server/ chemistry-atompub/ chemistry-commons/ chemistry-jcr/ chemistry-parent/ chemistry-tck-atompub/ chemistry-tests/ chemistr...</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091025114205.81E7423888CE@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091025114205-81E7423888CE@eris-apache-org%3e</id>
<updated>2009-10-25T11:42:05Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Sun Oct 25 11:42:04 2009
New Revision: 829544

URL: http://svn.apache.org/viewvc?rev=829544&amp;view=rev
Log:
Switch POM versions to 1.0-SNAPSHOT

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml
    incubator/chemistry/trunk/chemistry/pom.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml Sun Oct 25 11:42:04 2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-api&lt;/artifactId&gt;
   &lt;name&gt;Chemistry API&lt;/name&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml Sun Oct 25 11:42:04
2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub-client&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml Sun Oct 25 11:42:04
2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub-server&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml Sun Oct 25 11:42:04 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml Sun Oct 25 11:42:04 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-commons&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml Sun Oct 25 11:42:04 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
     &lt;relativePath&gt;../chemistry-parent&lt;/relativePath&gt;
   &lt;/parent&gt;
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml Sun Oct 25 11:42:04 2009
@@ -24,7 +24,7 @@
 
   &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
   &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-  &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+  &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;name&gt;Chemistry Parent POM&lt;/name&gt;
   &lt;packaging&gt;pom&lt;/packaging&gt;
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml Sun Oct 25 11:42:04
2009
@@ -13,7 +13,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-tck-atompub&lt;/artifactId&gt;
   &lt;name&gt;Chemistry TCK AtomPub&lt;/name&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml Sun Oct 25 11:42:04 2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-tests&lt;/artifactId&gt;
   &lt;name&gt;Chemistry Tests&lt;/name&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml Sun Oct 25 11:42:04 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-ws&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/pom.xml?rev=829544&amp;r1=829543&amp;r2=829544&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/pom.xml Sun Oct 25 11:42:04 2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
     &lt;relativePath&gt;chemistry-parent/pom.xml&lt;/relativePath&gt;
   &lt;/parent&gt;
 




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r829038 - /incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091023125745.E66AE238889C@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091023125745-E66AE238889C@eris-apache-org%3e</id>
<updated>2009-10-23T12:57:45Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Fri Oct 23 12:57:45 2009
New Revision: 829038

URL: http://svn.apache.org/viewvc?rev=829038&amp;view=rev
Log:
Set encoding to UTF-8 for Java Compiler.

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml?rev=829038&amp;r1=829037&amp;r2=829038&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml Fri Oct 23 12:57:45 2009
@@ -61,6 +61,7 @@
         &lt;configuration&gt;
           &lt;target&gt;1.5&lt;/target&gt;
           &lt;source&gt;1.5&lt;/source&gt;
+          &lt;encoding&gt;UTF-8&lt;/encoding&gt;          
         &lt;/configuration&gt;
       &lt;/plugin&gt;
       &lt;!-- Enable maven-source-plugin --&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r828843 - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main: java/org/apache/chemistry/abdera/ext/ java/org/apache/chemistry/tck/atompub/test/custom/ java/org/apache/chemistry/tck/atompub/test/spec/ resources/org/apache...</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091022204603.57C8D23888C2@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091022204603-57C8D23888C2@eris-apache-org%3e</id>
<updated>2009-10-22T20:46:03Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Thu Oct 22 20:46:02 2009
New Revision: 828843

URL: http://svn.apache.org/viewvc?rev=828843&amp;view=rev
Log:
AtomPub TCK updates
- Add tests for getObjectById, getObjectByPath URI templates
- Tighten tests for content streams
- Minor adjustments to custom type tests
- Abdera CMIS extension: add getPath() to CMISObject

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISObject.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/custom/CMISCustomTypeTest.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/ContentStreamTest.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomdocument.atomentry.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomfolder.atomentry.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISObject.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISObject.java?rev=828843&amp;r1=828842&amp;r2=828843&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISObject.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISObject.java
Thu Oct 22 20:46:02 2009
@@ -265,6 +265,15 @@
     }
 
     /**
+     * Path (Folder)
+     *  
+     * @return path
+     */
+    public CMISProperty getPath() {
+        return getProperties().find(CMISConstants.PROP_PATH);
+    }
+
+    /**
      * Source Id (Relationship)
      * 
      * @return source id property
@@ -281,4 +290,5 @@
     public CMISProperty getTargetId() {
         return getProperties().find(CMISConstants.PROP_TARGET_ID);
     }
+    
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/custom/CMISCustomTypeTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/custom/CMISCustomTypeTest.java?rev=828843&amp;r1=828842&amp;r2=828843&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/custom/CMISCustomTypeTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/custom/CMISCustomTypeTest.java
Thu Oct 22 20:46:02 2009
@@ -32,7 +32,6 @@
 import org.apache.chemistry.abdera.ext.CMISProperty;
 import org.apache.chemistry.tck.atompub.http.DeleteRequest;
 import org.apache.chemistry.tck.atompub.http.GetRequest;
-import org.apache.chemistry.tck.atompub.http.PatchRequest;
 import org.apache.chemistry.tck.atompub.http.PostRequest;
 import org.apache.chemistry.tck.atompub.http.PutRequest;
 import org.apache.chemistry.tck.atompub.http.Response;
@@ -54,14 +53,13 @@
         Feed children = client.getFeed(childrenLink.getHref());
         assertNotNull(children);
         int entriesBefore = children.getEntries().size();
-        Entry folder = client.createFolder(children.getSelfLink().getHref(), "testCreateCustomFolder",
-                "/org/apache/chemistry/tck/atompub/test/createcustomfolder.atomentry.xml");
+        Entry folder = client.createFolder(children.getSelfLink().getHref(), "testCreateCustomFolder",
"custom/createcustomfolder.atomentry.xml");
         Feed feedFolderAfter = client.getFeed(childrenLink.getHref());
         int entriesAfter = feedFolderAfter.getEntries().size();
         assertEquals(entriesBefore + 1, entriesAfter);
         Entry entry = feedFolderAfter.getEntry(folder.getId().toString());
         CMISObject object = entry.getExtension(CMISConstants.OBJECT);
-        assertEquals("F/cmiscustom:folder", object.getObjectTypeId().getStringValue());
+        assertEquals("F:cmiscustom:folder", object.getObjectTypeId().getStringValue());
         CMISProperty customProp = object.getProperties().find("cmiscustom:folderprop_string");
         assertNotNull(customProp);
         assertEquals("custom string", customProp.getStringValue());
@@ -74,14 +72,13 @@
         Feed children = client.getFeed(childrenLink.getHref());
         assertNotNull(children);
         int entriesBefore = children.getEntries().size();
-        Entry document = client.createDocument(children.getSelfLink().getHref(), "testCreateCustomDocument",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry document = client.createDocument(children.getSelfLink().getHref(), "testCreateCustomDocument",
"custom/createcustomdocument.atomentry.xml");
         Feed feedFolderAfter = client.getFeed(childrenLink.getHref());
         int entriesAfter = feedFolderAfter.getEntries().size();
         assertEquals(entriesBefore + 1, entriesAfter);
         Entry entry = feedFolderAfter.getEntry(document.getId().toString());
         CMISObject object = entry.getExtension(CMISConstants.OBJECT);
-        assertEquals("D/cmiscustom:document", object.getObjectTypeId().getStringValue());
+        assertEquals("D:cmiscustom:document", object.getObjectTypeId().getStringValue());
         CMISProperty customProp = object.getProperties().find("cmiscustom:docprop_string");
         assertNotNull(customProp);
         assertEquals("custom string", customProp.getStringValue());
@@ -94,53 +91,13 @@
         assertEquals(false, multiValues.get(1));
     }
 
-    public void testUpdatePatch() throws Exception {
-        // retrieve test folder for update
-        Entry testFolder = fixture.getTestCaseFolder();
-        Link childrenLink = client.getChildrenLink(testFolder);
-
-        // create document for update
-        Entry document = client.createDocument(childrenLink.getHref(), "testUpdatePatchCustomDocument",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
-        assertNotNull(document);
-
-        // update
-        String updateFile = customTemplates.load("updatecustomdocument.atomentry.xml");
-        // FIXME: Add a decent UID generation policy
-        // String guid = GUID.generate();
-        String guid = System.currentTimeMillis() + "";
-        updateFile = updateFile.replace("${NAME}", guid);
-        Response res = client.executeRequest(new PatchRequest(document.getSelfLink().getHref().toString(),
updateFile,
-                CMISConstants.MIMETYPE_ENTRY), 200);
-        assertNotNull(res);
-        Entry updated = model.parseEntry(new StringReader(res.getContentAsString()), null);
-
-        // ensure update occurred
-        assertEquals(document.getId(), updated.getId());
-        assertEquals(document.getPublished(), updated.getPublished());
-        assertEquals("Updated Title " + guid, updated.getTitle());
-        CMISObject object = updated.getExtension(CMISConstants.OBJECT);
-        assertEquals("D/cmiscustom:document", object.getObjectTypeId().getStringValue());
-        CMISProperty customProp = object.getProperties().find("cmiscustom:docprop_string");
-        assertNotNull(customProp);
-        assertEquals("custom " + guid, customProp.getStringValue());
-        CMISProperty multiProp = object.getProperties().find("cmiscustom:docprop_boolean_multi");
-        assertNotNull(multiProp);
-        List&lt;Object&gt; multiValues = multiProp.getNativeValues();
-        assertNotNull(multiValues);
-        assertEquals(2, multiValues.size());
-        assertEquals(false, multiValues.get(0));
-        assertEquals(true, multiValues.get(1));
-    }
-
     public void testUpdatePut() throws Exception {
         // retrieve test folder for update
         Entry testFolder = fixture.getTestCaseFolder();
         Link childrenLink = client.getChildrenLink(testFolder);
 
         // create document for update
-        Entry document = client.createDocument(childrenLink.getHref(), "testUpdatePutCustomDocument",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry document = client.createDocument(childrenLink.getHref(), "testUpdatePutCustomDocument",
"custom/createcustomdocument.atomentry.xml");
         assertNotNull(document);
 
         // update
@@ -159,7 +116,7 @@
         assertEquals(document.getPublished(), updated.getPublished());
         assertEquals("Updated Title " + guid, updated.getTitle());
         CMISObject object = updated.getExtension(CMISConstants.OBJECT);
-        assertEquals("D/cmiscustom:document", object.getObjectTypeId().getStringValue());
+        assertEquals("D:cmiscustom:document", object.getObjectTypeId().getStringValue());
         CMISProperty customProp = object.getProperties().find("cmiscustom:docprop_string");
         assertNotNull(customProp);
         assertEquals("custom " + guid, customProp.getStringValue());
@@ -180,8 +137,7 @@
         int entriesBefore = children.getEntries().size();
 
         // create document for delete
-        Entry document = client.createDocument(childrenLink.getHref(), "testDeleteCustomDocument",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry document = client.createDocument(childrenLink.getHref(), "testDeleteCustomDocument",
"custom/createcustomdocument.atomentry.xml");
         Response documentRes = client.executeRequest(new GetRequest(document.getSelfLink().getHref().toString()),
200);
         assertNotNull(documentRes);
 
@@ -219,27 +175,25 @@
         assertNotNull(document1Object);
         String doc2name = "name" + System.currentTimeMillis();
         // Custom documents
-        Entry document2 = client.createDocument(childrenLink.getHref(), doc2name,
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry document2 = client.createDocument(childrenLink.getHref(), doc2name, "custom/createcustomdocument.atomentry.xml");
         assertNotNull(document2);
         CMISObject document2Object = document2.getExtension(CMISConstants.OBJECT);
         assertNotNull(document2Object);
-        Entry document3 = client.createDocument(childrenLink.getHref(), "banana1",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry document3 = client.createDocument(childrenLink.getHref(), "banana1", "custom/createcustomdocument.atomentry.xml");
         assertNotNull(document3);
         CMISObject document3Object = document3.getExtension(CMISConstants.OBJECT);
         assertNotNull(document3Object);
 
         // retrieve query request document
-        String queryDoc = customTemplates.load("query.cmisquery.xml");
+        String queryDoc = templates.load("query.cmisquery.xml");
 
         {
             // construct structured query
-            String query = "SELECT ObjectId, Name, ObjectTypeId, cmiscustom_docprop_string,
cmiscustom_docprop_boolean_multi FROM cmiscustom_document "
+            String query = "SELECT cmis:objectId, cmis:name, cmis:objectTypeId, cmiscustom:docprop_string,
cmiscustom:docprop_boolean_multi FROM cmiscustom:document "
                     + "WHERE IN_FOLDER('"
                     + testFolderObject.getObjectId().getStringValue()
                     + "') "
-                    + "AND cmiscustom_docprop_string = 'custom string' ";
+                    + "AND cmiscustom:docprop_string = 'custom string' ";
             String queryReq = queryDoc.replace("${STATEMENT}", query);
             queryReq = queryReq.replace("${SKIPCOUNT}", "0");
             queryReq = queryReq.replace("${PAGESIZE}", "5");
@@ -298,11 +252,9 @@
         assertNotNull(childrenLink);
         Feed children = client.getFeed(childrenLink.getHref());
         assertNotNull(children);
-        Entry source = client.createDocument(children.getSelfLink().getHref(), "testSource",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry source = client.createDocument(children.getSelfLink().getHref(), "testSource",
"custom/createcustomdocument.atomentry.xml");
         assertNotNull(source);
-        Entry target = client.createDocument(children.getSelfLink().getHref(), "testTarget",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry target = client.createDocument(children.getSelfLink().getHref(), "testTarget",
"custom/createcustomdocument.atomentry.xml");
         assertNotNull(target);
 
         // retrieve relationships feed on source
@@ -317,7 +269,7 @@
         assertNotNull(targetObject);
         String targetId = targetObject.getObjectId().getStringValue();
         assertNotNull(targetId);
-        Entry rel = client.createRelationship(relsLink.getHref(), "R/cmiscustom:assoc", targetId);
+        Entry rel = client.createRelationship(relsLink.getHref(), "R:cmiscustom:assoc", targetId);
         assertNotNull(rel);
 
         // check created relationship
@@ -327,7 +279,7 @@
         assertNotNull(sourceId);
         CMISObject relObject = rel.getExtension(CMISConstants.OBJECT);
         assertNotNull(relObject);
-        assertEquals("R/cmiscustom:assoc", relObject.getObjectTypeId().getStringValue());
+        assertEquals("R:cmiscustom:assoc", relObject.getObjectTypeId().getStringValue());
         assertEquals(sourceId, relObject.getSourceId().getStringValue());
         assertEquals(targetId, relObject.getTargetId().getStringValue());
         assertEquals(source.getSelfLink().getHref(), rel.getLink(CMISConstants.REL_ASSOC_SOURCE).getHref());
@@ -347,11 +299,9 @@
         assertNotNull(childrenLink);
         Feed children = client.getFeed(childrenLink.getHref());
         assertNotNull(children);
-        Entry source = client.createDocument(children.getSelfLink().getHref(), "testSource",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry source = client.createDocument(children.getSelfLink().getHref(), "testSource",
"custom/createcustomdocument.atomentry.xml");
         assertNotNull(source);
-        Entry target = client.createDocument(children.getSelfLink().getHref(), "testTarget",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry target = client.createDocument(children.getSelfLink().getHref(), "testTarget",
"custom/createcustomdocument.atomentry.xml");
         assertNotNull(target);
 
         // retrieve relationships feed on source
@@ -363,7 +313,7 @@
         assertNotNull(targetObject);
         String targetId = targetObject.getObjectId().getStringValue();
         assertNotNull(targetId);
-        Entry rel = client.createRelationship(relsLink.getHref(), "R/cmiscustom:assoc", targetId);
+        Entry rel = client.createRelationship(relsLink.getHref(), "R:cmiscustom:assoc", targetId);
         assertNotNull(rel);
 
         // get created relationship
@@ -384,11 +334,9 @@
         assertNotNull(childrenLink);
         Feed children = client.getFeed(childrenLink.getHref());
         assertNotNull(children);
-        Entry source = client.createDocument(children.getSelfLink().getHref(), "testSource",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry source = client.createDocument(children.getSelfLink().getHref(), "testSource",
"custom/createcustomdocument.atomentry.xml");
         assertNotNull(source);
-        Entry target = client.createDocument(children.getSelfLink().getHref(), "testTarget",
-                "/org/apache/chemistry/tck/atompub/test/createcustomdocument.atomentry.xml");
+        Entry target = client.createDocument(children.getSelfLink().getHref(), "testTarget",
"custom/createcustomdocument.atomentry.xml");
         assertNotNull(target);
 
         // retrieve relationships feed on source
@@ -403,7 +351,7 @@
         assertNotNull(targetObject);
         String targetId = targetObject.getObjectId().getStringValue();
         assertNotNull(targetId);
-        Entry rel = client.createRelationship(relsLink.getHref(), "R/cmiscustom:assoc", targetId);
+        Entry rel = client.createRelationship(relsLink.getHref(), "R:cmiscustom:assoc", targetId);
         assertNotNull(rel);
 
         // check relationships for created item

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/ContentStreamTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/ContentStreamTest.java?rev=828843&amp;r1=828842&amp;r2=828843&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/ContentStreamTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/ContentStreamTest.java
Thu Oct 22 20:46:02 2009
@@ -80,7 +80,10 @@
         Response res = client.executeRequest(new DeleteRequest(editMediaLink.getHref().toString()),
204);
         Assert.assertNotNull(res);
 
-        // retrieve deleted content
+        // retrieve document (ensure still exists)
+        client.getEntry(document.getSelfLink().getHref());
+        
+        // attempt to retrieve deleted content (ensure does not exist)
         client.executeRequest(new GetRequest(document.getContentSrc().toString()), 404);
     }
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java?rev=828843&amp;r1=828842&amp;r2=828843&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/GetTest.java
Thu Oct 22 20:46:02 2009
@@ -17,7 +17,14 @@
  */
 package org.apache.chemistry.tck.atompub.test.spec;
 
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.abdera.i18n.iri.IRI;
 import org.apache.abdera.model.Entry;
+import org.apache.chemistry.abdera.ext.CMISConstants;
+import org.apache.chemistry.abdera.ext.CMISObject;
+import org.apache.chemistry.abdera.ext.CMISUriTemplate;
 import org.apache.chemistry.tck.atompub.TCKTest;
 import org.apache.chemistry.tck.atompub.http.GetRequest;
 import org.junit.Assert;
@@ -54,4 +61,55 @@
         client.executeRequest(new GetRequest(folder.getSelfLink().getHref().toString() +
guid), 404);
     }
 
+    public void testObjectById() throws Exception
+    {
+        // construct document
+        Entry document = fixture.createTestDocument("testObjectById");
+        Assert.assertNotNull(document);
+        CMISObject documentObject = document.getExtension(CMISConstants.OBJECT);
+        Assert.assertNotNull(documentObject);
+        String objectId = documentObject.getObjectId().getStringValue();
+        Assert.assertNotNull(objectId);
+
+        // formulate get request via id
+        CMISUriTemplate objectByIdTemplate = client.getObjectByIdUriTemplate(client.getWorkspace());
+        Map&lt;String, Object&gt; variables = new HashMap&lt;String, Object&gt;();
+        variables.put("id", objectId);
+        IRI objectByIdRequest = objectByIdTemplate.generateUri(variables);
+        
+        // get document
+        Entry documentById = client.getEntry(objectByIdRequest);
+        Assert.assertNotNull(documentById);
+        CMISObject documentByIdObject = document.getExtension(CMISConstants.OBJECT);
+        Assert.assertNotNull(documentByIdObject);
+        Assert.assertEquals(objectId, documentByIdObject.getObjectId().getStringValue());
+    }
+
+    public void testObjectByPath() throws Exception
+    {
+        // construct folder
+        Entry folder = fixture.createTestFolder("testObjectByPath");
+        Assert.assertNotNull(folder);
+        CMISObject folderObject = folder.getExtension(CMISConstants.OBJECT);
+        Assert.assertNotNull(folderObject);
+        String objectId = folderObject.getObjectId().getStringValue();
+        Assert.assertNotNull(objectId);
+        String path = folderObject.getPath().getStringValue();
+        Assert.assertNotNull(path);
+
+        // formulate get request via id
+        CMISUriTemplate objectByPathTemplate = client.getObjectByPathUriTemplate(client.getWorkspace());
+        Map&lt;String, Object&gt; variables = new HashMap&lt;String, Object&gt;();
+        variables.put("path", path);
+        IRI objectByPathRequest = objectByPathTemplate.generateUri(variables);
+        
+        // get folder
+        Entry folderByPath = client.getEntry(objectByPathRequest);
+        Assert.assertNotNull(folderByPath);
+        CMISObject folderByPathObject = folder.getExtension(CMISConstants.OBJECT);
+        Assert.assertNotNull(folderByPathObject);
+        Assert.assertEquals(path, folderByPathObject.getPath().getStringValue());
+        Assert.assertEquals(objectId, folderByPathObject.getObjectId().getStringValue());
+    }
+    
 }

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomdocument.atomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomdocument.atomentry.xml?rev=828843&amp;r1=828842&amp;r2=828843&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomdocument.atomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomdocument.atomentry.xml
Thu Oct 22 20:46:02 2009
@@ -6,7 +6,7 @@
   &lt;cmisra:object&gt;
     &lt;cmis:properties&gt;
       &lt;cmis:propertyId propertyDefinitionId="cmis:objectTypeId"&gt;
-        &lt;cmis:value&gt;D/cmiscustom:document&lt;/cmis:value&gt;
+        &lt;cmis:value&gt;D:cmiscustom:document&lt;/cmis:value&gt;
       &lt;/cmis:propertyId&gt;
       &lt;cmis:propertyString propertyDefinitionId="cmiscustom:docprop_string"&gt;
         &lt;cmis:value&gt;custom string&lt;/cmis:value&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomfolder.atomentry.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomfolder.atomentry.xml?rev=828843&amp;r1=828842&amp;r2=828843&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomfolder.atomentry.xml
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/resources/org/apache/chemistry/tck/atompub/templates/custom/createcustomfolder.atomentry.xml
Thu Oct 22 20:46:02 2009
@@ -5,7 +5,7 @@
   &lt;cmisra:object&gt;
     &lt;cmis:properties&gt;
       &lt;cmis:propertyId propertyDefinitionId="cmis:objectTypeId"&gt;
-        &lt;cmis:value&gt;F/cmiscustom:folder&lt;/cmis:value&gt;
+        &lt;cmis:value&gt;F:cmiscustom:folder&lt;/cmis:value&gt;
       &lt;/cmis:propertyId&gt;
       &lt;cmis:propertyString propertyDefinitionId="cmiscustom:folderprop_string"&gt;
         &lt;cmis:value&gt;custom string&lt;/cmis:value&gt;




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r828682 - in /incubator/chemistry/trunk/chemistry: ./ chemistry-api/ chemistry-atompub-client/ chemistry-atompub-server/ chemistry-atompub/ chemistry-commons/ chemistry-jcr/ chemistry-parent/ chemistry-tck-atompub/ chemistry-tests/ chemistr...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091022133933.0998723888CE@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091022133933-0998723888CE@eris-apache-org%3e</id>
<updated>2009-10-22T13:39:32Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Thu Oct 22 13:39:32 2009
New Revision: 828682

URL: http://svn.apache.org/viewvc?rev=828682&amp;view=rev
Log:
Switch POM versions to 0.70-SNAPSHOT

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml
    incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml
    incubator/chemistry/trunk/chemistry/pom.xml

Modified: incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-api/pom.xml Thu Oct 22 13:39:32 2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-api&lt;/artifactId&gt;
   &lt;name&gt;Chemistry API&lt;/name&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-client/pom.xml Thu Oct 22 13:39:32
2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub-client&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub-server/pom.xml Thu Oct 22 13:39:32
2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub-server&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-atompub/pom.xml Thu Oct 22 13:39:32 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-commons/pom.xml Thu Oct 22 13:39:32 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-commons&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-jcr/pom.xml Thu Oct 22 13:39:32 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
     &lt;relativePath&gt;../chemistry-parent&lt;/relativePath&gt;
   &lt;/parent&gt;
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-parent/pom.xml Thu Oct 22 13:39:32 2009
@@ -24,7 +24,7 @@
 
   &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
   &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-  &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+  &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;name&gt;Chemistry Parent POM&lt;/name&gt;
   &lt;packaging&gt;pom&lt;/packaging&gt;
 

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/pom.xml Thu Oct 22 13:39:32
2009
@@ -13,7 +13,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-tck-atompub&lt;/artifactId&gt;
   &lt;name&gt;Chemistry TCK AtomPub&lt;/name&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tests/pom.xml Thu Oct 22 13:39:32 2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-tests&lt;/artifactId&gt;
   &lt;name&gt;Chemistry Tests&lt;/name&gt;

Modified: incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/chemistry-ws/pom.xml Thu Oct 22 13:39:32 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-ws&lt;/artifactId&gt;

Modified: incubator/chemistry/trunk/chemistry/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/pom.xml?rev=828682&amp;r1=828681&amp;r2=828682&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/pom.xml (original)
+++ incubator/chemistry/trunk/chemistry/pom.xml Thu Oct 22 13:39:32 2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.70-SNAPSHOT&lt;/version&gt;
     &lt;relativePath&gt;chemistry-parent/pom.xml&lt;/relativePath&gt;
   &lt;/parent&gt;
 




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r828680 - in /incubator/chemistry/branches/0.62/chemistry: ./ chemistry-api/ chemistry-atompub-client/ chemistry-atompub-server/ chemistry-atompub/ chemistry-commons/ chemistry-jcr/ chemistry-parent/ chemistry-tck-atompub/ chemistry-tests/ ...</title>
<author><name>fguillaume@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091022133003.43C9B23888CE@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091022133003-43C9B23888CE@eris-apache-org%3e</id>
<updated>2009-10-22T13:30:02Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: fguillaume
Date: Thu Oct 22 13:30:02 2009
New Revision: 828680

URL: http://svn.apache.org/viewvc?rev=828680&amp;view=rev
Log:
Switch POM versions to 0.62-SNAPSHOT

Modified:
    incubator/chemistry/branches/0.62/chemistry/chemistry-api/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-client/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-server/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-atompub/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-commons/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-jcr/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-parent/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-tck-atompub/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-tests/pom.xml
    incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml
    incubator/chemistry/branches/0.62/chemistry/pom.xml

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-api/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-api/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-api/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-api/pom.xml Thu Oct 22 13:30:02
2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-api&lt;/artifactId&gt;
   &lt;name&gt;Chemistry API&lt;/name&gt;

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-client/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-client/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-client/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-client/pom.xml Thu Oct 22
13:30:02 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub-client&lt;/artifactId&gt;

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-server/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-server/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-server/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-atompub-server/pom.xml Thu Oct 22
13:30:02 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub-server&lt;/artifactId&gt;

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-atompub/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-atompub/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-atompub/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-atompub/pom.xml Thu Oct 22 13:30:02
2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-atompub&lt;/artifactId&gt;

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-commons/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-commons/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-commons/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-commons/pom.xml Thu Oct 22 13:30:02
2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-commons&lt;/artifactId&gt;

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-jcr/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-jcr/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-jcr/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-jcr/pom.xml Thu Oct 22 13:30:02
2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
     &lt;relativePath&gt;../chemistry-parent&lt;/relativePath&gt;
   &lt;/parent&gt;
 

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-parent/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-parent/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-parent/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-parent/pom.xml Thu Oct 22 13:30:02
2009
@@ -24,7 +24,7 @@
 
   &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
   &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-  &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+  &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;name&gt;Chemistry Parent POM&lt;/name&gt;
   &lt;packaging&gt;pom&lt;/packaging&gt;
 

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-tck-atompub/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-tck-atompub/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-tck-atompub/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-tck-atompub/pom.xml Thu Oct 22 13:30:02
2009
@@ -13,7 +13,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-tck-atompub&lt;/artifactId&gt;
   &lt;name&gt;Chemistry TCK AtomPub&lt;/name&gt;

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-tests/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-tests/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-tests/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-tests/pom.xml Thu Oct 22 13:30:02
2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
   &lt;artifactId&gt;chemistry-tests&lt;/artifactId&gt;
   &lt;name&gt;Chemistry Tests&lt;/name&gt;

Modified: incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/chemistry-ws/pom.xml Thu Oct 22 13:30:02 2009
@@ -22,7 +22,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
   &lt;/parent&gt;
 
   &lt;artifactId&gt;chemistry-ws&lt;/artifactId&gt;

Modified: incubator/chemistry/branches/0.62/chemistry/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/branches/0.62/chemistry/pom.xml?rev=828680&amp;r1=828679&amp;r2=828680&amp;view=diff
==============================================================================
--- incubator/chemistry/branches/0.62/chemistry/pom.xml (original)
+++ incubator/chemistry/branches/0.62/chemistry/pom.xml Thu Oct 22 13:30:02 2009
@@ -21,7 +21,7 @@
   &lt;parent&gt;
     &lt;groupId&gt;org.apache.chemistry&lt;/groupId&gt;
     &lt;artifactId&gt;chemistry-parent&lt;/artifactId&gt;
-    &lt;version&gt;0.1-SNAPSHOT&lt;/version&gt;
+    &lt;version&gt;0.62-SNAPSHOT&lt;/version&gt;
     &lt;relativePath&gt;chemistry-parent/pom.xml&lt;/relativePath&gt;
   &lt;/parent&gt;
 




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r826298 - /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISConstants.java</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091017195521.479A623888CB@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091017195521-479A623888CB@eris-apache-org%3e</id>
<updated>2009-10-17T19:55:21Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Sat Oct 17 19:55:20 2009
New Revision: 826298

URL: http://svn.apache.org/viewvc?rev=826298&amp;view=rev
Log:
Fix incorrect rel links.

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISConstants.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISConstants.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISConstants.java?rev=826298&amp;r1=826297&amp;r2=826298&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISConstants.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/abdera/ext/CMISConstants.java
Sat Oct 17 19:55:20 2009
@@ -165,14 +165,14 @@
     public static final String REL_VERSION_HISTORY = "version-history";
     public static final String REL_CURRENT_VERSION = "current-version";
     public static final String REL_WORKING_COPY = "working-copy";
-    public static final String REL_ROOT_DESCENDANTS = CMISLINK_NS + "/rootdescendants";
-    public static final String REL_TYPES_DESCENDANTS = CMISLINK_NS + "/typesdescendants";
-    public static final String REL_FOLDER_TREE = CMISLINK_NS + "/foldertree";
-    public static final String REL_ALLOWABLE_ACTIONS = CMISLINK_NS + "/allowableactions";
-    public static final String REL_POLICIES = CMISLINK_NS + "/policies";
-    public static final String REL_RELATIONSHIPS = CMISLINK_NS + "/relationships";
-    public static final String REL_ASSOC_SOURCE = CMISLINK_NS + "/source";
-    public static final String REL_ASSOC_TARGET = CMISLINK_NS + "/target";
+    public static final String REL_ROOT_DESCENDANTS = CMISLINK_NS + "rootdescendants";
+    public static final String REL_TYPES_DESCENDANTS = CMISLINK_NS + "typesdescendants";
+    public static final String REL_FOLDER_TREE = CMISLINK_NS + "foldertree";
+    public static final String REL_ALLOWABLE_ACTIONS = CMISLINK_NS + "allowableactions";
+    public static final String REL_POLICIES = CMISLINK_NS + "policies";
+    public static final String REL_RELATIONSHIPS = CMISLINK_NS + "relationships";
+    public static final String REL_ASSOC_SOURCE = CMISLINK_NS + "source";
+    public static final String REL_ASSOC_TARGET = CMISLINK_NS + "target";
 
     // CMIS Nested feed
     public static final QName CHILDREN = new QName(CMISRA_NS, "children");




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r826096 - /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091016212855.A767C23888E7@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091016212855-A767C23888E7@eris-apache-org%3e</id>
<updated>2009-10-16T21:28:55Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Fri Oct 16 21:28:55 2009
New Revision: 826096

URL: http://svn.apache.org/viewvc?rev=826096&amp;view=rev
Log:
Only trace response validation messages when request/response tracing is enabled.

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java?rev=826096&amp;r1=826095&amp;r2=826096&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/client/CMISClient.java
Fri Oct 16 21:28:55 2009
@@ -422,7 +422,9 @@
                 
                 if (mimetypeValidator != null) {
                     try {
-                        messageWriter.trace("Validating response of content type " + contentType);
+                        if (traceConnection) {
+                            messageWriter.trace("Validating response of content type " +
contentType);
+                        }
                         
                         String resXML = res.getContentAsString();
                         assertValid(resXML, mimetypeValidator);




</pre>
</div>
</content>
</entry>
<entry>
<title>svn commit: r826012 - in /incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub: fixture/CMISTestFixture.java test/spec/UpdateTest.java</title>
<author><name>dcaruana@apache.org</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/incubator-chemistry-commits/200910.mbox/%3c20091016173653.B3C45238885D@eris.apache.org%3e"/>
<id>urn:uuid:%3c20091016173653-B3C45238885D@eris-apache-org%3e</id>
<updated>2009-10-16T17:36:53Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Author: dcaruana
Date: Fri Oct 16 17:36:53 2009
New Revision: 826012

URL: http://svn.apache.org/viewvc?rev=826012&amp;view=rev
Log:
Tidy up of UpdateTests.

Modified:
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/fixture/CMISTestFixture.java
    incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/fixture/CMISTestFixture.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/fixture/CMISTestFixture.java?rev=826012&amp;r1=826011&amp;r2=826012&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/fixture/CMISTestFixture.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/fixture/CMISTestFixture.java
Fri Oct 16 17:36:53 2009
@@ -112,7 +112,7 @@
 
         // do deeper, if required
         if (depth &gt; 0) {
-            String folderName = name + " (depth " + (0 - depth) + ")";
+            String folderName = name + " (child)";
             Entry subFolder = client.createFolder(childrenLink.getHref(), folderName, folderTemplate);
             folderEntry.children.add(createTree(entry, subFolder, depth - 1, docCount, folderTemplate,
docTemplate));
         }

Modified: incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java?rev=826012&amp;r1=826011&amp;r2=826012&amp;view=diff
==============================================================================
--- incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java
(original)
+++ incubator/chemistry/trunk/chemistry/chemistry-tck-atompub/src/main/java/org/apache/chemistry/tck/atompub/test/spec/UpdateTest.java
Fri Oct 16 17:36:53 2009
@@ -24,7 +24,6 @@
 import org.apache.chemistry.abdera.ext.CMISConstants;
 import org.apache.chemistry.tck.atompub.TCKTest;
 import org.apache.chemistry.tck.atompub.http.GetRequest;
-import org.apache.chemistry.tck.atompub.http.PatchRequest;
 import org.apache.chemistry.tck.atompub.http.PutRequest;
 import org.apache.chemistry.tck.atompub.http.Request;
 import org.apache.chemistry.tck.atompub.http.Response;




</pre>
</div>
</content>
</entry>
</feed>
