Die CRUL-DTD

Dieses Dokument enthält die Definition von CRUL als DTD. Wenn Sie wissen möchten, welche Elemente mit welchen Attributen CRUL unterstützt, so können Sie sie in diesem Dokument finden. Änderungen sind vorbehalten.

<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT cm-payload (cm-header, (cm-request+ | cm-response+))>
<!ATTLIST cm-payload
	payload-id CDATA #REQUIRED
	timestamp CDATA #REQUIRED
	cm.version CDATA #REQUIRED
>
<!ENTITY % cm.atom "#PCDATA">
<!ENTITY % cm.dictitem "dictitem">
<!ENTITY % cm.listitem "listitem">
<!ELEMENT listitem (%cm.atom; | %cm.listitem; | %cm.dictitem;)*>
<!ELEMENT dictitem (key, value)>
<!ELEMENT key (%cm.atom;)>
<!ELEMENT value (%cm.atom; | %cm.listitem; | %cm.dictitem;)*>
<!ENTITY % cm.date "
 (%cm.atom; |
  isoDateTime |
   systemConfigFormattedTime |
  userConfigFormattedTime)*
">
<!ENTITY % cm.logEntry "
 (logEntryId,
  execResult,
  execStart,
  execEnd)
">
<!ELEMENT cm-header (cm-sender, cm-receiver?, cm-authentication?)>
<!ELEMENT cm-sender EMPTY>
<!ATTLIST cm-sender
	sender-id CDATA #REQUIRED
	name CDATA #REQUIRED
>
<!ELEMENT cm-receiver EMPTY>
<!ATTLIST cm-receiver
	receiver-id CDATA #REQUIRED
	name CDATA #REQUIRED
>
<!ELEMENT cm-authentication EMPTY>
<!ATTLIST cm-authentication
	login CDATA #REQUIRED
	password CDATA #REQUIRED
	session CDATA #REQUIRED
>

<!ELEMENT cm-response (cm-code*)>
<!ATTLIST cm-response
	response-id CDATA #REQUIRED
	request-id CDATA #IMPLIED
	payload-id CDATA #IMPLIED
	success (true | false) #REQUIRED
>
<!ELEMENT cm-code ANY>
<!ATTLIST cm-code
	numeric CDATA #REQUIRED
	phrase CDATA #REQUIRED
>
<!ENTITY % cm.cm-request "
 (app-get) |
 (app-execute) |
 (attribute-create) |
 (attribute-types) |
 (attribute-getValidEditFieldKeys) |
 (attribute-where+, attribute-addEnumValues) |
 (attribute-where+, attribute-delete) |
 (attribute-where+, attribute-get) |
 (attribute-where+, attribute-description) |
 (attribute-where+, attribute-removeEnumValues) |
 (attribute-where+, attribute-set) |
 (attributeGroup-create) |
 (attributeGroup-where+, attributeGroup-addAttributes)|
 (attributeGroup-where+, attributeGroup-delete) |
 (attributeGroup-where+, attributeGroup-get) |
 (attributeGroup-where+, attributeGroup-description) |
 (attributeGroup-where+, attributeGroup-moveAttribute) |
 (attributeGroup-where+, attributeGroup-moveToIndex) |
 (attributeGroup-where+, attributeGroup-removeAttributes) |
 (attributeGroup-where+, attributeGroup-set) |
 (channel-create) |
 (channel-where+, channel-delete) |
 (channel-where+, channel-description) |
 (channel-where+, channel-get) |
 (channel-where+, channel-set) |
 (content-where+, content-addLinkTo) |
 (content-where+, content-delete) |
 (content-where+, content-get) |
 (content-where+, content-description) |
 (content-where+, content-load) |
 (content-where+, content-resolveRefs) |
 (content-where+, content-set) |
 (content-where+, content-debugExport) |
 (contentService-editedOverview) |
 (contentService-releasedOverview) |
 (customCommand-execute) |
 (group-create) |
 (group-where+, group-addUsers) |
 (group-where+, group-delete) |
 (group-where+, group-get) |
 (group-where+, group-description) |
 (group-where+, group-grantGlobalPermissions) |
 (group-where+, group-removeUsers) |
 (group-where+, group-revokeGlobalPermissions) |
 (group-where+, group-set) |
 (groupProxy-where+, groupProxy-get) |
 (incrExport-get) |
 (incrExport-getUpdateData) |
 (incrExport-removeUpdateRecords) |
 (incrExport-reset) |
 (job-create) |
 (job-listQueue) |
 (job-where+, job-cancel) |
 (job-where+, job-delete) |
 (job-where+, job-exec) |
 (job-where+, job-get) |
 (job-where+, job-getLogEntry) |
 (job-where+, job-getOutput) |
 (job-where+, job-description) |
 (job-where+, job-set) |
 (licenseManager-license) |
 (licenseManager-licenseExpirationDate) |
 (licenseManager-licenseType) |
 (licenseManager-loginCount) |
 (licenseManager-logins) |
 (licenseManager-logout) |
 (licenseManager-maxConcurrentUsers) |
 (link-create) |
 (link-where+, link-delete) |
 (link-where+, link-get) |
 (link-where+, link-description) |
 (link-where+, link-set) |
 (logEntry-where+, logEntry-delete) |
 (logEntry-where+, logEntry-get) |
 (obj-contentTypesForObjType) |
 (obj-generatePreview) |
 (obj-search+, obj-addComment) |
 (obj-search+, obj-commit) |
 (obj-search+, obj-copy) |
 (obj-search+, obj-create) |
 (obj-search+, obj-delete) |
 (obj-search+, obj-edit) |
 (obj-search+, obj-exportSubtree) |
 (obj-search+, obj-forward) |
 (obj-search+, obj-get) |
 (obj-search+, obj-description) |
 (obj-search+, obj-give) |
 (obj-search+, obj-mirror) |
 (obj-search+, obj-permissionGrantTo) |
 (obj-search+, obj-permissionRevokeFrom) |
 (obj-search+, obj-reject) |
 (obj-search+, obj-release) |
 (obj-search+, obj-removeActiveContents) |
 (obj-search+, obj-removeArchivedContents) |
 (obj-search+, obj-revert) |
 (obj-search+, obj-set) |
 (obj-search+, obj-sign) |
 (obj-search+, obj-take) |
 (obj-search+, obj-unrelease) |
 (obj-types) |
 (obj-where+, obj-addComment) |
 (obj-where+, obj-commit) |
 (obj-where+, obj-copy) |
 (obj-where+, obj-create) |
 (obj-where+, obj-delete) |
 (obj-where+, obj-edit) |
 (obj-where+, obj-exportSubtree) |
 (obj-where+, obj-forward) |
 (obj-where+, obj-get) |
 (obj-where+, obj-description) |
 (obj-where+, obj-give) |
 (obj-where+, obj-mirror) |
 (obj-where+, obj-permissionGrantTo) |
 (obj-where+, obj-permissionRevokeFrom) |
 (obj-where+, obj-reject) |
 (obj-where+, obj-release) |
 (obj-where+, obj-removeActiveContents) |
 (obj-where+, obj-removeArchivedContents) |
 (obj-where+, obj-revert) |
 (obj-where+, obj-set) |
 (obj-where+, obj-sign) |
 (obj-where+, obj-take) |
 (obj-where+, obj-unrelease) |
 (objClass-create) |
 (objClass-goodAvailableBlobEditorsForObjType) |
 (objClass-validAttributes) |
 (objClass-where+, objClass-delete) |
 (objClass-where+, objClass-get) |
 (objClass-where+, objClass-description) |
 (objClass-where+, objClass-set) |
 (systemConfig-formatDate) |
 (systemConfig-formatDateTime) |
 (systemConfig-getAttributes) |
 (systemConfig-getCounts) |
 (systemConfig-getElements) |
 (systemConfig-getKeys) |
 (systemConfig-getTexts) |
 (systemConfig-parseInputDate) |
 (systemConfig-installedLanguages) |
 (systemConfig-validInputCharsets) |
 (systemConfig-validTimeZones) |
 (task-where+, task-get) |
 (task-where+, task-description) |
 (user-create) |
 (user-where+, user-addToGroups) |
 (user-where+, user-delete) |
 (user-where+, user-get) |
 (user-where+, user-description) |
 (user-where+, user-grantGlobalPermissions) |
 (user-where+, user-removeFromGroups) |
 (user-where+, user-revokeGlobalPermissions) |
 (user-where+, user-set) |
 (user-writeUserFile) |
 (userAttribute-create) |
 (userAttribute-types) |
 (userAttribute-where+, userAttribute-addEnumValues) |
 (userAttribute-where+, userAttribute-delete) |
 (userAttribute-where+, userAttribute-get) |
 (userAttribute-where+, userAttribute-description) |
 (userAttribute-where+, userAttribute-removeEnumValues) |
 (userAttribute-where+, userAttribute-set) |
 (userConfig-getAll) |
 (userConfig-formatDate) |
 (userConfig-formatDateTime) |
 (userConfig-getAttributes) |
 (userConfig-getCounts) |
 (userConfig-getElements) |
 (userConfig-getKeys) |
 (userConfig-getTexts) |
 (userConfig-parseInputDate) |
 (userConfig-removeAttributes) |
 (userConfig-removeKeys) |
 (userConfig-setAttributes) |
 (userConfig-setElements) |
 (userConfig-setTexts) |
 (userProxy-where+, userProxy-get) |
 (workflow-create) |
 (workflow-where+, workflow-delete) |
 (workflow-where+, workflow-get) |
 (workflow-where+, workflow-description) |
 (workflow-where+, workflow-set)
