| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| # |
| # XML RELAX NG schema for Subversion command-line client output |
| # For "svn status" |
| |
| # The DTD compatibility annotations namespace, used for adding default |
| # attribute values. |
| namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" |
| |
| include "common.rnc" |
| |
| start = status |
| |
| status = element status { (target | changelist)* } |
| |
| target = element target { attlist.target, entry*, against? } |
| attlist.target &= |
| ## The target path. |
| attribute path { string } |
| |
| changelist = element changelist { attlist.changelist, entry*, against? } |
| attlist.changelist &= |
| ## The changelist name. |
| attribute name { string } |
| |
| ## Status information for a path under the target. |
| entry = element entry { attlist.entry, wc-status, repos-status? } |
| attlist.entry &= |
| ## Path inside the target. |
| attribute path { text } |
| |
| ## Status of the entry in the working copy. |
| wc-status = element wc-status { attlist.wc-status, commit?, lock? } |
| |
| attlist.wc-status &= |
| ## Item/text status. |
| attribute item { |
| "added" | "conflicted" | "deleted" | "external" | "ignored" | |
| "incomplete" | "merged" | "missing" | "modified" | "none" | |
| "normal" | "obstructed" | "replaced" | "unversioned" |
| }, |
| ## Properties status. |
| attribute props { "conflicted" | "modified" | "normal" | "none" }, |
| ## Base revision number. |
| attribute revision { revnum.type }?, |
| ## WC directory locked. |
| [ a:defaultValue = "false" ] |
| attribute wc-locked { "true" | "false" }?, |
| ## Add with history. |
| [ a:defaultValue = "false" ] |
| attribute copied { "true" | "false" }?, |
| # Item switched relative to its parent. |
| [ a:defaultValue = "false" ] |
| attribute switched { "true" | "false" }?, |
| ## Tree-conflict status of the item. |
| [ a:defaultValue = "false" ] |
| attribute tree-conflicted { "true" | "false" }?, |
| ## If root of a move-here, the local path to the move source. |
| attribute moved-from { text }?, |
| ## If root of a move-away, the local path to the move destination. |
| attribute moved-to { text }? |
| |
| ## Status in repository (if --update was specified). |
| repos-status = element repos-status { attlist.repos-status, lock? } |
| attlist.repos-status &= |
| ## Text/item status in the repository. |
| attribute item { |
| "added" | "deleted" | "modified" | "replaced" | "none" |
| }, |
| ## Properties status in repository. |
| attribute props { "modified" | "none" } |
| |
| against = element against { attlist.against, empty } |
| attlist.against &= |
| ## Revision number at which the repository information was obtained. |
| attribute revision { revnum.type } |