International Tables for Crystallography (2006). Vol. G, ch. 5.3, pp. 499-525
doi: 10.1107/97809553602060000753

Chapter 5.3. Syntactic utilities for CIF

Contents

  • 5.3. Syntactic utilities for CIF  (pp. 499-525) | html | pdf | chapter contents |
    • 5.3.1. Introduction  (p. 499) | html | pdf |
    • 5.3.2. Syntax checker  (pp. 499-501) | html | pdf |
      • 5.3.2.1. vcif   (pp. 499-501) | html | pdf |
        • 5.3.2.1.1. How to use vcif   (pp. 499-500) | html | pdf |
        • 5.3.2.1.2. Options to vcif   (p. 500) | html | pdf |
        • 5.3.2.1.3. Limitations of vcif   (p. 501) | html | pdf |
    • 5.3.3. Editors with graphical user interfaces  (pp. 501-507) | html | pdf |
      • 5.3.3.1. enCIFer   (pp. 501-504) | html | pdf |
        • 5.3.3.1.1. The main graphical window  (p. 501) | html | pdf |
        • 5.3.3.1.2. The interface toolbar  (pp. 501-502) | html | pdf |
        • 5.3.3.1.3. The task bar  (p. 502) | html | pdf |
        • 5.3.3.1.4. The main edit pane  (p. 502) | html | pdf |
        • 5.3.3.1.5. The dictionary browse pane  (p. 502) | html | pdf |
        • 5.3.3.1.6. The error notification pane and logging area  (pp. 502-503) | html | pdf |
        • 5.3.3.1.7. The loop editor  (p. 503) | html | pdf |
        • 5.3.3.1.8. The publication and chemical and crystal data wizards  (p. 503) | html | pdf |
        • 5.3.3.1.9. The visualization window  (pp. 503-504) | html | pdf |
      • 5.3.3.2. CIFEDIT   (p. 504) | html | pdf |
      • 5.3.3.3. HICCuP   (pp. 504-506) | html | pdf |
        • 5.3.3.3.1. Interactive use of the program  (pp. 505-506) | html | pdf |
          • 5.3.3.3.1.1. The control window  (p. 505) | html | pdf |
          • 5.3.3.3.1.2. The report frame and edit window  (p. 505) | html | pdf |
          • 5.3.3.3.1.3. Dictionary browsing  (pp. 505-506) | html | pdf |
        • 5.3.3.3.2. Options  (p. 506) | html | pdf |
      • 5.3.3.4. Platform-specific editors  (pp. 506-507) | html | pdf |
        • 5.3.3.4.1. beCIF   (p. 506) | html | pdf |
        • 5.3.3.4.2. printCIF for Word   (pp. 506-507) | html | pdf |
    • 5.3.4. Data-name validation  (pp. 507-509) | html | pdf |
      • 5.3.4.1. CYCLOPS   (pp. 508-509) | html | pdf |
        • 5.3.4.1.1. Operation  (p. 508) | html | pdf |
        • 5.3.4.1.2. Invocation of the program  (pp. 508-509) | html | pdf |
    • 5.3.5. File transformation software  (pp. 509-515) | html | pdf |
      • 5.3.5.1. QUASAR : a data extractor  (pp. 509-511) | html | pdf |
        • 5.3.5.1.1. Purpose  (p. 509) | html | pdf |
        • 5.3.5.1.2. Mode of operation  (p. 509) | html | pdf |
        • 5.3.5.1.3. The request list  (pp. 509-510) | html | pdf |
        • 5.3.5.1.4. Output from QUASAR   (p. 511) | html | pdf |
          • 5.3.5.1.4.1. Treatment of missing data  (p. 511) | html | pdf |
          • 5.3.5.1.4.2. Matching data names  (p. 511) | html | pdf |
          • 5.3.5.1.4.3. Case sensitivity  (p. 511) | html | pdf |
      • 5.3.5.2. cif2cif   (pp. 511-512) | html | pdf |
        • 5.3.5.2.1. Operation  (pp. 511-512) | html | pdf |
          • 5.3.5.2.1.1. Copying  (p. 511) | html | pdf |
          • 5.3.5.2.1.2. Constraining standard uncertainties to specified ranges  (p. 511) | html | pdf |
          • 5.3.5.2.1.3. Dictionary validation  (p. 511) | html | pdf |
          • 5.3.5.2.1.4. Serving a request list  (pp. 511-512) | html | pdf |
          • 5.3.5.2.1.5. Other features  (p. 512) | html | pdf |
        • 5.3.5.2.2. Invocation of the program  (p. 512) | html | pdf |
      • 5.3.5.3. ciftex : translating to a typesetting language  (pp. 512-515) | html | pdf |
        • 5.3.5.3.1. Basic operation of ciftex   (pp. 512-514) | html | pdf |
          • 5.3.5.3.1.1. Non-looped data  (p. 513) | html | pdf |
          • 5.3.5.3.1.2. Looped data  (p. 513) | html | pdf |
          • 5.3.5.3.1.3. The ancillary map file  (pp. 513-514) | html | pdf |
          • 5.3.5.3.1.4. The ancillary format file  (p. 514) | html | pdf |
        • 5.3.5.3.2. Invocation of the program  (p. 514) | html | pdf |
        • 5.3.5.3.3. Some general comments  (pp. 514-515) | html | pdf |
    • 5.3.6. Libraries for scripting languages  (pp. 515-517) | html | pdf |
      • 5.3.6.1. STAR::Parser and related Perl modules  (pp. 515-517) | html | pdf |
        • 5.3.6.1.1. STAR::Parser   (p. 515) | html | pdf |
        • 5.3.6.1.2. STAR::Dictionary   (p. 515) | html | pdf |
        • 5.3.6.1.3. STAR::DataBlock   (pp. 515-516) | html | pdf |
        • 5.3.6.1.4. STAR::Checker   (p. 516) | html | pdf |
        • 5.3.6.1.5. STAR::Writer and STAR::Filter   (p. 517) | html | pdf |
      • 5.3.6.2. PyCifRW : CIF reading and writing in Python  (p. 517) | html | pdf |
    • 5.3.7. Rapid development tools  (pp. 517-522) | html | pdf |
      • 5.3.7.1. ZINC: an interface to CIF for standard Unix tools  (pp. 518-519) | html | pdf |
        • 5.3.7.1.1. Description of the ZINC format  (p. 518) | html | pdf |
        • 5.3.7.1.2. ZINC-based utilities  (pp. 518-519) | html | pdf |
          • 5.3.7.1.2.1. cifZinc   (p. 518) | html | pdf |
          • 5.3.7.1.2.2. zincCif   (p. 519) | html | pdf |
          • 5.3.7.1.2.3. zincGrep   (p. 519) | html | pdf |
          • 5.3.7.1.2.4. cifdiff   (p. 519) | html | pdf |
          • 5.3.7.1.2.5. zb   (p. 519) | html | pdf |
          • 5.3.7.1.2.6. zincNl   (p. 519) | html | pdf |
          • 5.3.7.1.2.7. zincSubset   (p. 519) | html | pdf |
      • 5.3.7.2. CifSieve : automatic construction of CIF input functions  (pp. 520-522) | html | pdf |
        • 5.3.7.2.1. Overview of the process  (p. 520) | html | pdf |
        • 5.3.7.2.2. The augmented DDL dictionary  (p. 520) | html | pdf |
        • 5.3.7.2.3. Input to a C application program  (p. 521) | html | pdf |
        • 5.3.7.2.4. Input to a Fortran application program  (pp. 521-522) | html | pdf |
    • 5.3.8. Tools for mmCIF  (pp. 522-525) | html | pdf |
      • 5.3.8.1. CIFOBJ and related libraries  (p. 522) | html | pdf |
      • 5.3.8.2. OpenMMS   (pp. 522-523) | html | pdf |
        • 5.3.8.2.1. The OpenMMS toolkit  (p. 523) | html | pdf |
      • 5.3.8.3. mmLib : a Python toolkit for bioinformatics applications  (pp. 523-525) | html | pdf |
    • 5.3.9. Concluding remarks  (p. 525) | html | pdf |
    • References | html | pdf |
    • Figures
      • Fig. 5.3.2.1. ( a ) An example CIF with a number of syntax errors and ( b ) the report of the errors produced by vcif   (p. 500) | html | pdf |
      • Fig. 5.3.2.2. Verbose error listing from vcif when run with the ` -v ' option on the example of Fig. 5.3.2.1  (p. 500) | html | pdf |
      • Fig. 5.3.3.1. The enCIFer graphical user interface  (p. 501) | html | pdf |
      • Fig. 5.3.3.2. The enCIFer loop editor  (p. 503) | html | pdf |
      • Fig. 5.3.3.3. The enCIFer publication data wizard  (p. 503) | html | pdf |
      • Fig. 5.3.3.4. The enCIFer chemical and crystal data wizard  (p. 503) | html | pdf |
      • Fig. 5.3.3.5. Visualization of a molecular and crystal three-dimensional structure with enCIFer   (p. 503) | html | pdf |
      • Fig. 5.3.3.6. The use of CIFEDIT to display and alter the contents of a CIF  (p. 504) | html | pdf |
      • Fig. 5.3.3.7. Row-based loop editing with CIFEDIT   (p. 504) | html | pdf |
      • Fig. 5.3.3.8. Control window of the HICCuP application  (p. 505) | html | pdf |
      • Fig. 5.3.3.9. HICCuP edit window and error description  (p. 505) | html | pdf |
      • Fig. 5.3.3.10. HICCuP dictionary browser window  (p. 505) | html | pdf |
      • Fig. 5.3.3.11. A category view in the beCIF editor of a CIF with navigation by tabs  (p. 506) | html | pdf |
      • Fig. 5.3.3.12. Representation by the beCIF editor of looped data within a category (here ATOM_SITE ) in spreadsheet style  (p. 507) | html | pdf |
      • Fig. 5.3.3.13. The dual RTF/CIF editing windows in the printCIF for Word application  (p. 507) | html | pdf |
      • Fig. 5.3.4.1. Sample output from CYCLOPS   (p. 509) | html | pdf |
      • Fig. 5.3.5.1. An example request list for QUASAR   (p. 510) | html | pdf |
      • Fig. 5.3.5.2. Example CIF for demonstrating the use of QUASAR   (p. 510) | html | pdf |
      • Fig. 5.3.5.3. Result of running QUASAR with the example request list of Fig. 5.3.5.1 on the CIF listed in Fig. 5.3.5.2  (p. 510) | html | pdf |
      • Fig. 5.3.5.4. Sample CIF data input to ciftex   (p. 513) | html | pdf |
      • Fig. 5.3.5.5. Output from ciftex run on the data of Fig. 5.3.5.4  (p. 513) | html | pdf |
      • Fig. 5.3.5.6. [\hbox{\TeX}] markup for typesetting a table of atomic coordinates  (p. 513) | html | pdf |
      • Fig. 5.3.5.7. Example map file for use with ciftex   (p. 514) | html | pdf |
      • Fig. 5.3.5.8. Example format file for ciftex   (p. 514) | html | pdf |
      • Fig. 5.3.6.1. Skeleton version of an application to format a CIF dictionary for publication  (p. 516) | html | pdf |
      • Fig. 5.3.6.2. Structure of the imgCIF dictionary (Chapter 4.6 [link] ) as described by the get_keys method of the STAR::DataBlock module  (p. 517) | html | pdf |
      • Fig. 5.3.7.1. ZINC transformation of CIF  (p. 518) | html | pdf |
      • Fig. 5.3.7.2. Two example files in CIF format differing greatly in layout but little in content: ( a ) sample1.cif, ( b ) sample2.cif  (p. 519) | html | pdf |
      • Fig. 5.3.7.3. Output from cifdiff comparing files sample1.cif and sample2.cif of Fig. 5.3.7.2  (p. 519) | html | pdf |
      • Fig. 5.3.7.4. Extracts from an augmented DDL1 dictionary (version 1.0 of the core CIF dictionary)  (p. 520) | html | pdf |
      • Fig. 5.3.7.5. Header file cifvars.h for a C application built by BuildSiv from the augmented DDL dictionary of Fig. 5.3.7.4  (p. 521) | html | pdf |
      • Fig. 5.3.7.6. An example C program designed to read CIF data as tagged in the augmented DDL dictionary of Fig. 5.3.7.4  (p. 521) | html | pdf |
      • Fig. 5.3.7.7. Fortran include file forcif.inc for an application built by BuildSiv from the augmented DDL dictionary of Fig. 5.3.7.4  (p. 522) | html | pdf |
      • Fig. 5.3.7.8. An example Fortran program designed to read CIF data as tagged in the augmented DDL dictionary of Fig. 5.3.7.4  (p. 522) | html | pdf |
      • Fig. 5.3.8.1. The OpenMMS metamodel and data flow  (p. 523) | html | pdf |
      • Fig. 5.3.8.2. Sample XML output from the OpenMMS XML generator  (p. 524) | html | pdf |
      • Fig. 5.3.8.3. A snippet of code illustrating mmCIF/PDB file format conversion with the mmLib toolkit  (p. 524) | html | pdf |
    • Tables
      • Table 5.3.6.1. Object methods provided by the STAR::DataBlock Perl module  (p. 516) | html | pdf |
      • Table 5.3.8.1. The modules provided by the mmLib toolkit  (p. 524) | html | pdf |