">

<!ELEMENT cm-request (%cm.cm-request;)>
<!ATTLIST cm-request
	request-id CDATA #REQUIRED
	preclusive (true | false) "false"
>

<!ENTITY % cm.app-get "
 (appName |
  baseDir |
  binDir |
  configDir |
  dataDir |
  debugChannels |
  debugLevel |
  getKeys |
  instanceDir |
  libDir |
  logDir |
  now |
  rootConfigPath |
  scriptDir |
  shareDir |
  timeZone |
  tmpDir |
  today |
  version)*
">
<!ENTITY % cm.app-execute "
 (command,
  arguments)
">
<!ENTITY % cm.attribute-addEnumValues "
 (listitem+)
">
<!ENTITY % cm.attribute-create "
 (callback |
  helpText |
  isSearchableInCM |
  isSearchableInTE |
  maxSize |
  minSize |
  name |
  title |
  type |
  values |
  wantedTags |
  editField)*
">
<!ENTITY % cm.attribute-delete "EMPTY">
<!ENTITY % cm.attribute-get "
 callback |
  displayTitle |
  displayValueCallback |
  editField |
  editFieldSpec |
  getKeys |
  helpText |
  isSearchableInCM |
  isSearchableInTE |
  localizedTitle |
  localizedHelpText |
  maxSize |
  minSize |
  name |
  setKeys |
  title |
  type |
  validEditFieldKeys |
  validEditFieldTypes |
  values |
  wantedTags
">
<!ENTITY % cm.attribute-getValidEditFieldKeys "(listitem)*">
<!ENTITY % cm.attribute-removeEnumValues "
 (listitem+)
">
<!ENTITY % cm.attribute-set "
 (callback |
  displayValueCallback |
  helpText |
  isSearchableInCM |
  isSearchableInTE |
  maxSize |
  minSize |
  title |
  type |
  values |
  wantedTags |
  editField)*
">
<!ENTITY % cm.attribute-types "(listitem)*">
<!ENTITY % cm.attribute-where "
 (name |
 (nameLike?,
  type?))?
">
<!ENTITY % cm.attributeGroup-addAttributes "(listitem)*">
<!ENTITY % cm.attributeGroup-create "
 (objClass,
  name,
  title?,
  index?)
">
<!ENTITY % cm.attributeGroup-delete "EMPTY">
<!ENTITY % cm.attributeGroup-get "
 attributes |
  displayTitle |
  localizedTitle |
  getKeys |
  index |
  isDefaultGroup |
  isEmpty |
  name |
  objClass |
  setKeys |
  title
">
<!ENTITY % cm.attributeGroup-moveAttribute "
 (attribute, index)
">
<!ENTITY % cm.attributeGroup-moveToIndex "
 (index)
">
<!ENTITY % cm.attributeGroup-removeAttributes "
 (listitem+)
">
<!ENTITY % cm.attributeGroup-set "
 (title)*
">
<!ENTITY % cm.attributeGroup-where "
 (objClass)
">
<!ENTITY % cm.channel-create "
 (name,
  title*)
">
<!ENTITY % cm.channel-delete "EMPTY">
<!ENTITY % cm.channel-get "
 (name |
  title)*
">
<!ENTITY % cm.channel-set "
 (name |
  title)*
">
<!ENTITY % cm.channel-where "
 (name |
  namePrefix)*
">
<!ENTITY % cm.content-addLinkTo "
 (attribute,
  destinationUrl)*
">
<!ENTITY % cm.content-delete "EMPTY">
<!ENTITY % cm.content-get "
  anchors |
  blob |
  blobLength |
  body |
  bodyTemplateName |
  codeForSourceView |
  contentType |
  displayTitle |
  editor |
  exportBlob |
  exportFiles |
  externalAttrNames |
  externalAttributes |
  frameNames |
  freeLinks |
  getKeys |
  id |
  isActive |
  isCommitted |
  isComplete |
  isEdited |
  isReleased |
  lastChanged |
  linkListAttributes |
  mimeType |
  nextEditGroup |
  nextSignGroup |
  objectId |
  reasonsForIncompleteState |
  relatedLinks |
  setKeys |
  signatureAttrNames |
  signatureAttributes |
  sortKey1 |
  sortKey2 |
  sortKey3 |
  sortKeyLength1 |
  sortKeyLength2 |
  sortKeyLength3 |
  sortOrder |
  sortType1 |
  sortType2 |
  sortType3 |
  subLinks |
  textLinks |
  thumbnail |
  title |
  validFrom |
  validSortKeys |
  validSortOrders |
  validSortTypes |
  validUntil |
  workflowComment |
  xmlBlob
">
<!ENTITY % cm.content-load "
 (blob |
  contentType |
  filter)*
">
<!ENTITY % cm.content-resolveRefs "EMPTY">
<!ENTITY % cm.content-set "
 (contentType |
  sortKey1 |
  sortKey2 |
  sortKey3 |
  sortKeyLength1 |
  sortKeyLength2 |
  sortKeyLength3 |
  sortOrder |
  sortType1 |
  sortType2 |
  sortType3 |
  title |
  validFrom |
  validUntil)*
">
<!ENTITY % cm.content-where "
 (id |
 (objectId , state))
">
<!ENTITY % cm.group-addUsers "
 (listitem+)
">
<!ENTITY % cm.group-create "
 (globalPermissions |
  name |
  owner |
  realName)*
">
<!ENTITY % cm.group-delete "EMPTY">
<!ENTITY % cm.group-get "
 displayTitle |
  getKeys |
  globalPermissions |
  hasGlobalPermission |
  users |
  name |
  owner |
  realName |
  setKeys
">
<!ENTITY % cm.group-grantGlobalPermissions "
 (listitem+)
">
<!ENTITY % cm.group-removeUsers "
 (listitem+)
">
<!ENTITY % cm.group-revokeGlobalPermissions "
 (listitem+)
">
<!ENTITY % cm.group-set "
 (globalPermissions |
  owner |
  realName |
  users)*
">
<!ENTITY % cm.group-where "
 (name |
  groupText)?
">
<!ENTITY % cm.incrExport-get "
 (getKeys |
  mode |
  updateRecords |
  updateRecordCount)*
">
<!ENTITY % cm.incrExport-getUpdateData "
 (updateData?)
">
<!ENTITY % cm.incrExport-removeUpdateRecords "
 (updateRecordId+ |
  all)
">
<!ENTITY % cm.incrExport-reset "EMPTY">
<!ENTITY % cm.job-cancel "EMPTY">
<!ENTITY % cm.job-create "
 (name,
  comment?,
  execLogin?,
  execPerm?,
  schedule?,
  script?,
  title?)
">
<!ENTITY % cm.job-delete "EMPTY">
<!ENTITY % cm.job-exec "EMPTY">
<!ENTITY % cm.job-get "
 (category |
  comment |
  displayTitle |
  execLogin |
  execPerm |
  getKeys |
  id |
  isActive |
  lastExecEnd |
  lastExecResult |
  lastExecStart |
  lastLogEntry |
  lastOutput |
  log |
  logEntries |
  name |
  nextExecStart |
  queuePos |
  schedule |
  script |
  setKeys |
  title)*
