bookmarks/xbel-1.0.dtd
changeset 13 8f58c9334c71
equal deleted inserted replaced
10:b61e1b3b145f 13:8f58c9334c71
       
     1 <!-- This is the XML Bookmarks Exchange Language, version 1.0.  It
       
     2      should be used with the formal public identifier:
       
     3 
       
     4         +//IDN python.org//DTD XML Bookmark Exchange Language 1.0//EN//XML
       
     5 
       
     6      One valid system identifier at which this DTD will remain
       
     7      available is:
       
     8 
       
     9         http://pyxml.sourceforge.net/topics/dtds/xbel-1.0.dtd
       
    10 
       
    11      More information on the DTD, including reference
       
    12      documentation, is available at:
       
    13 
       
    14         http://www.python.org/topics/xml/xbel/
       
    15 
       
    16     Attributes which take date/time values should encode the value
       
    17     according to the W3C NOTE on date/time formats:
       
    18 
       
    19         http://www.w3.org/TR/NOTE-datetime
       
    20   -->
       
    21 
       
    22 
       
    23 <!-- Customization entities.  Define these before "including" this DTD
       
    24      to create "subclassed" DTDs.
       
    25   -->
       
    26 <!ENTITY % local.node.att  "">
       
    27 <!ENTITY % local.url.att   "">
       
    28 <!ENTITY % local.nodes.mix "">
       
    29 
       
    30 <!ENTITY % node.att     "id       ID    #IMPLIED
       
    31                          added    CDATA #IMPLIED
       
    32                          %local.node.att;">
       
    33 
       
    34 <!ENTITY % url.att      "href     CDATA #REQUIRED
       
    35                          visited  CDATA #IMPLIED
       
    36                          modified CDATA #IMPLIED
       
    37                          %local.url.att;">
       
    38 
       
    39 <!ENTITY % nodes.mix    "bookmark|folder|alias|separator
       
    40                          %local.nodes.mix;">
       
    41 
       
    42 
       
    43 <!ELEMENT xbel (title?, info?, desc?, (%nodes.mix;)*)>
       
    44 <!ATTLIST xbel
       
    45             %node.att;
       
    46             version  CDATA      #FIXED "1.0"
       
    47 >
       
    48 <!ELEMENT title      (#PCDATA)>
       
    49 
       
    50 <!--=================== Info ======================================-->
       
    51 
       
    52 <!ELEMENT info (metadata+)>
       
    53 
       
    54 <!ELEMENT metadata EMPTY>
       
    55 <!ATTLIST metadata
       
    56             owner    CDATA      #REQUIRED
       
    57 >
       
    58 
       
    59 <!--=================== Folder ====================================-->
       
    60 
       
    61 <!ELEMENT folder   (title?, info?, desc?, (%nodes.mix;)*)>
       
    62 <!ATTLIST folder
       
    63             %node.att;
       
    64             folded   (yes|no)   'yes'   
       
    65 >
       
    66 
       
    67 <!--=================== Bookmark ==================================-->
       
    68 
       
    69 <!ELEMENT bookmark (title?, info?, desc?)>
       
    70 <!ATTLIST bookmark
       
    71             %node.att;
       
    72             %url.att;
       
    73 >
       
    74 
       
    75 <!ELEMENT desc       (#PCDATA)>
       
    76 
       
    77 <!--=================== Separator =================================-->
       
    78 
       
    79 <!ELEMENT separator EMPTY>
       
    80 
       
    81 <!--=================== Alias =====================================-->
       
    82 
       
    83 <!-- <alias> elements correspond to Netscape bookmark aliases.  The
       
    84      required "ref" attribute must refer to a <bookmark> or <folder>
       
    85      element.  Note that MSIE aliases can refer to folders, so that is
       
    86      supported in XBEL.  Applications must be careful about traversing
       
    87      aliases to folders to avoid improper recursion through circular
       
    88      data structures.
       
    89   -->
       
    90 
       
    91 <!ELEMENT alias EMPTY>
       
    92 <!ATTLIST alias
       
    93             ref       IDREF     #REQUIRED
       
    94 >