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