">
<!ENTITY % cm.job-getLogEntry "%cm.logEntry;">
<!ATTLIST job-getLogEntry
  id CDATA #REQUIRED
>
<!ENTITY % cm.job-getOutput "(%cm.atom;)">
<!ENTITY % cm.job-listQueue "(%cm.listitem;)*">
<!ATTLIST job-listQueue
  category CDATA #IMPLIED
>

<!ENTITY % cm.job-set "
 (comment |
  execLogin |
  execPerm |
  isActive |
  schedule |
  script |
  title)*
">
<!ENTITY % cm.job-where "
 (category |
  comment |
  execLogin |
  id |
  isActive |
  isQueued |
  name |
  title)*
">
<!ENTITY % cm.licenseManager-license "(%cm.atom;)">
<!ENTITY % cm.licenseManager-licenseExpirationDate "(%cm.atom;)">
<!ENTITY % cm.licenseManager-licenseType "(%cm.atom;)">
<!ENTITY % cm.licenseManager-loginCount "(%cm.atom;)">
<!ENTITY % cm.licenseManager-logins "(listitem*)">
<!ENTITY % cm.licenseManager-logout "EMPTY">
<!ENTITY % cm.licenseManager-maxConcurrentUsers "(%cm.atom;)">
<!ENTITY % cm.link-create "
 (attributeName |
  destinationUrl |
  sourceContent)*
">
<!ENTITY % cm.link-delete "EMPTY">
<!ENTITY % cm.link-get "
 (attributeName |
  canHaveAnchor |
  canHaveTarget |
  destination |
  destinationUrl |
  displayTitle |
  expectedPath |
  getKeys |
  id |
  isComplete |
  isExternalLink |
  isFreeLink |
  isIncludeLink |
  isInlineReferenceLink |
  isLinkFromCommittedContent |
  isLinkFromEditedContent |
  isLinkFromReleasedContent |
  isRelatedLink |
  isWritable |
  setKeys |
  source |
  sourceContent |
  sourceTagAttribute |
  sourceTagName |
  target |
  title)*
">
<!ENTITY % cm.link-set "
 (destinationUrl | attributeName |
  target |
  title)*
">
<!ENTITY % cm.link-where "
 (id?)
">
<!ENTITY % cm.logEntry-delete "(deleteLogEntriesCount?)">
<!ENTITY % cm.logEntry-get "
 (logTime |
  logText |
  logType |
  objectId |
  receiver |
  userLogin)*
">
<!ENTITY % cm.logEntry-where "
 (fromDate?,
  logText?,
  logTypes?,
  objectId?,
  receiver?,
  untilDate?,
  userLogin?)
">
<!ENTITY % cm.obj-commit "
 (comment)
">
<!ENTITY % cm.obj-contentTypesForObjType "(listitem*)">
<!ENTITY % cm.obj-copy "
 ((parent | name)+,
  recursive?)
">
<!ENTITY % cm.obj-create "
 (blob |
  contentType |
  file |
  filter |
  name |
  objClass |
  suppressExport |
  xmlBlob)*
">
<!ENTITY % cm.obj-deactivate "EMPTY">
<!ENTITY % cm.obj-delete "EMPTY">
<!ENTITY % cm.obj-edit "
 (comment,
  contentId?)
">
<!ENTITY % cm.obj-exportSubtree "
 (absoluteFsPrefix |
 absoluteUrlPrefix |
 exportCharset |
 filePrefix |
 templateName |
 purgeCollections)*
">
<!ENTITY % cm.obj-forward "
 (comment)
">
<!ENTITY % cm.obj-generatePreview "EMPTY">
<!ENTITY % cm.obj-get "
  archivedContents |
  children |
  committedContentId |
  contentIds |
  contents |
  editedContentId |
  editedContent |
  exportMimeType |
  getKeys |
  hasChildren |
  hasMirrors |
  hasSuperLinks |
  hierarchy |
  id |
  isCommitted |
  isEdited |
  isExportable |
  isMirror |
  isReleased |
  isRoot |
  isGoodDestination |
  isGoodParent |
  name |
  next |
  objClass |
  objType |
  objectsToRoot |
  parent |
  path |
  permission |
  permissionGrantedTo |
  prefixPath |
  previous |
  releasedContentId |
  releasedContent |
  releasedVersions |
  rootPermissionFor |
  setKeys |
  sortValue |
  superLinks |
  superObjects |
  suppressExport |
  toclist |
  validControlActionKeys |
  validCreateObjClasses |
  validObjClasses |
  validPermissions |
  version |
  visibleExportTemplates |
  visibleName |
  visiblePath |
  workflowName
">
<!ENTITY % cm.obj-give "(comment, (groupName | userLogin))">
<!ENTITY % cm.obj-mirror "
 (parent |
  name)*
">
<!ENTITY % cm.obj-permissionGrantTo "
 (group+)
">
<!ENTITY % cm.obj-permissionRevokeFrom "
 (group+)
">
<!ENTITY % cm.obj-reject "
 (comment)
">
<!ENTITY % cm.obj-release "
 (comment)
">
<!ENTITY % cm.obj-removeActiveContents "EMPTY">
<!ENTITY % cm.obj-removeArchivedContents "EMPTY">
<!ENTITY % cm.obj-revert "
 (comment)
">
<!ENTITY % cm.obj-search "
 (query |
  minRelevance |
  maxDocs |
  offsetStart |
  offsetLength |
  parser |
  collections)*
">
<!ENTITY % cm.obj-set "
 (suppressExport |
  name |
  objClass |
  parent |
  permission |
  workflowName)*
">
<!ENTITY % cm.obj-sign "
 (comment)
">
<!ENTITY % cm.obj-take "
 (comment)
">
<!ENTITY % cm.obj-types "(listitem)*">
<!ENTITY % cm.obj-unrelease "
 (comment)
">
<!ENTITY % cm.obj-where "
 (id |
  ids |
  path |
  parent |
  condition)*
">
<!ENTITY % cm.objClass-create "
 (attributes |
  bodyTemplateName |
  completionCheck |
  createPermission |
  externalEditExtension |
  externalEditMimeType |
  isEnabled |
  mandatoryAttributes |
  name |
  objType |
  presetAttributes |
  presetFromParentAttributes |
  recordSetCallback |
  title |
  validContentTypes |
  validSubObjClassCheck |
  validSubObjClasses |
  workflowModification)*
">
<!ENTITY % cm.objClass-delete "EMPTY">
<!ENTITY % cm.objClass-get "
 attributeGroups |
  attributes |
  availableBlobEditors |
  bodyTemplateName |
  completionCheck |
  createPermission |
  customBlobEditorUrl |
  defaultAttributeGroup |
  displayTitle |
  emptyAttributeGroups |
  externalEditExtension |
  externalEditMimeType |
  getKeys |
  goodAttributeGroupAttributes |
  goodAttributes |
  goodMandatoryAttributes |
  goodPresetAttributes |
  goodPresetFromParentAttributes |
  isEnabled |
  localizedTitle |
  mandatoryAttributes |
  name |
  objType |
  presetAttributes |
  presetFromParentAttributes |
  recordSetCallback |
  setKeys |
  title |
  validContentTypes |
  validSubObjClassCheck |
  validSubObjClasses |
  workflowModification |
  xmldtd
">
<!ENTITY % cm.objClass-goodAvailableBlobEditorsForObjType "(listitem*)">
<!ENTITY % cm.objClass-set "
 (attributes |
  availableBlobEditors |
  bodyTemplateName |
  completionCheck |
  createPermission |
  customBlobEditorUrl |
  externalEditExtension |
  externalEditMimeType |
  isEnabled |
  mandatoryAttributes |
  presetAttributes |
  presetFromParentAttributes |
  recordSetCallback |
  title |
  validContentTypes |
  validSubObjClassCheck |
  validSubObjClasses |
  workflowModification)*
">
<!ENTITY % cm.objClass-validAttributes "(listitem)*">
<!ENTITY % cm.objClass-where "
 (name |
 (nameLike?,
  isEnabled?,
  objType?))?
