{
    "id": "FM_doc_gen",
    "name": "FM_doc_gen",
    "features": {
        "activation_section": {
            "name": "activation_section",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "analysis": {
            "name": "analysis",
            "optional": false,
            "type": "FEATURE",
            "note": ""
        },
        "annotation_section": {
            "name": "annotation_section",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "cobol": {
            "name": "cobol",
            "optional": true,
            "type": "XOR",
            "note": ""
        },
        "conditional_perform_graph": {
            "name": "conditional_perform_graph",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "copybook_page": {
            "name": "copybook_page",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "database": {
            "name": "database",
            "optional": false,
            "type": "XOR",
            "note": ""
        },
        "db2": {
            "name": "db2",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "delphi": {
            "name": "delphi",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "doc_gen": {
            "name": "doc_gen",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "dutch": {
            "name": "dutch",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "dynamic": {
            "name": "dynamic",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "english": {
            "name": "english",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "entities_section": {
            "name": "entities_section",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "ibm_cobol": {
            "name": "ibm_cobol",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "indexes": {
            "name": "indexes",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "interaction": {
            "name": "interaction",
            "optional": false,
            "type": "XOR",
            "note": ""
        },
        "jcl": {
            "name": "jcl",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "jcl_graph": {
            "name": "jcl_graph",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "language_analysis": {
            "name": "language_analysis",
            "optional": false,
            "type": "OR",
            "note": ""
        },
        "localization": {
            "name": "localization",
            "optional": false,
            "type": "OR",
            "note": ""
        },
        "main_pages": {
            "name": "main_pages",
            "optional": false,
            "type": "OR",
            "note": ""
        },
        "microfocus_cobol": {
            "name": "microfocus_cobol",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "mysql": {
            "name": "mysql",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "oracle": {
            "name": "oracle",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "overview_graph": {
            "name": "overview_graph",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "parameters_section": {
            "name": "parameters_section",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "perform_graph": {
            "name": "perform_graph",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "presentation": {
            "name": "presentation",
            "optional": false,
            "type": "FEATURE",
            "note": ""
        },
        "program_page": {
            "name": "program_page",
            "optional": true,
            "type": "OR",
            "note": ""
        },
        "progress": {
            "name": "progress",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "search_page": {
            "name": "search_page",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "source_difference": {
            "name": "source_difference",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "source_page": {
            "name": "source_page",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "sql": {
            "name": "sql",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "static": {
            "name": "static",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "statistics_page": {
            "name": "statistics_page",
            "optional": true,
            "type": "XOR",
            "note": ""
        },
        "subsystem_graph": {
            "name": "subsystem_graph",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "subsystem_page": {
            "name": "subsystem_page",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "subsystems": {
            "name": "subsystems",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "version_mngt": {
            "name": "version_mngt",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "visualizations": {
            "name": "visualizations",
            "optional": true,
            "type": "OR",
            "note": ""
        },
        "with_history": {
            "name": "with_history",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        },
        "without_history": {
            "name": "without_history",
            "optional": true,
            "type": "FEATURE",
            "note": ""
        }
    },
    "tree": {
        "id": "doc_gen",
        "children": [
            {
                "id": "analysis",
                "children": [
                    {
                        "id": "language_analysis",
                        "children": [
                            {
                                "id": "cobol",
                                "children": [
                                    {
                                        "id": "ibm_cobol"
                                    },
                                    {
                                        "id": "microfocus_cobol"
                                    }
                                ]
                            },
                            {
                                "id": "delphi"
                            },
                            {
                                "id": "jcl"
                            },
                            {
                                "id": "progress"
                            },
                            {
                                "id": "sql"
                            }
                        ]
                    },
                    {
                        "id": "subsystems"
                    },
                    {
                        "id": "version_mngt"
                    }
                ]
            },
            {
                "id": "database",
                "children": [
                    {
                        "id": "db2"
                    },
                    {
                        "id": "mysql"
                    },
                    {
                        "id": "oracle"
                    }
                ]
            },
            {
                "id": "presentation",
                "children": [
                    {
                        "id": "interaction",
                        "children": [
                            {
                                "id": "dynamic"
                            },
                            {
                                "id": "static"
                            }
                        ]
                    },
                    {
                        "id": "localization",
                        "children": [
                            {
                                "id": "dutch"
                            },
                            {
                                "id": "english"
                            }
                        ]
                    },
                    {
                        "id": "main_pages",
                        "children": [
                            {
                                "id": "copybook_page"
                            },
                            {
                                "id": "indexes"
                            },
                            {
                                "id": "program_page",
                                "children": [
                                    {
                                        "id": "activation_section"
                                    },
                                    {
                                        "id": "annotation_section"
                                    },
                                    {
                                        "id": "entities_section"
                                    },
                                    {
                                        "id": "parameters_section"
                                    }
                                ]
                            },
                            {
                                "id": "search_page"
                            },
                            {
                                "id": "source_difference"
                            },
                            {
                                "id": "source_page"
                            },
                            {
                                "id": "statistics_page",
                                "children": [
                                    {
                                        "id": "with_history"
                                    },
                                    {
                                        "id": "without_history"
                                    }
                                ]
                            },
                            {
                                "id": "subsystem_page"
                            }
                        ]
                    },
                    {
                        "id": "visualizations",
                        "children": [
                            {
                                "id": "conditional_perform_graph"
                            },
                            {
                                "id": "jcl_graph"
                            },
                            {
                                "id": "overview_graph"
                            },
                            {
                                "id": "perform_graph"
                            },
                            {
                                "id": "subsystem_graph"
                            }
                        ]
                    }
                ]
            }
        ]
    },
    "constraints": {
        "Constraint 0": {
            "type": "ImpliesTerm",
            "operands": [
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "subsystem_page"
                    ]
                },
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "subsystems"
                    ]
                }
            ]
        },
        "Constraint 1": {
            "type": "ImpliesTerm",
            "operands": [
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "subsystem_graph"
                    ]
                },
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "subsystems"
                    ]
                }
            ]
        },
        "Constraint 2": {
            "type": "ImpliesTerm",
            "operands": [
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "source_difference"
                    ]
                },
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "version_mngt"
                    ]
                }
            ]
        },
        "Constraint 3": {
            "type": "ImpliesTerm",
            "operands": [
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "perform_graph"
                    ]
                },
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "cobol"
                    ]
                }
            ]
        },
        "Constraint 4": {
            "type": "ImpliesTerm",
            "operands": [
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "conditional_perform_graph"
                    ]
                },
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "cobol"
                    ]
                }
            ]
        },
        "Constraint 5": {
            "type": "ImpliesTerm",
            "operands": [
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "jcl_graph"
                    ]
                },
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "jcl"
                    ]
                }
            ]
        },
        "Constraint 6": {
            "type": "ImpliesTerm",
            "operands": [
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "static"
                    ]
                },
                {
                    "type": "NotTerm",
                    "operands": [
                        {
                            "type": "FeatureTerm",
                            "operands": [
                                "annotation_section"
                            ]
                        }
                    ]
                }
            ]
        },
        "Constraint 7": {
            "type": "ImpliesTerm",
            "operands": [
                {
                    "type": "FeatureTerm",
                    "operands": [
                        "static"
                    ]
                },
                {
                    "type": "NotTerm",
                    "operands": [
                        {
                            "type": "FeatureTerm",
                            "operands": [
                                "search_page"
                            ]
                        }
                    ]
                }
            ]
        }
    }
}