blob: 94567687dea9dfa0a4d73eb6e6c23cad3c32d006 [file] [log] [blame]
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:cmis="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" elementFormDefault="qualified" targetNamespace="http://docs.oasis-open.org/ns/cmis/core/200908/" version="1.0" jaxb:extensionBindingPrefixes="xjc" jaxb:version="2.1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="enumDecimalPrecision">
<xs:restriction base="xs:integer">
<xs:enumeration value="32" />
<xs:enumeration value="64" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumContentStreamAllowed">
<xs:restriction base="xs:string">
<xs:enumeration value="notallowed" />
<xs:enumeration value="allowed" />
<xs:enumeration value="required" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumCardinality">
<xs:restriction base="xs:string">
<xs:enumeration value="single" />
<xs:enumeration value="multi" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumUpdatability">
<xs:restriction base="xs:string">
<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">
<xs:restriction base="xs:string">
<xs:enumeration value="boolean" />
<xs:enumeration value="id" />
<xs:enumeration value="integer" />
<xs:enumeration value="datetime" />
<xs:enumeration value="decimal" />
<xs:enumeration value="html" />
<xs:enumeration value="string" />
<xs:enumeration value="uri" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumBaseObjectTypeIds">
<xs:restriction base="xs:string">
<xs:enumeration value="cmis:document" />
<xs:enumeration value="cmis:folder" />
<xs:enumeration value="cmis:relationship" />
<xs:enumeration value="cmis:policy" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumCapabilityQuery">
<xs:restriction base="xs:string">
<xs:enumeration value="none" />
<xs:enumeration value="metadataonly" />
<xs:enumeration value="fulltextonly" />
<xs:enumeration value="bothseparate" />
<xs:enumeration value="bothcombined" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumCapabilityJoin">
<xs:restriction base="xs:string">
<xs:enumeration value="none" />
<xs:enumeration value="inneronly" />
<xs:enumeration value="innerandouter" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumCapabilityContentStreamUpdates">
<xs:restriction base="xs:string">
<xs:enumeration value="anytime" />
<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="enumUnfileObject">
<xs:restriction base="xs:string">
<xs:enumeration value="unfile" />
<xs:enumeration value="deletesinglefiled" />
<xs:enumeration value="delete" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumRelationshipDirection">
<xs:restriction base="xs:string">
<xs:enumeration value="source" />
<xs:enumeration value="target" />
<xs:enumeration value="either" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumIncludeRelationships">
<xs:restriction base="xs:string">
<xs:enumeration value="none" />
<xs:enumeration value="source" />
<xs:enumeration value="target" />
<xs:enumeration value="both" />
</xs:restriction>
</xs:simpleType>
<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: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:restriction>
</xs:simpleType>
<xs:simpleType name="enumPropertiesFolder">
<xs:restriction base="xs:string">
<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:restriction>
</xs:simpleType>
<xs:simpleType name="enumPropertiesPolicy">
<xs:restriction base="xs:string">
<xs:enumeration value="cmis:policyText" />
</xs:restriction>
</xs:simpleType>
<xs:attributeGroup name="cmisUndefinedAttribute">
<xs:anyAttribute namespace="##other" processContents="lax" />
</xs:attributeGroup>
<xs:complexType name="cmisObjectType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="properties" type="cmis:cmisPropertiesType" />
<xs:element minOccurs="0" maxOccurs="1" name="allowableActions" type="cmis:cmisAllowableActionsType" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="relationship" type="cmis:cmisObjectType" />
<xs:element minOccurs="0" maxOccurs="1" name="changeEventInfo" type="cmis:cmisChangeEventType" />
<xs:element minOccurs="0" maxOccurs="1" name="acl" type="cmis:cmisAccessControlListType" />
<xs:element minOccurs="0" maxOccurs="1" name="exactACL" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="policyIds" type="cmis:cmisListOfIdsType" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="rendition" type="cmis:cmisRenditionType" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:attribute name="key" type="xs:string" />
<xs:attribute name="index" type="xs:integer" />
<xs:complexType name="cmisPropertiesType">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:appinfo>
<jaxb:property name="property" xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" />
</xs:appinfo>
</xs:annotation>
<xs:element name="propertyBoolean" nillable="true" type="cmis:cmisPropertyBoolean" />
<xs:element name="propertyId" nillable="true" type="cmis:cmisPropertyId" />
<xs:element name="propertyInteger" nillable="true" type="cmis:cmisPropertyInteger" />
<xs:element name="propertyDateTime" nillable="true" type="cmis:cmisPropertyDateTime" />
<xs:element name="propertyDecimal" nillable="true" type="cmis:cmisPropertyDecimal" />
<xs:element name="propertyHtml" nillable="true" type="cmis:cmisPropertyHtml" />
<xs:element name="propertyString" nillable="true" type="cmis:cmisPropertyString" />
<xs:element name="propertyUri" nillable="true" type="cmis:cmisPropertyUri" />
</xs:choice>
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:complexType name="cmisProperty">
<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">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisProperty">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="value" type="xs:boolean" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyId">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisProperty">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="value" type="xs:string" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyInteger">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisProperty">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="value" type="xs:integer" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyDateTime">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisProperty">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="value" type="xs:dateTime" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyDecimal">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisProperty">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="value" type="xs:decimal" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyHtml">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisProperty">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="value" type="xs:string" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyString">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisProperty">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="value" type="xs:string" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyUri">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisProperty">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="value" type="xs:anyURI" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisChoice">
<xs:attribute name="displayName" use="required" />
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:complexType name="cmisChoiceBoolean">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisChoice">
<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>
</xs:complexType>
<xs:complexType name="cmisChoiceId">
<xs:complexContent mixed="false">
<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:cmisChoiceId" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisChoiceInteger">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisChoice">
<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>
</xs:complexType>
<xs:complexType name="cmisChoiceDateTime">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisChoice">
<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>
</xs:complexType>
<xs:complexType name="cmisChoiceDecimal">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisChoice">
<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>
</xs:complexType>
<xs:complexType name="cmisChoiceHtml">
<xs:complexContent mixed="false">
<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:cmisChoiceHtml" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisChoiceString">
<xs:complexContent mixed="false">
<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>
</xs:complexType>
<xs:complexType name="cmisChoiceUri">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisChoice">
<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="cmisAllowableActionsType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="canDeleteObject" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canUpdateProperties" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetFolderTree" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetProperties" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetObjectRelationships" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetObjectParents" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetFolderParent" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetDescendants" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canMoveObject" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canDeleteContentStream" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canCheckOut" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canCancelCheckOut" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canCheckIn" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canSetContentStream" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetAllVersions" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canAddObjectToFolder" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canRemoveObjectFromFolder" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetContentStream" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canApplyPolicy" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetAppliedPolicies" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canRemovePolicy" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetChildren" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canCreateDocument" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canCreateFolder" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canCreateRelationship" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canDeleteTree" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetRenditions" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canGetACL" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="canApplyACL" type="xs:boolean" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:complexType name="cmisListOfIdsType">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="unbounded" name="id" type="xs:string" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:complexType name="cmisPropertyDefinitionType">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="id" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="localName" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="localNamespace" type="xs:anyURI" />
<xs:element minOccurs="0" maxOccurs="1" name="displayName" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="queryName" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="description" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="propertyType" type="cmis:enumPropertyType" />
<xs:element minOccurs="1" maxOccurs="1" name="cardinality" type="cmis:enumCardinality" />
<xs:element minOccurs="1" maxOccurs="1" name="updatability" type="cmis:enumUpdatability" />
<xs:element minOccurs="0" maxOccurs="1" name="inherited" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="required" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="queryable" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="orderable" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="openChoice" type="xs:boolean" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:complexType name="cmisPropertyBooleanDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisPropertyDefinitionType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="defaultValue" type="cmis:cmisPropertyBoolean" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="choice" type="cmis:cmisChoiceBoolean" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyIdDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisPropertyDefinitionType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="defaultValue" type="cmis:cmisPropertyId" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="choice" type="cmis:cmisChoiceId" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyIntegerDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisPropertyDefinitionType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="defaultValue" type="cmis:cmisPropertyInteger" />
<xs:element minOccurs="0" maxOccurs="1" name="maxValue" type="xs:integer" />
<xs:element minOccurs="0" maxOccurs="1" name="minValue" type="xs:integer" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="choice" type="cmis:cmisChoiceInteger" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyDateTimeDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisPropertyDefinitionType">
<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" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyDecimalDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisPropertyDefinitionType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="defaultValue" type="cmis:cmisPropertyDecimal" />
<xs:element minOccurs="0" maxOccurs="1" name="maxValue" type="xs:decimal" />
<xs:element minOccurs="0" maxOccurs="1" name="minValue" type="xs:decimal" />
<xs:element minOccurs="0" maxOccurs="1" name="precision" type="cmis:enumDecimalPrecision" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="choice" type="cmis:cmisChoiceDecimal" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyHtmlDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisPropertyDefinitionType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="defaultValue" type="cmis:cmisPropertyHtml" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="choice" type="cmis:cmisChoiceHtml" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyStringDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisPropertyDefinitionType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="defaultValue" type="cmis:cmisPropertyString" />
<xs:element minOccurs="0" maxOccurs="1" name="maxLength" type="xs:integer" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="choice" type="cmis:cmisChoiceString" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisPropertyUriDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisPropertyDefinitionType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="1" name="defaultValue" type="cmis:cmisPropertyUri" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="choice" type="cmis:cmisChoiceUri" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisTypeDefinitionType">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="id" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="localName" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="localNamespace" nillable="true" type="xs:anyURI" />
<xs:element minOccurs="0" maxOccurs="1" name="displayName" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="queryName" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="description" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="baseId" type="cmis:enumBaseObjectTypeIds" />
<xs:element minOccurs="0" maxOccurs="1" name="parentId" type="xs:string">
<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>
<xs:element minOccurs="1" maxOccurs="1" name="creatable" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="fileable" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="queryable" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="fulltextIndexed" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" default="true" name="includedInSupertypeQuery" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="controllablePolicy" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="controllableACL" type="xs:boolean" />
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:appinfo>
<jaxb:property name="propertyDefinition" />
</xs:appinfo>
</xs:annotation>
<xs:element name="propertyBooleanDefinition" type="cmis:cmisPropertyBooleanDefinitionType" />
<xs:element name="propertyDateTimeDefinition" type="cmis:cmisPropertyDateTimeDefinitionType" />
<xs:element name="propertyDecimalDefinition" type="cmis:cmisPropertyDecimalDefinitionType" />
<xs:element name="propertyIdDefinition" type="cmis:cmisPropertyIdDefinitionType" />
<xs:element name="propertyIntegerDefinition" type="cmis:cmisPropertyIntegerDefinitionType" />
<xs:element name="propertyHtmlDefinition" type="cmis:cmisPropertyHtmlDefinitionType" />
<xs:element name="propertyStringDefinition" type="cmis:cmisPropertyStringDefinitionType" />
<xs:element name="propertyUriDefinition" type="cmis:cmisPropertyUriDefinitionType" />
</xs:choice>
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:complexType name="cmisTypeDocumentDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisTypeDefinitionType">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="versionable" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="contentStreamAllowed" type="cmis:enumContentStreamAllowed" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisTypeFolderDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisTypeDefinitionType">
<xs:sequence />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisTypeRelationshipDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisTypeDefinitionType">
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="allowedSourceTypes" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="allowedTargetTypes" type="xs:string" />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisTypePolicyDefinitionType">
<xs:complexContent mixed="false">
<xs:extension base="cmis:cmisTypeDefinitionType">
<xs:sequence />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cmisQueryType">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="statement" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="searchAllVersions" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="includeAllowableActions" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="1" name="includeRelationships" type="cmis:enumIncludeRelationships" />
<xs:element minOccurs="0" maxOccurs="1" name="renditionFilter" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="maxItems" type="xs:integer" />
<xs:element minOccurs="0" maxOccurs="1" name="skipCount" type="xs:integer" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:complexType name="cmisRepositoryInfoType">
<xs:sequence minOccurs="1">
<xs:element minOccurs="1" maxOccurs="1" name="repositoryId" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="repositoryName" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="repositoryDescription" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="vendorName" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="productName" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="productVersion" type="xs:string" />
<xs:element name="rootFolderId" type="xs:string" />
<xs:element minOccurs="0" name="latestChangeLogToken" type="xs:string" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilities" type="cmis:cmisRepositoryCapabilitiesType" />
<xs:element minOccurs="0" maxOccurs="1" name="aclCapability" type="cmis:cmisACLCapabilityType" />
<xs:element minOccurs="1" maxOccurs="1" name="cmisVersionSupported" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="thinClientURI" type="xs:anyURI" />
<xs:element minOccurs="0" maxOccurs="1" name="changesIncomplete" type="xs:boolean" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="changesOnType" type="cmis:enumBaseObjectTypeIds" />
<xs:element minOccurs="0" maxOccurs="1" name="principalAnonymous" type="xs:string">
<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 minOccurs="0" maxOccurs="1" name="principalAnyone" type="xs:string">
<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 minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:complexType name="cmisRepositoryCapabilitiesType">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="capabilityACL" type="cmis:enumCapabilityACL" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityAllVersionsSearchable" type="xs:boolean" />
<xs:element name="capabilityChanges" type="cmis:enumCapabilityChanges" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityContentStreamUpdatability" type="cmis:enumCapabilityContentStreamUpdates" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityGetDescendants" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityGetFolderTree" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityMultifiling" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityPWCSearchable" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityPWCUpdatable" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityQuery" type="cmis:enumCapabilityQuery" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityRenditions" type="cmis:enumCapabilityRendition" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityUnfiling" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityVersionSpecificFiling" type="xs:boolean" />
<xs:element minOccurs="1" maxOccurs="1" name="capabilityJoin" type="cmis:enumCapabilityJoin" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="skip" />
</xs:sequence>
<xs:attributeGroup ref="cmis:cmisUndefinedAttribute" />
</xs:complexType>
<xs:simpleType name="enumTypeOfChanges">
<xs:restriction base="xs:string">
<xs:enumeration value="created" />
<xs:enumeration value="updated" />
<xs:enumeration value="deleted" />
<xs:enumeration value="security" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumCapabilityChanges">
<xs:restriction base="xs:string">
<xs:enumeration value="none" />
<xs:enumeration value="objectidsonly" />
<xs:enumeration value="properties" />
<xs:enumeration value="all" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="cmisChangeEventType">
<xs:sequence>
<xs:element name="changeType" type="cmis:enumTypeOfChanges" />
<xs:element name="changeTime" type="xs:dateTime" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="enumACLPropagation">
<xs:restriction base="xs:string">
<xs:enumeration value="repositorydetermined" />
<xs:enumeration value="objectonly" />
<xs:enumeration value="propagate" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumCapabilityACL">
<xs:restriction base="xs:string">
<xs:enumeration value="none" />
<xs:enumeration value="discover" />
<xs:enumeration value="manage" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumBasicPermissions">
<xs:restriction base="xs:string">
<xs:enumeration value="cmis:read" />
<xs:enumeration value="cmis:write" />
<xs:enumeration value="cmis:all" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="cmisPermissionDefinition">
<xs:sequence>
<xs:element name="permission" type="xs:string" />
<xs:element minOccurs="0" maxOccurs="1" name="description" type="xs:string" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="cmisPermissionMapping">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" name="key" type="cmis:enumAllowableActionsKey" />
<xs:element minOccurs="1" maxOccurs="unbounded" name="permission" type="xs:string">
<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 minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="enumAllowableActionsKey">
<xs:restriction base="xs:string">
<xs:enumeration value="canGetDescendents.Folder" />
<xs:enumeration value="canGetChildren.Folder" />
<xs:enumeration value="canGetParents.Folder" />
<xs:enumeration value="canGetFolderParent.Object" />
<xs:enumeration value="canCreateDocument.Folder" />
<xs:enumeration value="canCreateFolder.Folder" />
<xs:enumeration value="canCreateRelationship.Source" />
<xs:enumeration value="canCreateRelationship.Target" />
<xs:enumeration value="canGetProperties.Object" />
<xs:enumeration value="canViewContent.Object" />
<xs:enumeration value="canUpdateProperties.Object" />
<xs:enumeration value="canMove.Object" />
<xs:enumeration value="canMove.Target" />
<xs:enumeration value="canMove.Source" />
<xs:enumeration value="canDelete.Object" />
<xs:enumeration value="canDeleteTree.Folder" />
<xs:enumeration value="canSetContent.Document" />
<xs:enumeration value="canDeleteContent.Document" />
<xs:enumeration value="canAddToFolder.Object" />
<xs:enumeration value="canAddToFolder.Folder" />
<xs:enumeration value="canRemoveFromFolder.Object" />
<xs:enumeration value="canRemoveFromFolder.Folder" />
<xs:enumeration value="canCheckout.Document" />
<xs:enumeration value="canCancelCheckout.Document" />
<xs:enumeration value="canCheckin.Document" />
<xs:enumeration value="canGetAllVersions.VersionSeries" />
<xs:enumeration value="canGetObjectRelationships.Object" />
<xs:enumeration value="canAddPolicy.Object" />
<xs:enumeration value="canAddPolicy.Policy" />
<xs:enumeration value="canRemovePolicy.Object" />
<xs:enumeration value="canRemovePolicy.Policy" />
<xs:enumeration value="canGetAppliedPolicies.Object" />
<xs:enumeration value="canGetACL.Object" />
<xs:enumeration value="canApplyACL.Object" />
</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>
<xs:complexType name="cmisAccessControlPrincipalType">
<xs:sequence>
<xs:element name="principalId" type="xs:string" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="cmisAccessControlEntryType">
<xs:sequence>
<xs:element name="principal" type="cmis:cmisAccessControlPrincipalType" />
<xs:element minOccurs="1" maxOccurs="unbounded" name="permission" type="xs:string" />
<xs:element name="direct" type="xs:boolean" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="cmisAccessControlListType">
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="unbounded" name="permission" type="cmis:cmisAccessControlEntryType" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="cmisACLCapabilityType">
<xs:sequence>
<xs:element name="supportedPermissions" type="cmis:enumSupportedPermissions" />
<xs:element name="propagation" type="cmis:enumACLPropagation" />
<xs:element minOccurs="1" maxOccurs="unbounded" name="permissions" type="cmis:cmisPermissionDefinition" />
<xs:element minOccurs="0" maxOccurs="unbounded" name="mapping" type="cmis:cmisPermissionMapping" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="enumSupportedPermissions">
<xs:restriction base="xs:string">
<xs:enumeration value="basic" />
<xs:enumeration value="repository" />
<xs:enumeration value="both" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumCapabilityRendition">
<xs:restriction base="xs:string">
<xs:enumeration value="none" />
<xs:enumeration value="read" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="enumRenditionKind">
<xs:restriction base="xs:string">
<xs:enumeration value="cmis:thumbnail" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="cmisRenditionType">
<xs:sequence>
<xs:element name="streamId" type="xs:string" />
<xs:element name="mimetype" type="xs:string" />
<xs:element name="length" type="xs:integer" />
<xs:element name="kind" type="xs:string" />
<xs:element minOccurs="0" name="title" type="xs:string" />
<xs:element minOccurs="0" name="height" type="xs:integer" />
<xs:element minOccurs="0" name="width" type="xs:integer" />
<xs:element minOccurs="0" name="renditionDocumentId" type="xs:string" />
<xs:any minOccurs="0" maxOccurs="unbounded" namespace="##other" processContents="lax" />
</xs:sequence>
</xs:complexType>
<xs:element name="allowableActions" type="cmis:cmisAllowableActionsType">
<xs:annotation>
<xs:documentation>
This is the root tag for a CMIS AllowableActions
Document Type
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="query" type="cmis:cmisQueryType">
<xs:annotation>
<xs:documentation>
This is the root tag for a CMIS Query Document Type
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="acl" type="cmis:cmisAccessControlListType">
<xs:annotation>
<xs:documentation>
This is the root tag for a CMIS ACL Document Type
</xs:documentation>
</xs:annotation>
</xs:element>
</xs:schema>