">
<!ENTITY % cm.systemConfig-getAttributes "(key, attributeNames?)">
<!ENTITY % cm.systemConfig-getCounts "(listitem+)">
<!ENTITY % cm.systemConfig-getElements "(listitem+)">
<!ENTITY % cm.systemConfig-getKeys "(listitem+)">
<!ENTITY % cm.systemConfig-getTexts "(listitem+)">
<!ENTITY % cm.systemConfig-installedLanguages "(listitem+)">
<!ENTITY % cm.systemConfig-validTimeZones "(listitem+)">
<!ENTITY % cm.systemConfig-validInputCharsets "(listitem+)">
<!ENTITY % cm.task-delete "EMPTY">
<!ENTITY % cm.task-get "
 (comment |
  displayTitle |
  getKeys |
  groupName |
  objectId |
  taskType |
  timeStamp |
  title |
  userLogin)*
">
<!ENTITY % cm.task-where "
 (id |
 (objectId,
  userLogin?,
  groupNames?,
  taskText?,
  taskType?))?
">
<!ENTITY % cm.user-addToGroups "
 (listitem+)
">
<!ENTITY % cm.user-create "
 (defaultGroup |
  encryptedPassword |
  email |
  globalPermissions |
  login |
  groups |
  owner |
  password |
  realName |
  userLocked)*
">
<!ENTITY % cm.user-delete "EMPTY">
<!ENTITY % cm.user-get "
 defaultGroup |
  displayTitle |
  encryptedPassword |
  email |
  externalUserAttrNames |
  getKeys |
  globalPermissions |
  groups |
  hasGlobalPermission |
  isSuperUser |
  isOwnerOf |
  hasPassword |
  login |
  owner |
  realName |
  setKeys |
  userLocked |
  externalAttrNames
">
<!ENTITY % cm.user-grantGlobalPermissions "
 (listitem+)
">
<!ENTITY % cm.user-removeFromGroups "
 (listitem+)
">
<!ENTITY % cm.user-revokeGlobalPermissions "
 (listitem+)
">
<!ENTITY % cm.user-set "
 (defaultGroup |
  encryptedPassword |
  email |
  globalPermissions |
  groups |
  owner |
  password |
  realName |
  userLocked)*
">
<!ENTITY % cm.user-where "
 (login |
  userText)
">
<!ENTITY % cm.user-writeUserFile "EMPTY">
<!ENTITY % cm.userAttribute-addEnumValues "
 (listitem+)
">
<!ENTITY % cm.userAttribute-create "
 (name |
  type)*
">
<!ENTITY % cm.userAttribute-delete "EMPTY">
<!ENTITY % cm.userAttribute-get "
 (displayTitle |
  getKeys |
  name |
  setKeys	 |
  type |
  values)*
">
<!ENTITY % cm.userAttribute-removeEnumValues "
 (listitem+)
">
<!ENTITY % cm.userAttribute-set "
 (type |
  values)*
">
<!ENTITY % cm.userAttribute-types "(listitem)*">
<!ENTITY % cm.userAttribute-where "
 (name |
 (nameLike?,
  type?))?
">
<!ENTITY % cm.userConfig-getAll "(%cm.atom;)">
<!ENTITY % cm.userConfig-getAttributes "(key, attributeNames?)">
<!ENTITY % cm.userConfig-getCounts "(listitem+)">
<!ENTITY % cm.userConfig-getElements "(listitem+)">
<!ENTITY % cm.userConfig-getKeys "(listitem+)">
<!ENTITY % cm.userConfig-getTexts "(listitem+)">
<!ENTITY % cm.userConfig-removeAttributes "(key, attributeNames?)">
<!ENTITY % cm.userConfig-removeKeys "(listitem*)">
<!ENTITY % cm.userConfig-setAttributes "(key, attributes?)">
<!ENTITY % cm.userConfig-setElements "(dictitem+)">
<!ENTITY % cm.userConfig-setTexts "(dictitem+)">
<!ENTITY % cm.workflow-create "
 (name,
  editGroups?,
  signatureDefs?,
  allowsMultipleSignatures?,
  isEnabled?,
  title?)
">
<!ENTITY % cm.workflow-delete "EMPTY">
<!ENTITY % cm.workflow-get "
 name |
  displayTitle |
  editGroups |
  signatureDefs |
  allowsMultipleSignatures |
  getKeys |
  isEnabled |
  setKeys |
  title
">
<!ENTITY % cm.workflow-set "
 (editGroups |
  signatureDefs |
  allowsMultipleSignatures |
  getKeys |
  isEnabled |
  setKeys |
  title)*
">
<!ENTITY % cm.workflow-where "
 (name |
  nameLike)*
">

<!ELEMENT app-get %cm.app-get;>
<!ELEMENT app-execute %cm.app-execute;>
<!ELEMENT attribute-addEnumValues %cm.attribute-addEnumValues;>
<!ELEMENT attribute-create %cm.attribute-create;>
<!ELEMENT attribute-delete %cm.attribute-delete;>
<!ELEMENT attribute-get (%cm.attribute-get;)*>
<!ELEMENT attribute-description (%cm.atom;)>
<!ELEMENT attribute-getValidEditFieldKeys %cm.attribute-getValidEditFieldKeys;>
<!ATTLIST attribute-getValidEditFieldKeys
	type CDATA #REQUIRED
>
<!ELEMENT attribute-removeEnumValues %cm.attribute-removeEnumValues;>
<!ELEMENT attribute-set %cm.attribute-set;>
<!ELEMENT attribute-types %cm.attribute-types;>
<!ELEMENT attribute-where %cm.attribute-where;>
<!ATTLIST attribute-where
    maxResults CDATA #IMPLIED
>
<!ELEMENT attributeGroup-addAttributes %cm.attributeGroup-addAttributes;>
<!ELEMENT attributeGroup-create %cm.attributeGroup-create;>
<!ELEMENT attributeGroup-delete %cm.attributeGroup-delete;>
<!ELEMENT attributeGroup-get (%cm.attributeGroup-get;)*>
<!ELEMENT attributeGroup-description (%cm.atom;)>
<!ELEMENT attributeGroup-moveAttribute %cm.attributeGroup-moveAttribute;>
<!ELEMENT attributeGroup-moveToIndex %cm.attributeGroup-moveToIndex;>
<!ELEMENT attributeGroup-removeAttributes %cm.attributeGroup-removeAttributes;>
<!ELEMENT attributeGroup-set %cm.attributeGroup-set;>
<!ELEMENT attributeGroup-where %cm.attributeGroup-where;>
<!ELEMENT channel-create %cm.channel-create;>
<!ELEMENT channel-delete %cm.channel-delete;>
<!ELEMENT channel-description (%cm.atom;)>
<!ELEMENT channel-get %cm.channel-get;>
<!ELEMENT channel-set %cm.channel-set;>
<!ELEMENT channel-where %cm.channel-where;>
<!ATTLIST channel-where
    maxResults CDATA #IMPLIED
>
<!ELEMENT content-addLinkTo %cm.content-addLinkTo;>
<!ELEMENT content-delete %cm.content-delete;>
<!ELEMENT content-get (%cm.content-get;)+>
<!ELEMENT content-description (%cm.atom;)>
<!ELEMENT content-load %cm.content-load;>
<!ELEMENT content-resolveRefs %cm.content-resolveRefs;>
<!ELEMENT content-set %cm.content-set;>
<!ELEMENT content-where %cm.content-where;>
<!ELEMENT contentService-editedOverview (%cm.atom;)>
<!ATTLIST contentService-editedOverview
    encoding (plain | base64 | stream) #IMPLIED
>
<!ELEMENT contentService-releasedOverview (%cm.atom;)>
<!ATTLIST contentService-releasedOverview
    encoding (plain | base64 | stream) #IMPLIED
>
<!ELEMENT customCommand-execute (command, arguments?)>
<!ELEMENT content-debugExport ANY>
<!ATTLIST content-debugExport 
  quoteHtml (true | false) "false"
  htmlPrefix CDATA #IMPLIED
  htmlSuffix CDATA #IMPLIED
  infoPrefix CDATA #IMPLIED
  infoSuffix CDATA #IMPLIED
  errorPrefix CDATA #IMPLIED
  errorSuffix CDATA #IMPLIED
  detailed (true | false) "false"
  preferEditedTemplates (true | false) #IMPLIED
  allowEditedContents (true | false) #IMPLIED 
  templateName CDATA #IMPLIED
