{
  "version": "10",
  "source": "tmp/documents/postgresql10_beta1_new_features_en_20170522-1.pdf",
  "stage": "Beta 1",
  "date": "2017-05-22",
  "pages": 101,
  "sha256": "4bbdf88f80fcb7820fb35c0a721defdda1059f6e2b2ddfd68fb2eb83ef643e31",
  "pdf_title": "PostgreSQL 10 New Features",
  "canonical_title": "PostgreSQL 10 Beta 1 New Features With Examples (EN)",
  "pdf_metadata_mismatch": true,
  "pdf_author": "noriyosi",
  "text_words": 16827,
  "text_urls": 12,
  "annotation_urls": 12,
  "source_revision": "1773200c5362476c4a549222b7d17fa91f546cae",
  "conversion": "scripts/convert_feature_books.py",
  "semantic_sections": [
    {
      "key": "about",
      "title": "About This Document",
      "slug": "01-about-this-document",
      "source_pages": [
        6,
        7
      ],
      "page_count": 2,
      "counts": {
        "source_pages": [
          6,
          7
        ],
        "headings": 6,
        "features": 0,
        "examples": 0,
        "syntaxes": 0,
        "tables": 3,
        "code_blocks": 0,
        "paragraphs": 13,
        "figures": 0
      }
    },
    {
      "key": "notation",
      "title": "Version Notation",
      "slug": "02-version-notation",
      "source_pages": [
        8,
        9
      ],
      "page_count": 2,
      "counts": {
        "source_pages": [
          8,
          9
        ],
        "headings": 1,
        "features": 0,
        "examples": 0,
        "syntaxes": 0,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 1,
        "figures": 1
      }
    },
    {
      "key": "overview",
      "title": "Overview",
      "slug": "03-overview",
      "source_pages": [
        9,
        11
      ],
      "page_count": 3,
      "counts": {
        "source_pages": [
          9,
          10,
          11
        ],
        "headings": 4,
        "features": 9,
        "examples": 0,
        "syntaxes": 0,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 13,
        "figures": 0
      }
    },
    {
      "key": "partitioning",
      "title": "Native Partition Table",
      "slug": "04-native-partition-table",
      "source_pages": [
        12,
        28
      ],
      "page_count": 17,
      "counts": {
        "source_pages": [
          12,
          13,
          14,
          15,
          16,
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "headings": 8,
        "features": 21,
        "examples": 34,
        "syntaxes": 0,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 35,
        "figures": 2
      }
    },
    {
      "key": "logical-replication",
      "title": "Logical Replication",
      "slug": "05-logical-replication",
      "source_pages": [
        29,
        39
      ],
      "page_count": 11,
      "counts": {
        "source_pages": [
          29,
          30,
          31,
          32,
          33,
          34,
          35,
          36,
          37,
          38,
          39
        ],
        "headings": 5,
        "features": 19,
        "examples": 9,
        "syntaxes": 6,
        "tables": 4,
        "code_blocks": 0,
        "paragraphs": 29,
        "figures": 2
      }
    },
    {
      "key": "parallel",
      "title": "Enhancement of Parallel Query",
      "slug": "06-enhancement-of-parallel-query",
      "source_pages": [
        40,
        43
      ],
      "page_count": 4,
      "counts": {
        "source_pages": [
          40,
          41,
          42,
          43
        ],
        "headings": 5,
        "features": 0,
        "examples": 6,
        "syntaxes": 0,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 6,
        "figures": 0
      }
    },
    {
      "key": "architecture",
      "title": "Architecture",
      "slug": "07-architecture",
      "source_pages": [
        44,
        57
      ],
      "page_count": 14,
      "counts": {
        "source_pages": [
          44,
          45,
          46,
          47,
          48,
          49,
          50,
          51,
          52,
          53,
          54,
          55,
          56,
          57
        ],
        "headings": 14,
        "features": 15,
        "examples": 10,
        "syntaxes": 1,
        "tables": 15,
        "code_blocks": 1,
        "paragraphs": 44,
        "figures": 0
      }
    },
    {
      "key": "monitoring",
      "title": "Monitoring",
      "slug": "08-monitoring",
      "source_pages": [
        58,
        59
      ],
      "page_count": 2,
      "counts": {
        "source_pages": [
          58,
          59
        ],
        "headings": 3,
        "features": 0,
        "examples": 2,
        "syntaxes": 0,
        "tables": 1,
        "code_blocks": 0,
        "paragraphs": 3,
        "figures": 0
      }
    },
    {
      "key": "synchronous",
      "title": "Quorum-based Synchronous Replication",
      "slug": "09-quorum-based-synchronous-replication",
      "source_pages": [
        60,
        61
      ],
      "page_count": 2,
      "counts": {
        "source_pages": [
          60,
          61
        ],
        "headings": 0,
        "features": 0,
        "examples": 1,
        "syntaxes": 3,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 1,
        "figures": 0
      }
    },
    {
      "key": "security",
      "title": "Enhancement of Row Level Security",
      "slug": "10-enhancement-of-row-level-security",
      "source_pages": [
        62,
        65
      ],
      "page_count": 4,
      "counts": {
        "source_pages": [
          62,
          63,
          64,
          65
        ],
        "headings": 3,
        "features": 0,
        "examples": 4,
        "syntaxes": 1,
        "tables": 2,
        "code_blocks": 0,
        "paragraphs": 4,
        "figures": 0
      }
    },
    {
      "key": "sql",
      "title": "Enhancement of SQL Statement",
      "slug": "11-enhancement-of-sql-statement",
      "source_pages": [
        66,
        80
      ],
      "page_count": 15,
      "counts": {
        "source_pages": [
          66,
          67,
          68,
          69,
          70,
          71,
          72,
          73,
          74,
          75,
          76,
          77,
          78,
          79,
          80
        ],
        "headings": 14,
        "features": 15,
        "examples": 24,
        "syntaxes": 11,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 37,
        "figures": 0
      }
    },
    {
      "key": "configuration",
      "title": "Change of Configuration Parameters",
      "slug": "12-change-of-configuration-parameters",
      "source_pages": [
        81,
        85
      ],
      "page_count": 5,
      "counts": {
        "source_pages": [
          81,
          82,
          83,
          84,
          85
        ],
        "headings": 7,
        "features": 8,
        "examples": 3,
        "syntaxes": 0,
        "tables": 4,
        "code_blocks": 0,
        "paragraphs": 18,
        "figures": 0
      }
    },
    {
      "key": "utilities",
      "title": "Change of Utility",
      "slug": "13-change-of-utility",
      "source_pages": [
        86,
        93
      ],
      "page_count": 8,
      "counts": {
        "source_pages": [
          86,
          87,
          88,
          89,
          90,
          91,
          92,
          93
        ],
        "headings": 13,
        "features": 27,
        "examples": 10,
        "syntaxes": 0,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 42,
        "figures": 0
      }
    },
    {
      "key": "modules",
      "title": "Contrib Modules",
      "slug": "14-contrib-modules",
      "source_pages": [
        94,
        98
      ],
      "page_count": 5,
      "counts": {
        "source_pages": [
          94,
          95,
          96,
          97,
          98
        ],
        "headings": 8,
        "features": 2,
        "examples": 9,
        "syntaxes": 0,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 21,
        "figures": 0
      }
    },
    {
      "key": "urls",
      "title": "URL List",
      "slug": "15-url-list",
      "source_pages": [
        99,
        99
      ],
      "page_count": 1,
      "counts": {
        "source_pages": [
          99
        ],
        "headings": 0,
        "features": 0,
        "examples": 0,
        "syntaxes": 0,
        "tables": 0,
        "code_blocks": 0,
        "paragraphs": 1
      }
    },
    {
      "key": "history",
      "title": "Change History",
      "slug": "16-change-history",
      "source_pages": [
        100,
        100
      ],
      "page_count": 1,
      "counts": {
        "source_pages": [
          100
        ],
        "headings": 0,
        "features": 0,
        "examples": 0,
        "syntaxes": 0,
        "tables": 1,
        "code_blocks": 0,
        "paragraphs": 0,
        "figures": 0
      }
    }
  ],
  "figures": [
    {
      "number": "1",
      "caption": "Version notation",
      "page": 8,
      "path": "/figures/10/figure-1.png"
    },
    {
      "number": "2",
      "caption": "Structure of table partition using inheritance table",
      "page": 12,
      "path": "/figures/10/figure-2.png"
    },
    {
      "number": "3",
      "caption": "Partitioning table structure",
      "page": 13,
      "path": "/figures/10/figure-3.png"
    },
    {
      "number": "4",
      "caption": "Object structure",
      "page": 29,
      "path": "/figures/10/figure-4.png"
    },
    {
      "number": "5",
      "caption": "Cascade replication",
      "page": 33,
      "path": "/figures/10/figure-5.png"
    }
  ],
  "commit_links": {},
  "page_links": {
    "1": [],
    "2": [],
    "3": [],
    "4": [],
    "5": [],
    "6": [
      "mailto:noriyoshi.shinoda@hpe.com"
    ],
    "7": [],
    "8": [],
    "9": [],
    "10": [],
    "11": [],
    "12": [],
    "13": [],
    "14": [],
    "15": [],
    "16": [],
    "17": [],
    "18": [],
    "19": [],
    "20": [],
    "21": [],
    "22": [],
    "23": [],
    "24": [],
    "25": [],
    "26": [],
    "27": [],
    "28": [],
    "29": [],
    "30": [],
    "31": [],
    "32": [],
    "33": [],
    "34": [],
    "35": [],
    "36": [],
    "37": [],
    "38": [],
    "39": [],
    "40": [],
    "41": [],
    "42": [],
    "43": [],
    "44": [],
    "45": [],
    "46": [],
    "47": [],
    "48": [],
    "49": [],
    "50": [],
    "51": [],
    "52": [],
    "53": [],
    "54": [],
    "55": [],
    "56": [],
    "57": [],
    "58": [],
    "59": [],
    "60": [],
    "61": [],
    "62": [],
    "63": [],
    "64": [],
    "65": [],
    "66": [],
    "67": [],
    "68": [],
    "69": [],
    "70": [],
    "71": [],
    "72": [],
    "73": [],
    "74": [],
    "75": [],
    "76": [],
    "77": [],
    "78": [],
    "79": [],
    "80": [],
    "81": [],
    "82": [],
    "83": [],
    "84": [],
    "85": [],
    "86": [],
    "87": [],
    "88": [],
    "89": [],
    "90": [],
    "91": [],
    "92": [],
    "93": [],
    "94": [],
    "95": [],
    "96": [],
    "97": [],
    "98": [],
    "99": [
      "https://www.postgresql.org/docs/devel/static/release-10.html",
      "https://commitfest.postgresql.org/",
      "https://www.postgresql.org/docs/devel/static/index.html",
      "https://github.com/postgres/postgres",
      "http://d.hatena.ne.jp/nuko_yokohama/",
      "http://qiita.com/nuko_yokohama",
      "https://www.postgresql.org/list/pgsql-hackers/",
      "https://www.postgresql.org/about/news/1749/",
      "https://blog.2ndquadrant.com/postgresql-10-roadmap/",
      "https://wiki.postgresql.org/wiki/PostgreSQL10_Roadmap",
      "https://postgresql-jp.slack.com/"
    ],
    "100": [],
    "101": []
  },
  "text_url_values": [
    "http://d.hatena.ne.jp/nuko_yokohama/",
    "http://paquier.xyz/",
    "http://qiita.com/nuko_yokohama",
    "https://blog.2ndquadrant.com/postgresql-10-roadmap/",
    "https://commitfest.postgresql.org/",
    "https://github.com/postgres/postgres",
    "https://postgresql-jp.slack.com/",
    "https://wiki.postgresql.org/wiki/PostgreSQL10_Roadmap",
    "https://www.postgresql.org/about/news/1749/",
    "https://www.postgresql.org/docs/devel/static/index.html",
    "https://www.postgresql.org/docs/devel/static/release-10.html",
    "https://www.postgresql.org/list/pgsql-hackers/"
  ],
  "annotation_url_values": [
    "http://d.hatena.ne.jp/nuko_yokohama/",
    "http://qiita.com/nuko_yokohama",
    "https://blog.2ndquadrant.com/postgresql-10-roadmap/",
    "https://commitfest.postgresql.org/",
    "https://github.com/postgres/postgres",
    "https://postgresql-jp.slack.com/",
    "https://wiki.postgresql.org/wiki/PostgreSQL10_Roadmap",
    "https://www.postgresql.org/about/news/1749/",
    "https://www.postgresql.org/docs/devel/static/index.html",
    "https://www.postgresql.org/docs/devel/static/release-10.html",
    "https://www.postgresql.org/list/pgsql-hackers/",
    "mailto:noriyoshi.shinoda@hpe.com"
  ],
  "external_url_corrections": {
    "git://git.postgresql.org/git/postgresql.git": "https://git.postgresql.org/gitweb/?p=postgresql.git;a=summary"
  },
  "notes": [
    "Commit references are linked to the exact PostgreSQL Git commit URLs found in the PDF annotations.",
    "Direct URLs are preserved from the PDF text and annotations.",
    "The original git:// PostgreSQL repository URL is preserved in the source URL inventory and rendered through the verified HTTPS GitWeb summary destination because Hugo sanitizes git:// links.",
    "Extracted 5 numbered vector figures as reader assets.",
    "The embedded PDF title does not match the version inferred from the filename and document body; the original metadata is preserved and the canonical edition title is recorded separately."
  ]
}
