Calendars 元素 XML 架构

下面显示了定义 Calendars 元素的 Microsoft Office Project 2007 XML 数据交换架构 (mspdi_pj12.xsd) 部分。

Project 2007 SDK 下载中包含完整的 Project 2007 XML 数据交换架构。 有关 Project 2007 SDK 下载的链接,请参阅 欢迎使用 Microsoft Office Project 2007 SDK

日历架构

<?xml version="1.0" encoding="utf-8"?>
. . .
<!-- @Calendar schema -->
<xsd:element name="Calendars" minOccurs="0">
  <xsd:annotation>
    <xsd:documentation>The collection of calendars that is associated with the project.</xsd:documentation>
  </xsd:annotation>
  <xsd:complexType>
    <xsd:sequence>
      <xsd:element name="Calendar" minOccurs="1" maxOccurs="unbounded">
        <xsd:annotation>
          <xsd:documentation>Calendars are used to define standard working and non-working times. Projects must have one base calendar. Tasks and resources can have their own non-base calendars that are based on a base calendar.</xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="UID" type="xsd:integer">
              <xsd:annotation>
                <xsd:documentation>The unique identifier of the calendar.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="Name" minOccurs="0">
              <xsd:annotation>
                <xsd:documentation>The name of the calendar.</xsd:documentation>
              </xsd:annotation>
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:maxLength value="512" />
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element name="IsBaseCalendar" type="xsd:boolean" minOccurs="0">
              <xsd:annotation>
                <xsd:documentation>Whether the calendar is a base calendar.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="BaseCalendarUID" type="xsd:integer" minOccurs="0">
              <xsd:annotation>
                <xsd:documentation>The unique identifier of the base calendar on which this calendar depends. Only applicable if the calendar is not a base calendar.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element name="WeekDays" minOccurs="0">
              <xsd:annotation>
                <xsd:documentation>The collection of weekdays that defines this calendar.</xsd:documentation>
              </xsd:annotation>
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:element name="WeekDay" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                      <xsd:documentation>A weekday either defines regular days of the week or exception days in the calendar.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element name="DayType" minOccurs="1">
                          <xsd:annotation>
                            <xsd:documentation>The type of day. Values are: 0=Exception, 1=Sunday, 2=Monday, 3=Tuesday, 4=Wednesday, 5=Thursday, 6=Friday, 7=Saturday.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:simpleType>
                            <xsd:restriction base="xsd:integer">
                              <xsd:enumeration value="0" />
                              <xsd:enumeration value="1" />
                              <xsd:enumeration value="2" />
                              <xsd:enumeration value="3" />
                              <xsd:enumeration value="4" />
                              <xsd:enumeration value="5" />
                              <xsd:enumeration value="6" />
                              <xsd:enumeration value="7" />
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element name="DayWorking" type="xsd:boolean" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>Whether the specified date or day type is working.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="TimePeriod" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>Defines a contiguous set of exception days.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:complexType>
                            <xsd:sequence>
                              <xsd:element name="FromDate" type="xsd:dateTime" minOccurs="0">
                                <xsd:annotation>
                                  <xsd:documentation>The beginning of the exception time.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element name="ToDate" type="xsd:dateTime" minOccurs="0">
                                <xsd:annotation>
                                  <xsd:documentation>The end of the exception time.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                            </xsd:sequence>
                          </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="WorkingTimes" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The collection of working times that define the time worked on the weekday. One of these must be present, and there can be no more than five.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:complexType>
                            <xsd:sequence>
                              <xsd:choice>
                                <xsd:element name="WorkingTime" minOccurs="0" maxOccurs="5">
                                  <xsd:annotation>
                                    <xsd:documentation>Defines the working time during the weekday.</xsd:documentation>
                                  </xsd:annotation>
                                  <xsd:complexType>
                                    <xsd:sequence>
                                      <xsd:element name="FromTime" type="xsd:time" minOccurs="0">
                                        <xsd:annotation>
                                          <xsd:documentation>The beginning of the working time.</xsd:documentation>
                                        </xsd:annotation>
                                      </xsd:element>
                                      <xsd:element name="ToTime" type="xsd:time" minOccurs="0">
                                        <xsd:annotation>
                                          <xsd:documentation>The end of the working time.</xsd:documentation>
                                        </xsd:annotation>
                                      </xsd:element>
                                    </xsd:sequence>
                                  </xsd:complexType>
                                </xsd:element>
                              </xsd:choice>
                            </xsd:sequence>
                          </xsd:complexType>
                        </xsd:element>
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
            <!-- #New Project 2007 element definitions -->
            <xsd:element name="Exceptions" minOccurs="0">
              <xsd:annotation>
                <xsd:documentation>The collection of exceptions that is associated with the calendar.</xsd:documentation>
              </xsd:annotation>
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:element name="Exception" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                      <xsd:documentation>Exceptions are used to define an exception sub-calendar.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element name="EnteredByOccurrences" type="xsd:boolean" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>Whether the range of recurrence is defined by entering a number of occurrences. False specifies that the range of recurrence is defined by entering a finish date.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="TimePeriod" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>Defines a contiguous set of exception days.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:complexType>
                            <xsd:sequence>
                              <xsd:element name="FromDate" type="xsd:dateTime" minOccurs="0">
                                <xsd:annotation>
                                  <xsd:documentation>The beginning of the exception time.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element name="ToDate" type="xsd:dateTime" minOccurs="0">
                                <xsd:annotation>
                                  <xsd:documentation>The end of the exception time.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                            </xsd:sequence>
                          </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="Occurrences" type="xsd:integer" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The number of occurrences for which the calendar exception is valid.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="Name" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The name of the exception.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:simpleType>
                            <xsd:restriction base="xsd:string">
                              <xsd:maxLength value="512" />
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element name="Type" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The exception type. Values are: 1=Daily, 2=Yearly by day of the month, 3=Yearly by position, 4=Monthly by day of the month, 5=Monthly by position, 6=Weekly, 7=By day count, 8=By weekday count, 9=No exception type.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:simpleType>
                            <xsd:restriction base="xsd:integer">
                              <xsd:enumeration value="1" />
                              <xsd:enumeration value="2" />
                              <xsd:enumeration value="3" />
                              <xsd:enumeration value="4" />
                              <xsd:enumeration value="5" />
                              <xsd:enumeration value="6" />
                              <xsd:enumeration value="7" />
                              <xsd:enumeration value="8" />
                              <xsd:enumeration value="9" />
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element name="Period" type="xsd:integer" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The period of recurrence for the exception.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="DaysOfWeek" type="xsd:integer" minOccurs="0" maxOccurs="1">
                          <xsd:annotation>
                            <xsd:documentation>The days of the week on which the exception is valid. Values are: 1=Sunday, 2=Monday, 4=Tuesday, 8=Wednesday, 16=Thursday, 32=Friday, 64=Saturday.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="MonthItem" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The month item for which an exception recurrence is scheduled. Values are: 0=Day, 1=Weekday, 2=WeekendDay, 3=Sunday, 4=Monday, 5=Tuesday, 6=Wednesday, 7=Thursday, 8=Friday, 9=Saturday.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:simpleType>
                            <xsd:restriction base="xsd:integer">
                              <xsd:enumeration value="0" />
                              <xsd:enumeration value="1" />
                              <xsd:enumeration value="2" />
                              <xsd:enumeration value="3" />
                              <xsd:enumeration value="4" />
                              <xsd:enumeration value="5" />
                              <xsd:enumeration value="6" />
                              <xsd:enumeration value="7" />
                              <xsd:enumeration value="8" />
                              <xsd:enumeration value="9" />
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element name="MonthPosition" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The position of a month item within a month. Values are: 0=First position, 1=Second position, 2=Third position, 3=Fourth position, 4=Last position.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:simpleType>
                            <xsd:restriction base="xsd:integer">
                              <xsd:enumeration value="0" />
                              <xsd:enumeration value="1" />
                              <xsd:enumeration value="2" />
                              <xsd:enumeration value="3" />
                              <xsd:enumeration value="4" />
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element name="Month" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The month for which an exception recurrence is scheduled. Values are: 0=January, 1=February, 2=March, 3=April, 4=May, 5=June, 6=July, 7=August, 8=September, 9=October, 10=November, 11=December.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:simpleType>
                            <xsd:restriction base="xsd:integer">
                              <xsd:enumeration value="0" />
                              <xsd:enumeration value="1" />
                              <xsd:enumeration value="2" />
                              <xsd:enumeration value="3" />
                              <xsd:enumeration value="4" />
                              <xsd:enumeration value="5" />
                              <xsd:enumeration value="6" />
                              <xsd:enumeration value="7" />
                              <xsd:enumeration value="8" />
                              <xsd:enumeration value="9" />
                              <xsd:enumeration value="10" />
                              <xsd:enumeration value="11" />
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element name="MonthDay" type="xsd:integer" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The day of the month on which an exception recurrence is scheduled.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="DayWorking" type="xsd:boolean" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>Whether the specified date or day type is working.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element name="WorkingTimes" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The collection of working times that define the time worked on the weekday.  One of these must be present, and there can be no more than five.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:complexType>
                            <xsd:sequence>
                              <xsd:choice>
                                <xsd:element name="WorkingTime" minOccurs="0" maxOccurs="5">
                                  <xsd:annotation>
                                    <xsd:documentation>Defines the working time during the weekday.</xsd:documentation>
                                  </xsd:annotation>
                                  <xsd:complexType>
                                    <xsd:sequence>
                                      <xsd:element name="FromTime" type="xsd:time" minOccurs="0">
                                        <xsd:annotation>
                                          <xsd:documentation>The beginning of the working time.</xsd:documentation>
                                        </xsd:annotation>
                                      </xsd:element>
                                      <xsd:element name="ToTime" type="xsd:time" minOccurs="0">
                                        <xsd:annotation>
                                          <xsd:documentation>The end of the working time.</xsd:documentation>
                                        </xsd:annotation>
                                      </xsd:element>
                                    </xsd:sequence>
                                  </xsd:complexType>
                                </xsd:element>
                              </xsd:choice>
                            </xsd:sequence>
                          </xsd:complexType>
                        </xsd:element>
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
            <!-- Note: The WorkWeeks element is not correctly saved to XML. 
                 To create valid XML, you must replace the empty tag set (<> and </>) 
                 with the WorkWeeks tag set (<WorkWeeks> and </WorkWeeks>). 
            -->
            <xsd:element name="WorkWeeks" minOccurs="0">
              <xsd:annotation>
                <xsd:documentation>The collection of effective work weeks associated with the calendar.</xsd:documentation>
              </xsd:annotation>
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:element name="WorkWeek" minOccurs="0" maxOccurs="unbounded">
                    <xsd:annotation>
                      <xsd:documentation>Defines an effective work week.</xsd:documentation>
                    </xsd:annotation>
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element name="TimePeriod" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>Defines a contiguous set of exception days.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:complexType>
                            <xsd:sequence>
                              <xsd:element name="FromDate" type="xsd:dateTime" minOccurs="0">
                                <xsd:annotation>
                                  <xsd:documentation>The beginning of the exception time.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element name="ToDate" type="xsd:dateTime" minOccurs="0">
                                <xsd:annotation>
                                  <xsd:documentation>The end of the exception time.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                            </xsd:sequence>
                          </xsd:complexType>
                        </xsd:element>
                        <xsd:element name="Name" minOccurs="0">
                          <xsd:annotation>
                            <xsd:documentation>The name of the effective week.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:simpleType>
                            <xsd:restriction base="xsd:string">
                              <xsd:maxLength value="512" />
                            </xsd:restriction>
                          </xsd:simpleType>
                        </xsd:element>
                        <!-- Note: The WeekDay element is not correctly saved to XML. 
                             To create valid XML, you must manually insert a closing tag (</WeekDay>) 
                             for each opening tag (<WeekDay>) in the XML output.
                        -->
                        <xsd:element name="WeekDay" minOccurs="0" maxOccurs="unbounded">
                          <xsd:annotation>
                            <xsd:documentation>A weekday either defines regular days of the week or exception days in the calendar.</xsd:documentation>
                          </xsd:annotation>
                          <xsd:complexType>
                            <xsd:sequence>
                              <xsd:element name="DayType" minOccurs="1">
                                <xsd:annotation>
                                  <xsd:documentation>The type of day. Values are: 0=Exception, 1=Sunday, 2=Monday, 3=Tuesday, 4=Wednesday, 5=Thursday, 6=Friday, 7=Saturday.</xsd:documentation>
                                </xsd:annotation>
                                <xsd:simpleType>
                                  <xsd:restriction base="xsd:integer">
                                    <xsd:enumeration value="0" />
                                    <xsd:enumeration value="1" />
                                    <xsd:enumeration value="2" />
                                    <xsd:enumeration value="3" />
                                    <xsd:enumeration value="4" />
                                    <xsd:enumeration value="5" />
                                    <xsd:enumeration value="6" />
                                    <xsd:enumeration value="7" />
                                  </xsd:restriction>
                                </xsd:simpleType>
                              </xsd:element>
                              <xsd:element name="DayWorking" type="xsd:boolean" minOccurs="0">
                                <xsd:annotation>
                                  <xsd:documentation>Whether the specified date or day type is working.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                            </xsd:sequence>
                          </xsd:complexType>
                        </xsd:element>
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
            <!-- #End new Project 2007 element definitions -->
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

另请参阅

概念

Calendar 元素和 XML 结构