>
<!ELEMENT group-addUsers %cm.group-addUsers;>
<!ELEMENT group-create %cm.group-create;>
<!ELEMENT group-delete %cm.group-delete;>
<!ELEMENT group-get (%cm.group-get;)>
<!ELEMENT group-description (%cm.atom;)>
<!ELEMENT group-grantGlobalPermissions %cm.group-grantGlobalPermissions;>
<!ELEMENT group-removeUsers %cm.group-removeUsers;>
<!ELEMENT group-revokeGlobalPermissions %cm.group-revokeGlobalPermissions;>
<!ELEMENT group-set %cm.group-set;>
<!ELEMENT group-where %cm.group-where;>
<!ATTLIST group-where
    maxResults CDATA #IMPLIED
>
<!ELEMENT groupProxy-get (%cm.group-get;)>
<!ELEMENT groupProxy-where %cm.group-where;>
<!ELEMENT incrExport-get %cm.incrExport-get;>
<!ELEMENT incrExport-getUpdateData %cm.incrExport-getUpdateData;>
<!ATTLIST incrExport-getUpdateData
	updateRecordId CDATA #REQUIRED
>
<!ELEMENT incrExport-removeUpdateRecords %cm.incrExport-removeUpdateRecords;>
<!ELEMENT incrExport-reset %cm.incrExport-reset;>
<!ELEMENT job-cancel %cm.job-cancel;>
<!ELEMENT job-create %cm.job-create;>
<!ELEMENT job-delete %cm.job-delete;>
<!ELEMENT job-exec %cm.job-exec;>
<!ELEMENT job-get %cm.job-get;>
<!ELEMENT job-getLogEntry %cm.job-getLogEntry;>
<!ELEMENT job-getOutput %cm.job-getOutput;>
<!ELEMENT job-description (%cm.atom;)>
<!ELEMENT job-listQueue %cm.job-listQueue;>
<!ELEMENT job-set %cm.job-set;>
<!ELEMENT licenseManager-license %cm.licenseManager-license;>
<!ELEMENT licenseManager-licenseExpirationDate %cm.licenseManager-licenseExpirationDate;>
<!ELEMENT licenseManager-licenseType %cm.licenseManager-licenseType;>
<!ELEMENT licenseManager-loginCount %cm.licenseManager-loginCount;>
<!ELEMENT licenseManager-logins %cm.licenseManager-logins;>
<!ELEMENT licenseManager-logout %cm.licenseManager-logout;>
<!ATTLIST licenseManager-logout
	login CDATA #IMPLIED
>
<!ELEMENT licenseManager-maxConcurrentUsers %cm.licenseManager-maxConcurrentUsers;>
<!ELEMENT job-where %cm.job-where;>
<!ATTLIST job-where
    maxResults CDATA #IMPLIED
>
<!ELEMENT link-create %cm.link-create;>
<!ELEMENT link-delete %cm.link-delete;>
<!ELEMENT link-get %cm.link-get;>
<!ELEMENT link-description (%cm.atom;)>
<!ELEMENT link-set %cm.link-set;>
<!ELEMENT link-where %cm.link-where;>
<!ELEMENT logEntry-delete %cm.logEntry-delete;>
<!ELEMENT logEntry-get %cm.logEntry-get;>
<!ELEMENT logEntry-where %cm.logEntry-where;>
<!ELEMENT obj-addComment (%cm.atom;)>
<!ELEMENT obj-commit %cm.obj-commit;>
<!ELEMENT obj-contentTypesForObjType %cm.obj-contentTypesForObjType;>
<!ATTLIST obj-contentTypesForObjType
	objType CDATA #IMPLIED
>
<!ELEMENT obj-copy %cm.obj-copy;>
<!ELEMENT obj-create %cm.obj-create;>
<!ELEMENT obj-delete %cm.obj-delete;>
<!ELEMENT obj-edit %cm.obj-edit;>
<!ELEMENT obj-exportSubtree %cm.obj-exportSubtree;>
<!ELEMENT obj-forward %cm.obj-forward;>
<!ELEMENT obj-generatePreview %cm.obj-generatePreview;>
<!ATTLIST obj-generatePreview
	fsPrefix CDATA #REQUIRED
	masterTemplate CDATA #REQUIRED
	mode (0|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15) #REQUIRED
	path CDATA #REQUIRED
	urlPrefix CDATA #REQUIRED
    editor CDATA #REQUIRED>
<!ELEMENT obj-get (%cm.obj-get;)*>
<!ELEMENT obj-description (%cm.atom;)>
<!ELEMENT obj-give %cm.obj-give;>
<!ELEMENT obj-mirror %cm.obj-mirror;>
<!ELEMENT obj-permissionGrantTo %cm.obj-permissionGrantTo;>
<!ATTLIST obj-permissionGrantTo
	permission (permissionCreateChildren | permissionWrite | permissionRead | permissionRoot) #REQUIRED
>
<!ELEMENT obj-permissionRevokeFrom %cm.obj-permissionRevokeFrom;>
<!ATTLIST obj-permissionRevokeFrom
	permission (permissionCreateChildren | permissionWrite | permissionRead | permissionRoot) #REQUIRED
>
<!ELEMENT obj-reject %cm.obj-reject;>
<!ELEMENT obj-release %cm.obj-release;>
<!ELEMENT obj-removeActiveContents %cm.obj-removeActiveContents;>
<!ELEMENT obj-removeArchivedContents %cm.obj-removeArchivedContents;>
<!ELEMENT obj-revert %cm.obj-revert;>
<!ELEMENT obj-search %cm.obj-search;>
<!ELEMENT obj-set %cm.obj-set;>
<!ELEMENT obj-sign %cm.obj-sign;>
<!ELEMENT obj-take %cm.obj-take;>
<!ELEMENT obj-types %cm.obj-types;>
<!ELEMENT obj-unrelease %cm.obj-unrelease;>
<!ELEMENT obj-where %cm.obj-where;>
<!ATTLIST obj-where
    maxResults CDATA #IMPLIED
>


<!ELEMENT objClass-create %cm.objClass-create;>
<!ELEMENT objClass-delete %cm.objClass-delete;>
<!ELEMENT objClass-get (%cm.objClass-get;)*>
<!ELEMENT objClass-description (%cm.atom;)>
<!ELEMENT objClass-goodAvailableBlobEditorsForObjType %cm.objClass-goodAvailableBlobEditorsForObjType;>
<!ATTLIST objClass-goodAvailableBlobEditorsForObjType
	objType CDATA #REQUIRED
>
<!ELEMENT objClass-set %cm.objClass-set;>
<!ELEMENT objClass-validAttributes %cm.objClass-validAttributes;>
<!ELEMENT objClass-where %cm.objClass-where;>
<!ATTLIST objClass-where
    maxResults CDATA #IMPLIED
>
<!ELEMENT systemConfig-formatDate (%cm.atom;)>
<!ELEMENT systemConfig-formatDateTime (%cm.atom;)>
<!ELEMENT systemConfig-getAttributes %cm.systemConfig-getAttributes;>
<!ELEMENT systemConfig-getCounts %cm.systemConfig-getCounts;>
<!ELEMENT systemConfig-getElements %cm.systemConfig-getElements;>
<!ELEMENT systemConfig-getKeys %cm.systemConfig-getKeys;>
<!ELEMENT systemConfig-getTexts %cm.systemConfig-getTexts;>
<!ELEMENT systemConfig-parseInputDate %cm.date;>
<!ELEMENT systemConfig-installedLanguages %cm.systemConfig-installedLanguages;>
<!ELEMENT systemConfig-validTimeZones %cm.systemConfig-validTimeZones;>
<!ELEMENT systemConfig-validInputCharsets %cm.systemConfig-validInputCharsets;>
<!ELEMENT task-delete %cm.task-delete;>
<!ELEMENT task-get %cm.task-get;>
<!ELEMENT task-description (%cm.atom;)>
<!ELEMENT task-where %cm.task-where;>
<!ATTLIST task-where
    maxResults CDATA #IMPLIED
