bibxmlext.dtd
For easier reference we repeat here the complete content of the file bibxmlext.dtd
which is explained in 7.2.
<?xml version="1.0" encoding="UTF-8"?> <!-- - (C) Frank Lübeck (https://www.math.rwth-aachen.de/~Frank.Luebeck) - - The BibXMLext data format. - - This DTD expresses XML markup similar to the BibTeX language - specified for LaTeX, or actually its content model. - - It is a variation of a file bibxml.dtd developed by the project - https://bibtexml.sf.net/ - - For documentation on BibTeX, see - https://tug.org/bibtex/ - - A previous version of the code originally developed by - Vidar Bronken Gundersen, https://bibtexml.sf.net/ - Reuse and repurposing is approved as long as this - notification appears with the code. - --> <!-- ..................................................................... --> <!-- Main structure --> <!-- key-value pairs as in BibTeX @string entries are put in empty elements (but here they can be used for parts of an entry field as well) --> <!ELEMENT string EMPTY> <!ATTLIST string key CDATA #REQUIRED value CDATA #REQUIRED > <!-- entry may contain one of the bibliographic types. --> <!ELEMENT entry ( article | book | booklet | manual | techreport | mastersthesis | phdthesis | inbook | incollection | proceedings | inproceedings | conference | unpublished | misc ) > <!ATTLIST entry id CDATA #REQUIRED > <!-- file is the documents top element. --> <!ELEMENT file ( string | entry )* > <!-- ..................................................................... --> <!-- Parameter entities --> <!-- these are additional elements often used, but not included in the standard BibTeX distribution, these must be added to the bibliography styles, otherwise these fields will be omitted by the formatter, we allow an arbitrary number of 'other' elements to specify any further information --> <!ENTITY % n.user " abstract?, affiliation?, contents?, copyright?, (isbn | issn)?, keywords?, language?, lccn?, location?, mrnumber?, mrclass?, mrreviewer?, price?, size?, url?, category?, other* "> <!ENTITY % n.common "key?, annotate?, crossref?, %n.user;"> <!-- content model used more than once --> <!ENTITY % n.InProceedings "author, title, booktitle, year, editor?, (volume | number)?, series?, pages?, address?, month?, organization?, publisher?, note?, %n.common;"> <!ENTITY % n.PHDThesis "author, title, school, year, type?, address?, month?, note?, %n.common;"> <!-- ..................................................................... --> <!-- Entries in the BibTeX database --> <!-- [article] An article from a journal or magazine. - Required fields: author, title, journal, year. - Optional fields: volume, number, pages, month, note. --> <!ELEMENT article (author, title, journal, year, volume?, number?, pages?, month?, note?, %n.common;) > <!-- [book] A book with an explicit publisher. - Required fields: author or editor, title, publisher, year. - Optional fields: volume or number, series, address, - edition, month, note. --> <!ELEMENT book ((author | editor), title, publisher, year, (volume | number)?, series?, address?, edition?, month?, note?, %n.common;) > <!-- [booklet] A work that is printed and bound, but without a named - publisher or sponsoring institution - Required field: title. - Optional fields: author, howpublished, address, month, year, note. --> <!ELEMENT booklet (author?, title, howpublished?, address?, month?, year?, note?, %n.common;) > <!-- [conference] The same as INPROCEEDINGS, - included for Scribe compatibility. --> <!ELEMENT conference (%n.InProceedings;) > <!-- [inbook] A part of a book, which may be a chapter (or section or - whatever) and/or a range of pages. - Required fields: author or editor, title, chapter and/or pages, - publisher, year. - Optional fields: volume or number, series, type, address, - edition, month, note. --> <!ELEMENT inbook ((author | editor), title, ((chapter, pages?) | pages), publisher, year, (volume | number)?, series?, type?, address?, edition?, month?, note?, %n.common;) > <!-- - > I want to express that the elements a and/or b are legal that is one - > of them or both must be present in the document instance (see the - > element content for BibTeX entry `InBook'). - > How do I specify this in my DTD? - - Dave Peterson: - in content model: ((a , b?) | b) if order matters - ((a , b?) | (b , a?)) otherwise --> <!-- [incollection] A part of a book having its own title. - Required fields: author, title, booktitle, publisher, year. - Optional fields: editor, volume or number, series, type, - chapter, pages, address, edition, month, note. --> <!ELEMENT incollection (author, title, booktitle, publisher, year, editor?, (volume | number)?, series?, type?, chapter?, pages?, address?, edition?, month?, note?, %n.common;) > <!-- [inproceedings] An article in a conference proceedings. - Required fields: author, title, booktitle, year. - Optional fields: editor, volume or number, series, pages, - address, month, organization, publisher, note. --> <!ELEMENT inproceedings (%n.InProceedings;) > <!-- [manual] Technical documentation - Required field: title. - Optional fields: author, organization, address, - edition, month, year, note. --> <!ELEMENT manual (author?, title, organization?, address?, edition?, month?, year?, note?, %n.common;) > <!-- [mastersthesis] A Master's thesis. - Required fields: author, title, school, year. - Optional fields: type, address, month, note. --> <!ELEMENT mastersthesis (%n.PHDThesis;) > <!-- [misc] Use this type when nothing else fits. - Required fields: none. - Optional fields: author, title, howpublished, month, year, note. --> <!ELEMENT misc (author?, title?, howpublished?, month?, year?, note?, %n.common;) > <!-- [phdthesis] A PhD thesis. - Required fields: author, title, school, year. - Optional fields: type, address, month, note. --> <!ELEMENT phdthesis (%n.PHDThesis;) > <!-- [proceedings] The proceedings of a conference. - Required fields: title, year. - Optional fields: editor, volume or number, series, - address, month, organization, publisher, note. --> <!ELEMENT proceedings (editor?, title, year, (volume | number)?, series?, address?, month?, organization?, publisher?, note?, %n.common;) > <!-- [techreport] A report published by a school or other institution, - usually numbered within a series. - Required fields: author, title, institution, year. - Optional fields: type, number, address, month, note. --> <!ELEMENT techreport (author, title, institution, year, type?, number?, address?, month?, note?, %n.common;) > <!-- [unpublished] A document having an author and title, but not - formally published. - Required fields: author, title, note. - Optional fields: month, year. --> <!ELEMENT unpublished (author, title, note, month?, year?, %n.common;) > <!-- ..................................................................... --> <!-- Fields from the standard bibliography styles --> <!-- - Below is a description of all fields recognized by the standard - bibliography styles. An entry can also contain other fields, which - are ignored by those styles. - - [address] Usually the address of the publisher or other type of - institution For major publishing houses, van~Leunen recommends - omitting the information entirely. For small publishers, on the other - hand, you can help the reader by giving the complete address. - - [annote] An annotation It is not used by the standard bibliography - styles, but may be used by others that produce an annotated - bibliography. - - [author] The name(s) of the author(s), here *not* in the format - described in the LaTeX book. Contains elements <name> which in turn - contains elements <first>, <last> for the first name (or first names, - fully written or as initials, and including middle initials) and - the last name. - - [booktitle] Title of a book, part of which is being cited. See the - LaTeX book for how to type titles. For book entries, use the title - field instead. - - [chapter] A chapter (or section or whatever) number. - - [crossref] The database key of the entry being cross referenced. - - [edition] The edition of a book-for example, ``Second''. This - should be an ordinal, and should have the first letter capitalized, as - shown here; the standard styles convert to lower case when necessary. - - [editor] Name(s) of editor(s), typed as indicated in the LaTeX book. - If there is also an author field, then the editor field gives the - editor of the book or collection in which the reference appears. - - [howpublished] How something strange has been published. The first - word should be capitalized. - - [institution] The sponsoring institution of a technical report. - - [journal] A journal name. Abbreviations are provided for many - journals; see the Local Guide. - - [key] Used for alphabetizing, cross referencing, and creating a label - when the ``author'' information (described in Section [ref: ] is - missing. This field should not be confused with the key that appears - in the \cite command and at the beginning of the database entry. - - [month] The month in which the work was published or, for an - unpublished work, in which it was written. You should use the - standard three-letter abbreviation, as described in Appendix B.1.3 of - the LaTeX book. - - [note] Any additional information that can help the reader. The first - word should be capitalized. - - [number] The number of a journal, magazine, technical report, or of a - work in a series. An issue of a journal or magazine is usually - identified by its volume and number; the organization that issues a - technical report usually gives it a number; and sometimes books are - given numbers in a named series. - - [organization] The organization that sponsors a conference or that - publishes a manual. - - [pages] One or more page numbers or range of numbers, such as 42-111 - or 7,41,73-97 or 43+ (the `+' in this last example indicates pages - following that don't form a simple range). To make it easier to - maintain Scribe-compatible databases, the standard styles convert a - single dash (as in 7-33) to the double dash used in TeX to denote - number ranges (as in 7-33). Here, we suggest to use the entity - – for a dash in page ranges. - - [publisher] The publisher's name. - - [school] The name of the school where a thesis was written. - - [series] The name of a series or set of books. When citing an entire - book, the the title field gives its title and an optional series field - gives the name of a series or multi-volume set in which the book is - published. - - [title] The work's title. For mathematical formulae use the <M> or - <Math> elements explained below (and LaTeX code in the content, without - surrounding '$'). - - [type] The type of a technical report-for example, ``Research - Note''. - - [volume] The volume of a journal or multivolume book. - - [year] The year of publication or, for an unpublished work, the year - it was written. Generally it should consist of four numerals, such as - 1984, although the standard styles can handle any year whose last four - nonpunctuation characters are numerals, such as `(about 1984)'. --> <!-- Here is the main extension compared to the original BibXML definition from which is DTD is derived: We want to allow more markup in some elements such that we can use the bibliography for high quality output in other formats than LaTeX. - <M> and <Math>, mathematical formulae: Specify LaTeX code for "simple" formulae as content of <M> elements; "simple" means that they can be translated to a fairly readable ASCII representation as explained in the GAPDoc documentation on "<M>". More complicated formulae are given as content of <Math> elements. (Think about an <Alt> alternative for text or HTML representations.) - <URL>: use these elements to specify URLs, they can be properly converted to links if possible in an output format (in that case the Text attribute is used for the visible text). - <value key="..."/>: substituted by the value-attribute specified in a <string key="..." value="..."/> element. Can be used anywhere, not only for complete fields as in BibTeX. - <C> protect case changes: should be used instead of {}'s which are used in BibTeX title fields to protect the case of letters from changes. - <Alt Only="...">, <Alt Not="...">, alternatives for different output formats: Use this to specify alternatives, the GAPDoc utilities will do some special handling for "Text", "HTML", and "BibTeX" as output type. - <Wrap Name="...">, generic wrapper for other markup: Use this for any other type of markup you are interested in. The GAPDoc utilities will ignore the markup, but provide a hook to do install handler functions for them. --> <!ELEMENT M (#PCDATA | Alt)* > <!-- math with simple text representation, in LaTeX --> <!ELEMENT Math (#PCDATA | Alt)* > <!-- other math in LaTeX --> <!ELEMENT URL (#PCDATA | Alt | Link | LinkText)* > <!-- an URL --> <!ATTLIST URL Text CDATA #IMPLIED> <!-- text to be printed (default is content) --> <!ELEMENT value EMPTY > <!-- placeholder for value given .. --> <!ATTLIST value key CDATA #REQUIRED > <!-- .. by key, defined in a string element --> <!ELEMENT C (#PCDATA | value | Alt | M | Math | Wrap | URL)* > <!-- protect from case changes --> <!ELEMENT Alt (#PCDATA | value | C | Alt | M | Math | Wrap | URL)* > <!-- specify alternatives for various types of output --> <!ATTLIST Alt Only CDATA #IMPLIED Not CDATA #IMPLIED > <!-- specify output types in comma and whitespace separated list (use exactly one of Only or Not) --> <!ENTITY % withMURL "(#PCDATA | value | M | Math | Wrap | URL | C | Alt )*" > <!ELEMENT Wrap %withMURL; > <!-- a generic wrapper --> <!ATTLIST Wrap Name CDATA #REQUIRED > <!-- needs a 'Name' attribute --> <!ELEMENT address %withMURL; > <!-- here we don't want the complicated definition from the LaTeX book, use markup for first/last name(s): a <name> element for each author which contains <first> (optional), <last> elements: --> <!ELEMENT author (name)* > <!ELEMENT name (first?, last) > <!ELEMENT first (#PCDATA) > <!ELEMENT last (#PCDATA) > <!ELEMENT booktitle %withMURL; > <!ELEMENT chapter %withMURL; > <!ELEMENT edition %withMURL; > <!-- same as for author field --> <!ELEMENT editor (name)* > <!ELEMENT howpublished %withMURL; > <!ELEMENT institution %withMURL; > <!ELEMENT journal %withMURL; > <!ELEMENT month %withMURL; > <!ELEMENT note %withMURL; > <!ELEMENT number %withMURL; > <!ELEMENT organization %withMURL; > <!ELEMENT pages %withMURL; > <!ELEMENT publisher %withMURL; > <!ELEMENT school %withMURL; > <!ELEMENT series %withMURL; > <!ELEMENT title %withMURL; > <!ELEMENT type %withMURL; > <!ELEMENT volume %withMURL; > <!ELEMENT year (#PCDATA) > <!-- These were not listed in the documentation for entry content, but - appeared in the list of fields in the BibTeX documentation --> <!ELEMENT annotate %withMURL; > <!ELEMENT crossref %withMURL; > <!ELEMENT key (#PCDATA) > <!-- ..................................................................... --> <!-- Other popular fields - - From: http://www.ecst.csuchico.edu/~jacobsd/bib/formats/bibtex.html - BibTeX is extremely popular, and many people have used it to store - information. Here is a list of some of the more common fields: - - [affiliation] The authors affiliation. - [abstract] An abstract of the work. - [contents] A Table of Contents - [copyright] Copyright information. - [ISBN] The International Standard Book Number. - [ISSN] The International Standard Serial Number. - Used to identify a journal. - [keywords] Key words used for searching or possibly for annotation. - [language] The language the document is in. - [location] A location associated with the entry, - such as the city in which a conference took place. - [LCCN] The Library of Congress Call Number. - I've also seen this as lib-congress. - [mrnumber] The Mathematical Reviews number. - [mrclass] The Mathematical Reviews class. - [mrreviewer] The Mathematical Reviews reviewer. - [price] The price of the document. - [size] The physical dimensions of a work. - [URL] The WWW Universal Resource Locator that points to the item being - referenced. This often is used for technical reports to point to the - ftp site where the postscript source of the report is located. - - When using BibTeX with LaTeX you need - BibTeX style files to print these data. --> <!ELEMENT abstract %withMURL; > <!ELEMENT affiliation %withMURL; > <!ELEMENT contents %withMURL; > <!ELEMENT copyright %withMURL; > <!ELEMENT isbn (#PCDATA) > <!ELEMENT issn (#PCDATA) > <!ELEMENT keywords %withMURL; > <!ELEMENT language %withMURL; > <!ELEMENT lccn (#PCDATA) > <!ELEMENT location %withMURL; > <!ELEMENT mrnumber %withMURL; > <!ELEMENT mrclass %withMURL; > <!ELEMENT mrreviewer %withMURL; > <!ELEMENT price %withMURL; > <!ELEMENT size %withMURL; > <!ELEMENT url %withMURL; > <!-- Added by Zeger W. Hendrikse - [category] Category of this bibitem --> <!ELEMENT category %withMURL; > <!-- A container element [other] for any further information, a description - of the type of data must be given in the attribute 'type' --> <!ELEMENT other %withMURL; > <!ATTLIST other type CDATA #REQUIRED > <!-- ..................................................................... --> <!-- Predefined/reserved character entities --> <!ENTITY amp "&#38;"> <!ENTITY lt "&#60;"> <!ENTITY gt ">"> <!ENTITY apos "'"> <!ENTITY quot """> <!-- Some more generally useful entities --> <!ENTITY nbsp " "> <!ENTITY copyright "©"> <!ENTITY ndash "–"> <!-- ..................................................................... --> <!-- End of BibXMLext dtd -->
generated by GAPDoc2HTML