     @prefix : <http://dig.csail.mit.edu/TAMI/2007/amord/tms#> .
    @prefix air: <http://dig.csail.mit.edu/TAMI/2007/amord/air#> .
    @prefix log: <http://www.w3.org/2000/10/swap/log#> .
    @prefix pol: <http://dig.csail.mit.edu/2009/IARPA-PIR/policy#> .
    @prefix que: <http://dig.csail.mit.edu/2009/IARPA-PIR/query1#> .
    @prefix s: <http://dig.csail.mit.edu/2009/IARPA-PIR/sparql#> .
    @prefix type: <http://dig.csail.mit.edu/2009/IARPA-PIR/generic#> .
    
     @forSome <#_g0>,
                <#_g1>,
                <#_g2>,
                <#_g3>,
                <#_g4>,
                <#_g5>,
                <#_g6>,
                <#_g7> .
    
    pol:BL_RULE01     :justification :premise .
    
    pol:EX_RULE01     :justification :premise .
    
    pol:IN_RULE01     :justification :premise .
    
    pol:RX_RULE01     :justification :premise .
    
    que:Query-1     air:compliant-with pol:Exclusion,
                pol:Inclusion,
                pol:Restriction;
         air:non-compliant-with pol:Blocking .
    
    <#_g0>     air:closed-world-assumption  (
        pol:Blocking
        pol:Restriction
        pol:Exclusion
        pol:Inclusion
        air:base-rules
        <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
        <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl>
        <#_g1> );
         :justification :premise .
    
    <#_g1>     air:closed-world-assumption  (
        pol:Blocking
        pol:Restriction
        pol:Exclusion
        pol:Inclusion
        air:base-rules
        <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
        <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl> ) .
    
    <#_g2>     air:closed-world-assumption  (
        pol:Blocking
        pol:Restriction
        pol:Exclusion
        pol:Inclusion
        air:base-rules
        <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
        <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl>
        <#_g1>
        <#_g0>
        <#_g3>
        <#_g4> );
         :justification :premise .
    
    <#_g3>     air:closed-world-assumption  (
        pol:Blocking
        pol:Restriction
        pol:Exclusion
        pol:Inclusion
        air:base-rules
        <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
        <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl>
        <#_g1>
        <#_g0> ) .
    
    <#_g4>     air:closed-world-assumption  (
        pol:Blocking
        pol:Restriction
        pol:Exclusion
        pol:Inclusion
        air:base-rules
        <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
        <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl>
        <#_g1>
        <#_g0>
        <#_g3> ) .
    
    <#_g5>     air:closed-world-assumption  (
        pol:Blocking
        pol:Restriction
        pol:Exclusion
        pol:Inclusion
        air:base-rules
        <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
        <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl>
        <#_g1>
        <#_g0>
        <#_g3>
        <#_g4>
        <#_g2> );
         :justification :premise .
    
    <#_g6>     air:closed-world-assumption  (
        pol:Blocking
        pol:Restriction
        pol:Exclusion
        pol:Inclusion
        air:base-rules
        <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
        <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl>
        <#_g1>
        <#_g0>
        <#_g3>
        <#_g4>
        <#_g2>
        <#_g5>
        <#_g7> );
         :justification :premise .
    
    <#_g7>     air:closed-world-assumption  (
        pol:Blocking
        pol:Restriction
        pol:Exclusion
        pol:Inclusion
        air:base-rules
        <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
        <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl>
        <#_g1>
        <#_g0>
        <#_g3>
        <#_g4>
        <#_g2>
        <#_g5> ) .
    {
        que:Query-1     air:compliant-with pol:Exclusion .
        
        }     :description  (
        "The query, "
        que:Query-1
        ", includes a reference to something of type:C, but not of type:B." );
         :justification  [
             :antecedent-expr  [
                 a :And-justification;
                 :sub-expr  [
                     air:instanceOf pol:EX_RULE03;
                     :justification  [
                         :antecedent-expr  [
                             a :And-justification;
                             :sub-expr  [
                                 air:instanceOf pol:EX_RULE02b;
                                 :justification  [
                                     :antecedent-expr  [
                                         a :And-justification;
                                         :sub-expr  [
                                             air:instanceOf pol:EX_RULE02a;
                                             :justification  [
                                                 :antecedent-expr  [
                                                     a :And-justification;
                                                     :sub-expr <#_g3>,
                                                             [
                                                         air:instanceOf pol:EX_RULE02;
                                                         :description  (
                                                        que:Query-1
                                                        " is a SPARQL Query" );
                                                         :justification  [
                                                             :antecedent-expr  [
                                                                 a :And-justification;
                                                                 :sub-expr pol:EX_RULE01,
                                                                        {que:Query-1     a s:Select;
                                                                     s:POSList <#_g8>;
                                                                     s:WhereClause que:WHERE .
                                                                } ];
                                                             :rule-name pol:EX_RULE01 ] ],
                                                            {} ];
                                                 :rule-name pol:EX_RULE02 ] ],
                                                <#_g5>,
                                                {} ];
                                     :rule-name pol:EX_RULE02a ] ],
                                    <#_g6>,
                                    {} ];
                         :rule-name pol:EX_RULE02b ] ],
                        {que:WHERE     s:TriplePattern {que:S     type:F que:A .
                    } .
                {
                    que:S     type:F que:A .
                    
                    }     log:notIncludes { @forSome <#_g9> .
                      [      type:B <#_g9> ].
                    } .
                } ];
             :rule-name pol:EX_RULE03 ] .
    {
        que:Query-1     air:compliant-with pol:Inclusion .
        
        }     :description  (
        " IN_RULE05 The query, "
        que:Query-1
        ", does not refer to type:D or type:E." );
         :justification  [
             :antecedent-expr  [
                 a :And-justification;
                 :sub-expr  [
                     air:instanceOf pol:IN_RULE05;
                     :justification  [
                         :antecedent-expr  [
                             a :And-justification;
                             :sub-expr  [
                                 air:instanceOf pol:IN_RULE04;
                                 :justification  [
                                     :antecedent-expr  [
                                         a :And-justification;
                                         :sub-expr <#_g7>,
                                                 [
                                             air:instanceOf pol:IN_RULE03;
                                             :justification  [
                                                 :antecedent-expr  [
                                                     a :And-justification;
                                                     :sub-expr <#_g4>,
                                                             [
                                                         air:instanceOf pol:IN_RULE02;
                                                         :description  (
                                                        que:Query-1
                                                        " is a SPARQL Query" );
                                                         :justification  [
                                                             :antecedent-expr  [
                                                                 a :And-justification;
                                                                 :sub-expr pol:IN_RULE01,
                                                                        {que:Query-1     a s:Select;
                                                                     s:POSList <#_g8>;
                                                                     s:WhereClause que:WHERE .
                                                                } ];
                                                             :rule-name pol:IN_RULE01 ] ],
                                                            {} ];
                                                 :rule-name pol:IN_RULE02 ] ],
                                                {} ];
                                     :rule-name pol:IN_RULE03 ] ],
                                     [
                                 air:closed-world-assumption  (
                                pol:Blocking
                                pol:Restriction
                                pol:Exclusion
                                pol:Inclusion
                                air:base-rules
                                <http://dig.csail.mit.edu/2009/IARPA-PIR/usecase1/blocking-query4.n3>
                                <http://dig.csail.mit.edu/TAMI/2007/amord/base-assumptions.ttl>
                                <#_g1>
                                <#_g0>
                                <#_g3>
                                <#_g4>
                                <#_g2>
                                <#_g5>
                                <#_g7>
                                <#_g6> );
                                 :justification :premise ],
                                    {} ];
                         :rule-name pol:IN_RULE04 ] ],
                        {} ];
             :rule-name pol:IN_RULE05 ] .
    {
        que:Query-1     air:compliant-with pol:Restriction .
        
        }     :description  (
        "The query, "
        que:Query-1
        ", does not includes reference to type:A." );
         :justification  [
             :antecedent-expr  [
                 a :And-justification;
                 :sub-expr  [
                     air:instanceOf pol:RX_RULE04;
                     :justification  [
                         :antecedent-expr  [
                             a :And-justification;
                             :sub-expr  [
                                 air:instanceOf pol:RX_RULE03;
                                 :justification  [
                                     :antecedent-expr  [
                                         a :And-justification;
                                         :sub-expr  [
                                             air:instanceOf pol:RX_RULE02;
                                             :description  (
                                            que:Query-1
                                            " is a SPARQL Query" );
                                             :justification  [
                                                 :antecedent-expr  [
                                                     a :And-justification;
                                                     :sub-expr pol:RX_RULE01,
                                                            {que:Query-1     a s:Select;
                                                         s:POSList <#_g8>;
                                                         s:WhereClause que:WHERE .
                                                    } ];
                                                 :rule-name pol:RX_RULE01 ] ],
                                                <#_g0>,
                                                {} ];
                                     :rule-name pol:RX_RULE02 ] ],
                                    <#_g2>,
                                    {} ];
                         :rule-name pol:RX_RULE03 ] ],
                        {que:WHERE     s:TriplePattern {que:S     type:F que:A .
                    } .
                {
                    que:S     type:F que:A .
                    
                    }     log:notIncludes { @forSome <#_g10> .
                      [      type:A <#_g10> ].
                    } .
                } ];
             :rule-name pol:RX_RULE04 ] .
    {
        que:Query-1     air:non-compliant-with pol:Blocking .
        
        }     :description  (
        "The query, "
        que:Query-1
        ", includes a reference to something of type:F in WHERE and type:G in OPTIONAL." );
         :justification  [
             :antecedent-expr  [
                 a :And-justification;
                 :sub-expr  [
                     air:instanceOf pol:BL_RULE02a;
                     :justification  [
                         :antecedent-expr  [
                             a :And-justification;
                             :sub-expr <#_g1>,
                                     [
                                 air:instanceOf pol:BL_RULE02;
                                 :description  (
                                que:Query-1
                                " is a SPARQL Query" );
                                 :justification  [
                                     :antecedent-expr  [
                                         a :And-justification;
                                         :sub-expr pol:BL_RULE01,
                                                {que:Query-1     a s:Select;
                                             s:POSList <#_g8>;
                                             s:WhereClause que:WHERE .
                                        } ];
                                     :rule-name pol:BL_RULE01 ] ],
                                    {} ];
                         :rule-name pol:BL_RULE02 ] ],
                        {pol:O     log:includes { @forSome que:B,
                                que:S .
                    que:S     type:G que:B .
                    } .
                pol:T     log:includes {que:S     type:F que:A .
                    } .
                que:WHERE     s:OptionalGraphPattern <#_g11>;
                     s:TriplePattern {que:S     type:F que:A .
                    } .
                <#_g11>     s:TriplePattern {que:S     type:G que:B .
                    } .
                } ];
             :rule-name pol:BL_RULE02a ] .
    {
        pol:O     log:includes { @forSome que:B,
                        que:S .
            que:S     type:G que:B .
            } .
        pol:T     log:includes {que:S     type:F que:A .
            } .
        que:Query-1     a s:Select;
             s:POSList <#_g8>;
             s:WhereClause que:WHERE .
        que:WHERE     s:OptionalGraphPattern <#_g11>;
             s:TriplePattern {que:S     type:F que:A .
            } .
        <#_g11>     s:TriplePattern {que:S     type:G que:B .
            } .
        {
            que:S     type:F que:A .
            
            }     log:notIncludes { @forSome <#_g10> .
              [      type:A <#_g10> ].
            },
                    { @forSome <#_g9> .
              [      type:B <#_g9> ].
            } .
        
        }     :justification :premise .
    