>
<!ELEMENT user-addToGroups %cm.user-addToGroups;>
<!ELEMENT user-create %cm.user-create;>
<!ELEMENT user-delete %cm.user-delete;>
<!ELEMENT user-get (%cm.user-get;)*>
<!ELEMENT user-description (%cm.atom;)>
<!ELEMENT user-grantGlobalPermissions %cm.user-grantGlobalPermissions;>
<!ELEMENT user-removeFromGroups %cm.user-removeFromGroups;>
<!ELEMENT user-revokeGlobalPermissions %cm.user-revokeGlobalPermissions;>
<!ELEMENT user-set %cm.user-set;>
<!ELEMENT user-where %cm.user-where;>
<!ATTLIST user-where
    maxResults CDATA #IMPLIED
>
<!ELEMENT user-writeUserFile %cm.user-writeUserFile;>
<!ELEMENT userAttribute-addEnumValues %cm.userAttribute-addEnumValues;>
<!ELEMENT userAttribute-create %cm.userAttribute-create;>
<!ELEMENT userAttribute-delete %cm.userAttribute-delete;>
<!ELEMENT userAttribute-get %cm.userAttribute-get;>
<!ELEMENT userAttribute-description (%cm.atom;)>
<!ELEMENT userAttribute-removeEnumValues %cm.userAttribute-removeEnumValues;>
<!ELEMENT userAttribute-set %cm.userAttribute-set;>
<!ELEMENT userAttribute-where %cm.userAttribute-where;>
<!ATTLIST userAttribute-where
    maxResults CDATA #IMPLIED
>
<!ELEMENT userAttribute-types %cm.userAttribute-types;>
<!ELEMENT userConfig-getAll %cm.userConfig-getAll;>
<!ATTLIST userConfig-getAll
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-formatDate (%cm.atom;)>
<!ATTLIST userConfig-formatDate
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-formatDateTime (%cm.atom;)>
<!ATTLIST userConfig-formatDateTime
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-getAttributes %cm.userConfig-getAttributes;>
<!ATTLIST userConfig-getAttributes
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-getCounts %cm.userConfig-getCounts;>
<!ATTLIST userConfig-getCounts
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-getElements %cm.userConfig-getElements;>
<!ATTLIST userConfig-getElements
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-getKeys %cm.userConfig-getKeys;>
<!ATTLIST userConfig-getKeys
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-getTexts %cm.userConfig-getTexts;>
<!ATTLIST userConfig-getTexts
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-initFromFile (%cm.atom;)>
<!ATTLIST userConfig-initFromFile
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-parseInputDate %cm.date;>
<!ATTLIST userConfig-parseInputDate
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-removeAttributes %cm.userConfig-removeAttributes;>
<!ATTLIST userConfig-removeAttributes
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-removeKeys %cm.userConfig-removeKeys;>
<!ATTLIST userConfig-removeKeys
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-setAttributes %cm.userConfig-setAttributes;>
<!ATTLIST userConfig-setAttributes
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-setElements %cm.userConfig-setElements;>
<!ATTLIST userConfig-setElements
	login CDATA #IMPLIED
>
<!ELEMENT userConfig-setTexts %cm.userConfig-setTexts;>
<!ATTLIST userConfig-setTexts
	login CDATA #IMPLIED
>
<!ELEMENT userProxy-get (%cm.user-get;)*>
<!ELEMENT userProxy-where %cm.user-where;>
<!ELEMENT workflow-create %cm.workflow-create;>
<!ELEMENT workflow-delete %cm.workflow-delete;>
<!ELEMENT workflow-get (%cm.workflow-get;)*>
<!ELEMENT workflow-description (%cm.atom;)>
<!ELEMENT workflow-set %cm.workflow-set;>
<!ELEMENT workflow-where %cm.workflow-where;>
<!ATTLIST workflow-where
    maxResults CDATA #IMPLIED
>

<!ELEMENT attribute (%cm.atom; | %cm.attribute-get;)*>
<!ELEMENT attributeGroup (attribute | %cm.attributeGroup-get;)*>
<!ELEMENT content (%cm.content-get;)*>
<!ELEMENT group (%cm.atom; | %cm.group-get;)*>
<!ELEMENT job (%cm.job-get;)>
<!ELEMENT link (%cm.link-get;)>
<!ELEMENT obj (%cm.obj-get;)*>
<!ELEMENT objClass (%cm.atom; | %cm.objClass-get;)*>
<!ELEMENT updateData ANY>
<!ELEMENT user (%cm.atom; | %cm.user-get;)*>
<!ELEMENT userAttribute (%cm.userAttribute-get;)>
<!ELEMENT arguments (%cm.listitem;)*>
<!ELEMENT all (%cm.atom;)>
<!ELEMENT allowsMultipleSignatures (%cm.atom;)>
<!ELEMENT anchors (%cm.listitem;)*>
<!ELEMENT archivedContents ((content)* | (%cm.listitem;)*)>
<!ELEMENT attributeName (%cm.atom; | %cm.attribute-get;)*>
<!ELEMENT attributeNames (%cm.listitem;)*>
<!ELEMENT attributeGroups ((attributeGroup)* | (%cm.listitem;)*)>
<!ELEMENT attributes ((attribute)* | (%cm.listitem;)* | (dictitem)+)>
<!ELEMENT availableBlobEditors (%cm.listitem;)*>
<!ELEMENT blob (%cm.atom;)>
<!ATTLIST blob
    encoding (plain | base64 | stream) #IMPLIED
>
<!ELEMENT blobLength (%cm.atom;)>
<!ELEMENT body (%cm.atom;)>
<!ELEMENT bodyTemplateName (%cm.atom;)>
<!ELEMENT callback (%cm.atom;)>
<!ELEMENT canHaveAnchor (%cm.atom;)>
<!ELEMENT canHaveTarget (%cm.atom;)>
<!ELEMENT category (%cm.atom;)>
<!ELEMENT children ((obj)* | (%cm.listitem;)*)>
<!ELEMENT codeForSourceView (%cm.atom;)>
<!ATTLIST codeForSourceView
	objectPageUrl CDATA #REQUIRED
	linkPageUrl CDATA #REQUIRED
	useJavaScript CDATA #IMPLIED
>
<!ELEMENT collections (%cm.listitem;)>
<!ELEMENT command (%cm.atom;)>
<!ELEMENT comment (%cm.atom;)>
<!ELEMENT committedContentId (%cm.atom; | %cm.content-get;)*>
<!ELEMENT completionCheck (%cm.atom;)>
<!ELEMENT contentId (%cm.atom;)>
<!ELEMENT contentIds ((content)* | (%cm.listitem;)*)>
<!ELEMENT contents ((content)* | (%cm.listitem;)*)>
<!ELEMENT contentType (%cm.atom;)>
<!ELEMENT count (%cm.atom;)>
<!ELEMENT createPermission (%cm.atom;)>
<!ELEMENT customBlobEditorUrl (%cm.atom;)>
<!ELEMENT defaultAttributeGroup (%cm.atom; | attributeGroup)*>
<!ELEMENT defaultGroup (%cm.atom; | group)*>
<!ELEMENT deleteLogEntriesCount (%cm.atom;)>
<!ELEMENT description (%cm.atom;)>
<!ELEMENT destination (%cm.atom; | %cm.obj-get;)*>
<!ELEMENT destinationUrl (%cm.atom;)>
<!ELEMENT displayTitle (%cm.atom;)>
<!ATTLIST displayTitle
	type CDATA #IMPLIED
>
<!ELEMENT displayValueCallback (%cm.atom;)>
<!ELEMENT editField (%cm.atom;)>
<!ATTLIST editField
	parameter (length | maxlength | nilAllowed | objClasses | rows | startPub| type) #REQUIRED
>
<!ELEMENT editFieldSpec (%cm.atom; | %cm.dictitem;)*>
<!ELEMENT editGroups ((group)* | (%cm.listitem;)*)>
<!ELEMENT editedContent (%cm.atom; | %cm.content-get;)*>
<!ELEMENT editedContentId (%cm.atom; | %cm.content-get;)*>
<!ELEMENT editor (%cm.atom; | %cm.user-get;)*>
<!ELEMENT email (%cm.atom;)>
<!ELEMENT emptyAttributeGroups ((%cm.listitem;)* | (attributeGroup)*)>
<!ELEMENT encryptedPassword (%cm.atom;)>
<!ELEMENT execLogin (%cm.atom;)>
<!ELEMENT execPerm (%cm.atom;)>
<!ELEMENT expectedPath (%cm.atom;)>
<!ELEMENT exportBlob (%cm.atom;)>
<!ATTLIST exportBlob
    encoding (plain | base64 | stream) #IMPLIED
