コード例 #1
0
ファイル: ModAnalizer.cs プロジェクト: jswiatkowski/cognipy
        public object Visit(RelatedInstances e)
        {
            if (e.modality != Statement.Modality.IS && (!(e.I is NamedInstance) || !(e.J is NamedInstance)))
            {
                return(CreateNull());
            }

            return(RELINST((e.I as NamedInstance).name, e.R, (e.J as NamedInstance).name));
        }
コード例 #2
0
 public override object Visit(RelatedInstances e)
 {
     if (e.I is NamedInstance)
     {
         (e.I as NamedInstance).name = removeDefaultPfx((e.I as NamedInstance).name);
     }
     if (e.J is NamedInstance)
     {
         (e.J as NamedInstance).name = removeDefaultPfx((e.J as NamedInstance).name);
     }
     return(base.Visit(e));
 }
コード例 #3
0
 public override object Visit(RelatedInstances e)
 {
     if (e.I is NamedInstance)
     {
         (e.I as NamedInstance).name = applyFullUri((e.I as NamedInstance).name);
     }
     if (e.J is NamedInstance)
     {
         (e.J as NamedInstance).name = applyFullUri((e.J as NamedInstance).name);
     }
     return(base.Visit(e));
 }
コード例 #4
0
        public override object Visit(RelatedInstances e)
        {
            var r = e.R;

            bool inv = false;

            while (r is RoleInversion)
            {
                r   = (r as RoleInversion).R;
                inv = !inv;
            }
            if (!inv)
            {
                return(e);
            }
            else
            {
                return new RelatedInstances(null)
                       {
                           R = r, J = e.I, I = e.J, modality = e.modality
                       }
            };
        }
    }