DITA-OT_CXX_Plugin/cxxapiref/xsd/cxxVariable.mod.xsd
changeset 4 468f4c8d3d5b
equal deleted inserted replaced
3:d8fccb2cd802 4:468f4c8d3d5b
       
     1 <?xml version="1.0" encoding="UTF-8"?>
       
     2 <!-- ================================================================= -->
       
     3 <!-- HEADER -->
       
     4 <!-- ================================================================= -->
       
     5 <!-- MODULE:    C++ Variables DTD -->
       
     6 <!-- VERSION:   0.6.0 -->
       
     7 <!-- DATE:      May 2009 -->
       
     8 <!---->
       
     9 <!-- ================================================================= -->
       
    10 <!-- ================================================================= -->
       
    11 <!-- PUBLIC DOCUMENT TYPE DEFINITION -->
       
    12 <!-- TYPICAL INVOCATION -->
       
    13 <!---->
       
    14 <!--
       
    15   Refer to this file by the following public identifier or an 
       
    16         appropriate system identifier 
       
    17   PUBLIC "-//NOKIA//DTD DITA C++ API Variable Reference Type v0.6.0//EN"
       
    18         Delivered as file "cxxVariable.dtd"
       
    19 -->
       
    20 <!-- ================================================================= -->
       
    21 <!-- SYSTEM:     Darwin Information Typing Architecture (DITA) -->
       
    22 <!---->
       
    23 <!-- PURPOSE:    C++ API Reference for Variables -->
       
    24 <!---->
       
    25 <!-- ORIGINAL CREATION DATE: -->
       
    26 <!-- November 2009 -->
       
    27 <!---->
       
    28 <!-- Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies). -->
       
    29 <!-- All rights reserved. -->
       
    30 <!---->
       
    31 <!-- Change History (latest at top): -->
       
    32 <!-- +++++++++++++++++++++++++++++++ -->
       
    33 <!-- 2010-02-16 VOG: Updated. -->
       
    34 <!-- 2010-02-10 PaulRoss: Updated. -->
       
    35 <!-- 2009-11-16 PaulRoss: Initial design. -->
       
    36 <!---->
       
    37 <!-- ================================================================= -->
       
    38 <!--
       
    39   Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
       
    40   All rights reserved.
       
    41 -->
       
    42 <!-- ============ Hooks for domain extension ============ -->
       
    43 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/">
       
    44   <xs:import namespace="http://dita.oasis-open.org/architecture/2005/" schemaLocation="../../../schema/base/xsd/ditaarch.xsd"/>
       
    45   <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="../../../schema/base/xsd/xml.xsd"/>
       
    46   <xs:group name="cxxVariableDetail">
       
    47     <xs:sequence>
       
    48       <xs:element ref="cxxVariableDetail"/>
       
    49     </xs:sequence>
       
    50   </xs:group>
       
    51   <xs:group name="cxxVariableDefinition">
       
    52     <xs:sequence>
       
    53       <xs:element ref="cxxVariableDefinition"/>
       
    54     </xs:sequence>
       
    55   </xs:group>
       
    56   <xs:group name="cxxVariableAccessSpecifier">
       
    57     <xs:sequence>
       
    58       <xs:element ref="cxxVariableAccessSpecifier"/>
       
    59     </xs:sequence>
       
    60   </xs:group>
       
    61   <xs:group name="cxxVariableDeclaredType">
       
    62     <xs:sequence>
       
    63       <xs:element ref="cxxVariableDeclaredType"/>
       
    64     </xs:sequence>
       
    65   </xs:group>
       
    66   <xs:group name="cxxVariableScopedName">
       
    67     <xs:sequence>
       
    68       <xs:element ref="cxxVariableScopedName"/>
       
    69     </xs:sequence>
       
    70   </xs:group>
       
    71   <xs:group name="cxxVariablePrototype">
       
    72     <xs:sequence>
       
    73       <xs:element ref="cxxVariablePrototype"/>
       
    74     </xs:sequence>
       
    75   </xs:group>
       
    76   <xs:group name="cxxVariableNameLookup">
       
    77     <xs:sequence>
       
    78       <xs:element ref="cxxVariableNameLookup"/>
       
    79     </xs:sequence>
       
    80   </xs:group>
       
    81   <xs:group name="cxxVariableReimplemented">
       
    82     <xs:sequence>
       
    83       <xs:element ref="cxxVariableReimplemented"/>
       
    84     </xs:sequence>
       
    85   </xs:group>
       
    86   <xs:group name="cxxVariableStorageClassSpecifierExtern">
       
    87     <xs:sequence>
       
    88       <xs:element ref="cxxVariableStorageClassSpecifierExtern"/>
       
    89     </xs:sequence>
       
    90   </xs:group>
       
    91   <xs:group name="cxxVariableStorageClassSpecifierStatic">
       
    92     <xs:sequence>
       
    93       <xs:element ref="cxxVariableStorageClassSpecifierStatic"/>
       
    94     </xs:sequence>
       
    95   </xs:group>
       
    96   <xs:group name="cxxVariableStorageClassSpecifierMutable">
       
    97     <xs:sequence>
       
    98       <xs:element ref="cxxVariableStorageClassSpecifierMutable"/>
       
    99     </xs:sequence>
       
   100   </xs:group>
       
   101   <xs:group name="cxxVariableConst">
       
   102     <xs:sequence>
       
   103       <xs:element ref="cxxVariableConst"/>
       
   104     </xs:sequence>
       
   105   </xs:group>
       
   106   <xs:group name="cxxVariableVolatile">
       
   107     <xs:sequence>
       
   108       <xs:element ref="cxxVariableVolatile"/>
       
   109     </xs:sequence>
       
   110   </xs:group>
       
   111   <!-- Location information -->
       
   112   <xs:group name="cxxVariableAPIItemLocation">
       
   113     <xs:sequence>
       
   114       <xs:element ref="cxxVariableAPIItemLocation"/>
       
   115     </xs:sequence>
       
   116   </xs:group>
       
   117   <xs:group name="cxxVariableDeclarationFile">
       
   118     <xs:sequence>
       
   119       <xs:element ref="cxxVariableDeclarationFile"/>
       
   120     </xs:sequence>
       
   121   </xs:group>
       
   122   <xs:group name="cxxVariableDeclarationFileLine">
       
   123     <xs:sequence>
       
   124       <xs:element ref="cxxVariableDeclarationFileLine"/>
       
   125     </xs:sequence>
       
   126   </xs:group>
       
   127   <!-- ============ Hooks for shell DTD ============ -->
       
   128   <xs:group name="cxxVariable-types-default">
       
   129     <xs:sequence>
       
   130       <xs:element ref="no-topic-nesting"/>
       
   131     </xs:sequence>
       
   132   </xs:group>
       
   133   <xs:group name="cxxVariable-info-types">
       
   134     <xs:sequence>
       
   135       <xs:group ref="cxxVariable-types-default"/>
       
   136     </xs:sequence>
       
   137   </xs:group>
       
   138   <!-- ============ Topic specializations ============ -->
       
   139   <xs:element name="cxxVariable">
       
   140     <xs:complexType>
       
   141       <xs:sequence>
       
   142         <xs:group ref="apiName"/>
       
   143         <xs:group minOccurs="0" ref="shortdesc"/>
       
   144         <xs:group minOccurs="0" ref="prolog"/>
       
   145         <xs:group ref="cxxVariableDetail"/>
       
   146         <xs:group minOccurs="0" ref="related-links"/>
       
   147         <xs:group minOccurs="0" maxOccurs="unbounded" ref="cxxVariable-info-types"/>
       
   148       </xs:sequence>
       
   149       <xs:attribute name="id" use="required" type="xs:ID"/>
       
   150       <xs:attribute name="conref"/>
       
   151       <xs:attribute name="outputclass"/>
       
   152       <xs:attribute ref="xml:lang"/>
       
   153       <xs:attributeGroup ref="arch-atts"/>
       
   154       <xs:attribute name="domains" default="(topic ui-d) (topic hi-d) (topic pr-d) (topic sw-d)                            (topic ut-d) (topic pr-d api-d) (topic pr-d api-d cxxapi-d)"/>
       
   155       <xs:attributeGroup ref="global-atts"/>
       
   156       <xs:attribute name="class" default="- topic/topic reference/reference apiRef/apiRef apiValue/apiValue cxxVariable/cxxVariable "/>
       
   157     </xs:complexType>
       
   158   </xs:element>
       
   159   <xs:element name="cxxVariableDetail">
       
   160     <xs:complexType>
       
   161       <xs:sequence>
       
   162         <xs:group ref="cxxVariableDefinition"/>
       
   163         <xs:group minOccurs="0" ref="apiDesc"/>
       
   164         <xs:choice minOccurs="0" maxOccurs="unbounded">
       
   165           <xs:group ref="example"/>
       
   166           <xs:group ref="section"/>
       
   167           <xs:group ref="apiImpl"/>
       
   168         </xs:choice>
       
   169       </xs:sequence>
       
   170       <xs:attributeGroup ref="id-atts"/>
       
   171       <xs:attribute name="translate">
       
   172         <xs:simpleType>
       
   173           <xs:restriction base="xs:token">
       
   174             <xs:enumeration value="yes"/>
       
   175             <xs:enumeration value="no"/>
       
   176           </xs:restriction>
       
   177         </xs:simpleType>
       
   178       </xs:attribute>
       
   179       <xs:attribute ref="xml:lang"/>
       
   180       <xs:attribute name="outputclass"/>
       
   181       <xs:attributeGroup ref="global-atts"/>
       
   182       <xs:attribute name="class" default="- topic/body reference/refbody apiRef/apiDetail apiValue/apiValueDetail cxxVariable/cxxVariableDetail "/>
       
   183     </xs:complexType>
       
   184   </xs:element>
       
   185   <xs:element name="cxxVariableDefinition">
       
   186     <xs:complexType>
       
   187       <xs:sequence>
       
   188         <xs:group minOccurs="0" ref="cxxVariableAccessSpecifier"/>
       
   189         <xs:group minOccurs="0" ref="cxxVariableStorageClassSpecifierExtern"/>
       
   190         <xs:group minOccurs="0" ref="cxxVariableStorageClassSpecifierStatic"/>
       
   191         <xs:group minOccurs="0" ref="cxxVariableStorageClassSpecifierMutable"/>
       
   192         <xs:group minOccurs="0" ref="cxxVariableConst"/>
       
   193         <xs:group minOccurs="0" ref="cxxVariableVolatile"/>
       
   194         <xs:group minOccurs="0" ref="cxxVariableDeclaredType"/>
       
   195         <xs:group minOccurs="0" ref="cxxVariableScopedName"/>
       
   196         <xs:group minOccurs="0" ref="cxxVariablePrototype"/>
       
   197         <xs:group minOccurs="0" ref="cxxVariableNameLookup"/>
       
   198         <xs:group minOccurs="0" ref="cxxVariableReimplemented"/>
       
   199         <xs:group minOccurs="0" ref="cxxVariableAPIItemLocation"/>
       
   200       </xs:sequence>
       
   201       <xs:attribute name="spectitle"/>
       
   202       <xs:attributeGroup ref="univ-atts"/>
       
   203       <xs:attribute name="outputclass"/>
       
   204       <xs:attributeGroup ref="global-atts"/>
       
   205       <xs:attribute name="class" default="- topic/section reference/section apiRef/apiDef apiValue/apiValueDef cxxVariable/cxxVariableDefinition "/>
       
   206     </xs:complexType>
       
   207   </xs:element>
       
   208   <xs:element name="cxxVariableAccessSpecifier">
       
   209     <xs:complexType>
       
   210       <xs:attribute name="name" default="access">
       
   211         <xs:simpleType>
       
   212           <xs:restriction base="xs:string">
       
   213             <xs:enumeration value="access"/>
       
   214           </xs:restriction>
       
   215         </xs:simpleType>
       
   216       </xs:attribute>
       
   217       <xs:attribute name="value" default="public">
       
   218         <xs:simpleType>
       
   219           <xs:restriction base="xs:token">
       
   220             <xs:enumeration value="public"/>
       
   221             <xs:enumeration value="protected"/>
       
   222             <xs:enumeration value="private"/>
       
   223           </xs:restriction>
       
   224         </xs:simpleType>
       
   225       </xs:attribute>
       
   226       <xs:attributeGroup ref="univ-atts"/>
       
   227       <xs:attribute name="outputclass"/>
       
   228       <xs:attributeGroup ref="global-atts"/>
       
   229       <xs:attribute name="class" default="- topic/state reference/state apiRef/apiQualifier apiValue/apiQualifier cxxVariable/cxxVariableAccessSpecifier "/>
       
   230     </xs:complexType>
       
   231   </xs:element>
       
   232   <xs:element name="cxxVariableDeclaredType">
       
   233     <xs:complexType mixed="true">
       
   234       <xs:group minOccurs="0" maxOccurs="unbounded" ref="apiRelation"/>
       
   235       <xs:attributeGroup ref="univ-atts"/>
       
   236       <xs:attribute name="outputclass"/>
       
   237       <xs:attributeGroup ref="global-atts"/>
       
   238       <xs:attribute name="class" default="- topic/ph reference/ph apiRef/apiDefItem apiValue/apiDefItem cxxVariable/cxxVariableDeclaredType "/>
       
   239     </xs:complexType>
       
   240   </xs:element>
       
   241   <xs:element name="cxxVariableScopedName">
       
   242     <xs:complexType mixed="true">
       
   243       <xs:attribute name="href"/>
       
   244       <xs:attribute name="keyref"/>
       
   245       <xs:attribute name="type"/>
       
   246       <xs:attributeGroup ref="univ-atts"/>
       
   247       <xs:attribute name="outputclass"/>
       
   248       <xs:attributeGroup ref="global-atts"/>
       
   249       <xs:attribute name="class" default="- topic/keyword reference/keyword apiRef/apiItemName apiValue/apiItemName cxxVariable/cxxVariableScopedName "/>
       
   250     </xs:complexType>
       
   251   </xs:element>
       
   252   <xs:element name="cxxVariablePrototype">
       
   253     <xs:complexType mixed="true">
       
   254       <xs:attributeGroup ref="univ-atts"/>
       
   255       <xs:attribute name="outputclass"/>
       
   256       <xs:attributeGroup ref="global-atts"/>
       
   257       <xs:attribute name="class" default="- topic/ph reference/ph apiRef/apiDefItem apiValue/apiDefItem cxxVariable/cxxVariablePrototype "/>
       
   258     </xs:complexType>
       
   259   </xs:element>
       
   260   <xs:element name="cxxVariableNameLookup">
       
   261     <xs:complexType mixed="true">
       
   262       <xs:attributeGroup ref="univ-atts"/>
       
   263       <xs:attribute name="outputclass"/>
       
   264       <xs:attributeGroup ref="global-atts"/>
       
   265       <xs:attribute name="class" default="- topic/ph reference/ph apiRef/apiDefItem apiValue/apiDefItem cxxVariable/cxxVariableNameLookup "/>
       
   266     </xs:complexType>
       
   267   </xs:element>
       
   268   <xs:element name="cxxVariableReimplemented">
       
   269     <xs:complexType mixed="true">
       
   270       <xs:attribute name="href"/>
       
   271       <xs:attribute name="keyref"/>
       
   272       <xs:attribute name="type"/>
       
   273       <xs:attributeGroup ref="univ-atts"/>
       
   274       <xs:attribute name="format"/>
       
   275       <xs:attribute name="scope">
       
   276         <xs:simpleType>
       
   277           <xs:restriction base="xs:token">
       
   278             <xs:enumeration value="local"/>
       
   279             <xs:enumeration value="peer"/>
       
   280             <xs:enumeration value="external"/>
       
   281           </xs:restriction>
       
   282         </xs:simpleType>
       
   283       </xs:attribute>
       
   284       <xs:attribute name="outputclass"/>
       
   285       <xs:attributeGroup ref="global-atts"/>
       
   286       <xs:attribute name="class" default="- topic/xref reference/xref apiRef/apiRelation apiValue/apiRelation cxxVariable/cxxVariableReimplemented "/>
       
   287     </xs:complexType>
       
   288   </xs:element>
       
   289   <!-- Storage class specifiers and other qualifiers. -->
       
   290   <xs:element name="cxxVariableStorageClassSpecifierExtern">
       
   291     <xs:complexType>
       
   292       <xs:attribute name="name" default="extern">
       
   293         <xs:simpleType>
       
   294           <xs:restriction base="xs:string">
       
   295             <xs:enumeration value="extern"/>
       
   296           </xs:restriction>
       
   297         </xs:simpleType>
       
   298       </xs:attribute>
       
   299       <xs:attribute name="value" default="extern">
       
   300         <xs:simpleType>
       
   301           <xs:restriction base="xs:string">
       
   302             <xs:enumeration value="extern"/>
       
   303           </xs:restriction>
       
   304         </xs:simpleType>
       
   305       </xs:attribute>
       
   306       <xs:attributeGroup ref="univ-atts"/>
       
   307       <xs:attribute name="outputclass"/>
       
   308       <xs:attributeGroup ref="global-atts"/>
       
   309       <xs:attribute name="class" default="- topic/state reference/state apiRef/apiQualifier apiValue/apiQualifier  cxxVariable/cxxVariableStorageClassSpecifierExtern "/>
       
   310     </xs:complexType>
       
   311   </xs:element>
       
   312   <xs:element name="cxxVariableStorageClassSpecifierStatic">
       
   313     <xs:complexType>
       
   314       <xs:attribute name="name" default="static">
       
   315         <xs:simpleType>
       
   316           <xs:restriction base="xs:string">
       
   317             <xs:enumeration value="static"/>
       
   318           </xs:restriction>
       
   319         </xs:simpleType>
       
   320       </xs:attribute>
       
   321       <xs:attribute name="value" default="static">
       
   322         <xs:simpleType>
       
   323           <xs:restriction base="xs:string">
       
   324             <xs:enumeration value="static"/>
       
   325           </xs:restriction>
       
   326         </xs:simpleType>
       
   327       </xs:attribute>
       
   328       <xs:attributeGroup ref="univ-atts"/>
       
   329       <xs:attribute name="outputclass"/>
       
   330       <xs:attributeGroup ref="global-atts"/>
       
   331       <xs:attribute name="class" default="- topic/state reference/state apiRef/apiQualifier apiValue/apiQualifier cxxVariable/cxxVariableStorageClassSpecifierStatic "/>
       
   332     </xs:complexType>
       
   333   </xs:element>
       
   334   <xs:element name="cxxVariableStorageClassSpecifierMutable">
       
   335     <xs:complexType>
       
   336       <xs:attribute name="name" default="mutable">
       
   337         <xs:simpleType>
       
   338           <xs:restriction base="xs:string">
       
   339             <xs:enumeration value="mutable"/>
       
   340           </xs:restriction>
       
   341         </xs:simpleType>
       
   342       </xs:attribute>
       
   343       <xs:attribute name="value" default="mutable">
       
   344         <xs:simpleType>
       
   345           <xs:restriction base="xs:string">
       
   346             <xs:enumeration value="mutable"/>
       
   347           </xs:restriction>
       
   348         </xs:simpleType>
       
   349       </xs:attribute>
       
   350       <xs:attributeGroup ref="univ-atts"/>
       
   351       <xs:attribute name="outputclass"/>
       
   352       <xs:attributeGroup ref="global-atts"/>
       
   353       <xs:attribute name="class" default="- topic/state reference/state apiRef/apiQualifier apiValue/apiQualifier cxxVariable/cxxVariableStorageClassSpecifierMutable "/>
       
   354     </xs:complexType>
       
   355   </xs:element>
       
   356   <xs:element name="cxxVariableConst">
       
   357     <xs:complexType>
       
   358       <xs:attribute name="name" default="const">
       
   359         <xs:simpleType>
       
   360           <xs:restriction base="xs:string">
       
   361             <xs:enumeration value="const"/>
       
   362           </xs:restriction>
       
   363         </xs:simpleType>
       
   364       </xs:attribute>
       
   365       <xs:attribute name="value" default="const">
       
   366         <xs:simpleType>
       
   367           <xs:restriction base="xs:string">
       
   368             <xs:enumeration value="const"/>
       
   369           </xs:restriction>
       
   370         </xs:simpleType>
       
   371       </xs:attribute>
       
   372       <xs:attributeGroup ref="univ-atts"/>
       
   373       <xs:attribute name="outputclass"/>
       
   374       <xs:attributeGroup ref="global-atts"/>
       
   375       <xs:attribute name="class" default="- topic/state reference/state apiRef/apiQualifier apiValue/apiQualifier cxxVariable/cxxVariableConst "/>
       
   376     </xs:complexType>
       
   377   </xs:element>
       
   378   <xs:element name="cxxVariableVolatile">
       
   379     <xs:complexType>
       
   380       <xs:attribute name="name" default="volatile">
       
   381         <xs:simpleType>
       
   382           <xs:restriction base="xs:string">
       
   383             <xs:enumeration value="volatile"/>
       
   384           </xs:restriction>
       
   385         </xs:simpleType>
       
   386       </xs:attribute>
       
   387       <xs:attribute name="value" default="volatile">
       
   388         <xs:simpleType>
       
   389           <xs:restriction base="xs:string">
       
   390             <xs:enumeration value="volatile"/>
       
   391           </xs:restriction>
       
   392         </xs:simpleType>
       
   393       </xs:attribute>
       
   394       <xs:attributeGroup ref="univ-atts"/>
       
   395       <xs:attribute name="outputclass"/>
       
   396       <xs:attributeGroup ref="global-atts"/>
       
   397       <xs:attribute name="class" default="- topic/state reference/state apiRef/apiQualifier apiValue/apiQualifier cxxVariable/cxxVariableVolatile "/>
       
   398     </xs:complexType>
       
   399   </xs:element>
       
   400   <!-- Location information -->
       
   401   <xs:element name="cxxVariableAPIItemLocation">
       
   402     <xs:complexType>
       
   403       <xs:sequence>
       
   404         <xs:group ref="cxxVariableDeclarationFile"/>
       
   405         <xs:group ref="cxxVariableDeclarationFileLine"/>
       
   406       </xs:sequence>
       
   407       <xs:attributeGroup ref="univ-atts"/>
       
   408       <xs:attribute name="outputclass"/>
       
   409       <xs:attributeGroup ref="global-atts"/>
       
   410       <xs:attribute name="class" default="- topic/ph reference/ph apiRef/apiDefItem apiValue/apiDefItem cxxVariable/cxxVariableAPIItemLocation"/>
       
   411     </xs:complexType>
       
   412   </xs:element>
       
   413   <xs:element name="cxxVariableDeclarationFile">
       
   414     <xs:complexType>
       
   415       <xs:attribute name="name" default="filePath">
       
   416         <xs:simpleType>
       
   417           <xs:restriction base="xs:string">
       
   418             <xs:enumeration value="filePath"/>
       
   419           </xs:restriction>
       
   420         </xs:simpleType>
       
   421       </xs:attribute>
       
   422       <xs:attribute name="value" use="required"/>
       
   423       <xs:attributeGroup ref="univ-atts"/>
       
   424       <xs:attribute name="outputclass"/>
       
   425       <xs:attributeGroup ref="global-atts"/>
       
   426       <xs:attribute name="class" default="- topic/state reference/state apiRef/apiQualifier apiValue/apiQualifier cxxVariable/cxxVariableDeclarationFile "/>
       
   427     </xs:complexType>
       
   428   </xs:element>
       
   429   <xs:element name="cxxVariableDeclarationFileLine">
       
   430     <xs:complexType>
       
   431       <xs:attribute name="name" default="lineNumber">
       
   432         <xs:simpleType>
       
   433           <xs:restriction base="xs:string">
       
   434             <xs:enumeration value="lineNumber"/>
       
   435           </xs:restriction>
       
   436         </xs:simpleType>
       
   437       </xs:attribute>
       
   438       <xs:attribute name="value" use="required"/>
       
   439       <xs:attributeGroup ref="univ-atts"/>
       
   440       <xs:attribute name="outputclass"/>
       
   441       <xs:attributeGroup ref="global-atts"/>
       
   442       <xs:attribute name="class" default="- topic/state reference/state apiRef/apiQualifier apiValue/apiQualifier cxxVariable/cxxVariableDeclarationFileLine "/>
       
   443     </xs:complexType>
       
   444   </xs:element>
       
   445 </xs:schema>
       
   446 <!-- ============ Class attributes for type ancestry ============ -->
       
   447 <!-- Relation elements -->