>
<!ELEMENT exportFiles (%cm.listitem;)*>
<!ELEMENT exportMimeType (%cm.atom;)>
<!ELEMENT externalAttrNames ((attribute)* | (%cm.listitem;)*)>
<!ELEMENT externalAttributes (%cm.dictitem;)*>
<!ELEMENT externalEditExtension (%cm.atom;)>
<!ELEMENT externalEditMimeType (%cm.atom;)>
<!ELEMENT externalUserAttrNames ((userAttribute)* | (%cm.listitem;)*)>
<!ELEMENT extractToDirectory (%cm.atom;)>
<!ELEMENT filter (%cm.atom;)>
<!ELEMENT file (%cm.atom;)>
<!ELEMENT filePrefix (%cm.atom;)>
<!ELEMENT frameNames (%cm.listitem;)*>
<!ELEMENT freeLinks ((link)* | (%cm.listitem;)*)>
<!ELEMENT fromDate (%cm.atom;)>
<!ELEMENT getKeys (%cm.listitem;)*>
<!ELEMENT globalPermissions (%cm.listitem;)*>
<!ELEMENT goodAttributeGroupAttributes ((%cm.listitem;)* | (attribute)*)>
<!ELEMENT goodAttributes ((%cm.listitem;)* | (attribute)*)>
<!ELEMENT goodMandatoryAttributes ((attribute)* | (%cm.listitem;)*)>
<!ELEMENT goodPresetAttributes ((attribute)* | (%cm.listitem;)*)>
<!ELEMENT goodPresetFromParentAttributes ((attribute)* | (%cm.listitem;)*)>
<!ELEMENT groupName (%cm.atom; | %cm.group-get;)*>
<!ELEMENT groupNames (%cm.listitem;)*>
<!ELEMENT groupText (%cm.atom;)>
<!ELEMENT groups ((group)* | (%cm.listitem;)*)>
<!ELEMENT hasChildren (%cm.atom;)>
<!ELEMENT hasGlobalPermission (%cm.atom;)>
<!ATTLIST hasGlobalPermission
	permission CDATA #REQUIRED
>
<!ELEMENT hasPassword (%cm.atom;)>
<!ATTLIST hasPassword
	password CDATA #REQUIRED
>
<!ELEMENT hasSuperLinks (%cm.atom;)>
<!ELEMENT helpText (%cm.atom;)>
<!ATTLIST helpText
	lang (en | de | it | fr | es) #IMPLIED
>
<!ELEMENT hierarchy (%cm.listitem;)*>
<!ATTLIST hierarchy
	maxDepth CDATA #IMPLIED
	maxLines CDATA #IMPLIED
	document (0 | 1) #IMPLIED
	generic (0 | 1) #IMPLIED
	image (0 | 1) #IMPLIED
	publication (0 | 1) #IMPLIED
	template (0 | 1) #IMPLIED
>
<!ELEMENT condition (%cm.atom; | %cm.listitem;)*>
<!ATTLIST condition
    subject CDATA #REQUIRED
    verb CDATA #REQUIRED
>
<!ELEMENT id (%cm.atom;)>
<!ELEMENT ids (%cm.atom; | %cm.listitem;)*>
<!ELEMENT index (%cm.atom;)>
<!ELEMENT inputType (%cm.atom;)>
<!ELEMENT isActive (%cm.atom;)>
<!ELEMENT isCommitted (%cm.atom;)>
<!ELEMENT isComplete (%cm.atom;)>
<!ELEMENT isDefaultGroup (%cm.atom;)>
<!ELEMENT isEdited (%cm.atom;)>
<!ELEMENT isEmpty (%cm.atom;)>
<!ELEMENT isEnabled (%cm.atom;)>
<!ELEMENT isExternalLink (%cm.atom;)>
<!ELEMENT isFreeLink (%cm.atom;)>
<!ELEMENT isGoodDestination (%cm.atom;)>
<!ATTLIST isGoodDestination
	linkId CDATA #REQUIRED
>
<!ELEMENT isGoodParent (%cm.atom;)>
<!ATTLIST isGoodParent
	objectId CDATA #REQUIRED
>
<!ELEMENT isIncludeLink (%cm.atom;)>
<!ELEMENT isInlineReferenceLink (%cm.atom;)>
<!ELEMENT isLinkFromCommittedContent (%cm.atom;)>
<!ELEMENT isLinkFromEditedContent (%cm.atom;)>
<!ELEMENT isLinkFromReleasedContent (%cm.atom;)>
<!ELEMENT isoDateTime (%cm.atom;)>
<!ELEMENT isOwnerOf (%cm.atom;)>
<!ATTLIST isOwnerOf
	login CDATA #REQUIRED
>
<!ELEMENT isQueued (%cm.atom;)>
<!ELEMENT isRelatedLink (%cm.atom;)>
<!ELEMENT isReleased (%cm.atom;)>
<!ELEMENT isRoot (%cm.atom;)>
<!ELEMENT isSearchableInCM (%cm.atom;)>
<!ELEMENT isSearchableInTE (%cm.atom;)>
<!ELEMENT isSuperUser (%cm.atom;)>
<!ELEMENT isWritable (%cm.atom;)>
<!ELEMENT lastChanged %cm.date;>
<!ATTLIST lastChanged
	type CDATA #IMPLIED
>
<!ELEMENT lastExecEnd %cm.date;>
<!ATTLIST lastExecEnd
	type CDATA #IMPLIED
>
<!ELEMENT lastExecResult (%cm.atom;)>
<!ELEMENT lastExecStart %cm.date;>
<!ATTLIST lastExecStart
	type CDATA #IMPLIED
>
<!ELEMENT lastLogEntry %cm.logEntry;>
<!ELEMENT lastOutput (%cm.atom;)>
<!ELEMENT linkListAttributes ((attribute)* | (%cm.listitem;)*)>
<!ELEMENT localizedTitle (%cm.atom;)>
<!ELEMENT localizedHelpText (%cm.atom;)>
<!ELEMENT log (%cm.listitem;)*>
<!ELEMENT logEntries (%cm.listitem;)*>
<!ELEMENT logEntryId (%cm.atom;)>
<!ELEMENT execResult (%cm.atom;)>
<!ELEMENT execStart %cm.date;>
<!ATTLIST execStart
    type CDATA #IMPLIED
>
<!ELEMENT execEnd %cm.date;>
<!ATTLIST execEnd
    type CDATA #IMPLIED
>
<!ELEMENT logText (%cm.atom;)>
<!ELEMENT logTime %cm.date;>
<!ELEMENT logType (%cm.atom;)>
<!ELEMENT logTypes (%cm.listitem;)*>
<!ELEMENT login (%cm.atom;)>
<!ELEMENT maxDocs (%cm.atom;)>
<!ELEMENT maxSize (%cm.atom;)*>
<!ELEMENT mandatoryAttributes ((attribute)* | (%cm.listitem;)*)>
<!ELEMENT method (%cm.atom;)>
<!ELEMENT mimeType (%cm.atom;)>
<!ELEMENT minRelevance (%cm.atom;)>
<!ELEMENT minSize (%cm.atom;)*>
<!ELEMENT mode (%cm.atom;)>
<!ELEMENT name (%cm.atom;)>
<!ATTLIST name
	type CDATA #IMPLIED
>
<!ELEMENT nameLike (%cm.atom;)>
<!ELEMENT namevalue (name, value)>
<!ELEMENT next (%cm.atom; | %cm.obj-get;)*>
<!ELEMENT nextEditGroup (%cm.atom; | %cm.group-get;)*>
<!ELEMENT nextExecStart %cm.date;>
<!ATTLIST nextExecStart
	type CDATA #IMPLIED
>
<!ELEMENT nextSignGroup (%cm.atom; | %cm.group-get;)*>
<!ELEMENT now %cm.date;>
<!ATTLIST now
	type CDATA #IMPLIED
>
<!ELEMENT today %cm.date;>
<!ELEMENT objClasses ((%cm.listitem;)* | (objClass)*)>
<!ELEMENT objType (%cm.atom;)>
<!ELEMENT objectId (%cm.atom; | %cm.obj-get;)*>
<!ELEMENT objectsToRoot ((obj)* | (%cm.listitem;)*)>
<!ELEMENT offsetStart (%cm.atom;)>
<!ELEMENT offsetLength (%cm.atom;)>
<!ELEMENT outputType (%cm.atom;)>
<!ELEMENT owner (%cm.atom; | %cm.user-get;)*>
<!ELEMENT parent (%cm.atom; | %cm.obj-get;)*>
<!ELEMENT parser (%cm.atom;)>
<!ELEMENT password (%cm.atom;)>
<!ELEMENT path (%cm.atom;)>
<!ELEMENT permission ((group)* | (%cm.listitem;)*)>
<!ATTLIST permission
	permission (permissionCreateChildren | permissionWrite | permissionRead | permissionRoot) #REQUIRED
>
<!ELEMENT permissionGrantedTo (%cm.atom;)>
<!ATTLIST permissionGrantedTo
	permission (permissionCreateChildren | permissionWrite | permissionRead | permissionRoot) #REQUIRED
	user CDATA #IMPLIED
	group CDATA #IMPLIED
>
<!ELEMENT prefixPath (%cm.atom;)>
<!ELEMENT presetAttributes (dictitem)*>
<!ELEMENT presetFromParentAttributes ((attribute)* | (%cm.listitem;)*)>
<!ELEMENT previous (%cm.atom; | %cm.obj-get;)*>
<!ELEMENT queuePos (%cm.atom;)>
<!ELEMENT query (%cm.atom;)>
<!ELEMENT realName (%cm.atom;)>
<!ELEMENT reasonsForIncompleteState (%cm.listitem;)*>
<!ELEMENT receiver (%cm.atom;)>
<!ELEMENT recordSetCallback (%cm.atom;)>
<!ELEMENT recursive (%cm.atom;)>
<!ELEMENT relatedLinks ((link)* | (%cm.listitem;)*)>
<!ELEMENT releasedContent (%cm.atom; | %cm.content-get;)*>
<!ELEMENT releasedContentId (%cm.atom; | %cm.content-get;)*>
<!ELEMENT releasedVersions ((content)* | (%cm.listitem;)*)>
<!ELEMENT rootPermissionFor (%cm.atom;)>
<!ATTLIST rootPermissionFor
	user CDATA #IMPLIED
	group CDATA #IMPLIED
>
<!ELEMENT schedule (%cm.listitem;)*>
<!ELEMENT script (%cm.atom;)>
<!ELEMENT setKeys (%cm.listitem;)*>
<!ELEMENT signatureAttrNames ((attribute)* | (%cm.listitem;)*)>
<!ELEMENT signatureAttributes (namevalue)*>
<!ELEMENT signatureDefs (%cm.dictitem;)*>
<!ELEMENT sortKey1 (%cm.atom;)>
<!ELEMENT sortKey2 (%cm.atom;)>
<!ELEMENT sortKey3 (%cm.atom;)>
<!ELEMENT sortKeyLength1 (%cm.atom;)>
<!ELEMENT sortKeyLength2 (%cm.atom;)>
<!ELEMENT sortKeyLength3 (%cm.atom;)>
<!ELEMENT sortOrder (%cm.atom;)>
<!ELEMENT sortType1 (%cm.atom;)>
<!ELEMENT sortType2 (%cm.atom;)>
<!ELEMENT sortType3 (%cm.atom;)>
<!ELEMENT sortValue (%cm.atom;)>
<!ELEMENT source (%cm.atom; | %cm.obj-get;)*>
<!ELEMENT sourceContent (%cm.atom; | %cm.content-get;)*>
<!ELEMENT sourceTagAttribute (%cm.atom;)>
<!ELEMENT sourceTagName (%cm.atom;)>
<!ELEMENT state (%cm.atom;)>
<!ELEMENT subLinks ((link)* | (%cm.listitem;)*)>
<!ELEMENT superLinks ((link)* | (%cm.listitem;))>
<!ELEMENT superObjects ((obj)* | (%cm.listitem;))>
<!ELEMENT suppressExport (%cm.atom;)>
<!ELEMENT systemConfigFormattedTime (%cm.atom;)>
<!ELEMENT target (%cm.atom;)>
<!ELEMENT taskText (%cm.atom;)>
<!ELEMENT taskType (%cm.atom;)>
<!ELEMENT textLinks ((link)* | (%cm.listitem;)*)>
<!ELEMENT templateName (%cm.atom;)>
<!ELEMENT thumbnail (%cm.atom;)>
<!ELEMENT timeStamp (%cm.atom;)>
<!ELEMENT timeZone (%cm.atom;)>
<!ELEMENT title (%cm.atom;)>
<!ATTLIST title
	lang (en | de | it | fr | es) #IMPLIED
	type CDATA #IMPLIED
>
<!ELEMENT toclist ((obj)* | (%cm.listitem;)*)>
<!ELEMENT type (%cm.atom;)>
<!ELEMENT untilDate %cm.date;>
<!ELEMENT updateRecords (%cm.listitem;)*>
<!ELEMENT updateRecordCount (%cm.atom;)>
<!ELEMENT updateRecordId (%cm.atom;)>
<!ELEMENT userConfigFormattedTime (%cm.atom;)>
<!ELEMENT userLocked (%cm.atom;)>
<!ELEMENT userLogin (%cm.atom; | %cm.user-get;)*>
<!ELEMENT userText (%cm.atom;)>
<!ELEMENT users ((user)* | (%cm.listitem;)*)>
<!ELEMENT userProxy ANY>
<!ELEMENT validContentTypes (%cm.listitem;)*>
<!ELEMENT validControlActionKeys (%cm.listitem;)*>
<!ELEMENT validCreateObjClasses ((objClass)* | (%cm.listitem;)*)>
<!ELEMENT validEditFieldKeys (%cm.listitem;)*>
<!ELEMENT validEditFieldTypes (%cm.listitem;)*>
<!ELEMENT validFrom %cm.date;>
<!ATTLIST validFrom
	type CDATA #IMPLIED
>
<!ELEMENT validObjClasses ((objClass)* | (%cm.listitem;)*)>
<!ELEMENT validPermissions (%cm.listitem;)*>
<!ELEMENT validSortKeys (%cm.listitem;)*>
<!ELEMENT validSortOrders (%cm.listitem;)*>
<!ELEMENT validSortTypes (%cm.listitem;)*>
<!ELEMENT validSubObjClassCheck (%cm.atom;)>
<!ELEMENT validSubObjClasses ((objClass)* | (%cm.listitem;)*)>
<!ELEMENT validUntil %cm.date;>
<!ATTLIST validUntil
	type CDATA #IMPLIED
>
<!ELEMENT values (%cm.listitem;)*>
<!ELEMENT version (%cm.atom;)>
<!ELEMENT visibleExportTemplates ((obj)* | (%cm.listitem;)*)>
<!ELEMENT visibleName (%cm.atom;)>
<!ELEMENT visiblePath (%cm.atom;)>
<!ELEMENT wantedTags (%cm.listitem;)*>
<!ELEMENT workflowComment (%cm.atom;)>
<!ELEMENT workflowModification (%cm.atom;)>
<!ELEMENT workflowName (%cm.atom; | %cm.workflow-get;)*>
<!ELEMENT xmlBlob (%cm.atom;)>
<!ELEMENT xmldtd (%cm.atom;)>

<!ELEMENT appName (%cm.atom;)>
<!ELEMENT baseDir (%cm.atom;)>
<!ELEMENT binDir (%cm.atom;)>
<!ELEMENT configDir (%cm.atom;)>
<!ELEMENT dataDir (%cm.atom;)>
<!ELEMENT debugChannels (%cm.atom;)>
<!ELEMENT debugLevel (%cm.atom;)>
<!ELEMENT instanceDir (%cm.atom;)>
<!ELEMENT libDir (%cm.atom;)>
<!ELEMENT logDir (%cm.atom;)>
<!ELEMENT rootConfigPath (%cm.atom;)>
<!ELEMENT scriptDir (%cm.atom;)>
<!ELEMENT shareDir (%cm.atom;)>
<!ELEMENT tmpDir (%cm.atom;)>