一种联动规则生成方法和装置的制造方法_4

文档序号:8361723阅读:来源:国知局
识节点,圆圈内不同的字母代表不同的节点,节点下面括号内的数字从左到右依次表示该节点所表示的对象标识、属性标识以及在该属性标识对应的属性下的属性值。
[0139]当待增设联动规则为“放音乐则开灯”,则该构建的有向图中涉及到的节点同样包括表征灯、属性为A3且属性值为I的节点B ;构建表征该灯的、属性为A2且属性值为I的节点C。不同的是,构建的有向图的箭头方向由节点B指向该节点C,如图4b所示。
[0140]则将该待增设有向图与该已设定有向图进行整合,则是将该节点A2合并吗,且将节点A3合并,得到的待检测有向图如图4c所示。可见该待检测有向图中出现了两个节点之间的循环,则该待增设联动规则与该已设定联动规则都存在,则会导致节点的循环依赖,使得应用出现死循环。
[0141]另一个例子为:假设有向图集合中存在已设定有向图,该已设定有向图的联动规则表征“天亮放音乐;放音乐则开灯”,则该已设定有向图中,则需要构建表征光线传感器D1,属性为Al,且属性值为I的节点A ;构建表征音乐播放器D2、属性为A2且属性值为I的节点B,构建表征灯D3、属性A3且属性值为I的节点C,则可以得到节点A指向节点B,且节点B指向节点C的有向图,如图5a所示。
[0142]当待增设联动规则为“放音乐则关灯”时,则需要构建表征音乐播放器D2、属性为A2且属性值为I的节点B ;构建表征灯D3、属性为A3且属性值为O的节点D,且有向图中箭头方向由该节点B指向节点D,如可以参见图5b示出该待增设联动规则对应的待增设有向图。
[0143]将图5b示出的该待增有向图与图5a示出的该已设定有向图进行整合,可以将节点B进行整合,则得到整合后的待检测有向图如图5c。由图5c可以看出,该节点B存在两条路径,且这两条路径上的节点集合内包含有属性节点C和节点D,而这两个节点所表征的对象相同,属性相同,但是属相值确不相同。则该待增设有向图与已设定有向图存在冲突,即该待增设联动规则“放音乐关灯”与已设定联动规则“放音乐则开灯”冲突。
[0144]可选的,在以上任意一个实施例中还可以包括:当该检测结果表明该待增设联动规则与该联动规则清单中已设定联动规则的逻辑关系之间不存在逻辑问题时,则将该待增设联动规则添加到该联动规则清单内。
[0145]进一步的,当该检测结果表明该待增设联动规则与所述联动规则清单中已设定联动规则的逻辑关系之间存在逻辑问题时,输出针对该逻辑问题的提醒信息,以提示用于修改或者该待增设联动规则。
[0146]在以上任意一个实施例中,当采用逻辑关系模型描述该联动规则时,如果检测到该检测逻辑关系集合中不存在逻辑问题时,存储所述待检测逻辑关系集合。这样,后续再获取到其他需要设定的联动规则时,仍然可以构建该联动规则的逻辑关系模型,并获取该待检测逻辑关系模型集合作为已设定联动规则的逻辑关系模型集合,以便后续基于该逻辑关系模型和该逻辑关系模型集合进行逻辑问题检测。
[0147]对应本申请实施例的一种联动规则生成装置,本申请实施例还提供了一种联动规则生成装置。
[0148]参见图6,其示出了本申请一种联动规则生成装置一个实施例的结构示意图,本实施例的装置可以包括:
[0149]规则获取单元601,用于获得待增设联动规则;
[0150]问题检测单元602,用于基于所述待增设联动规则与联动规则清单进行问题检测,产生检测结果;所述联动规则清单中包括已设定联动规则;
[0151]规则处理单元603,用于基于所述检测结果确定是否将所述待增设联动规则添加到所述联动规则清单。
[0152]本申请实施例中,在获取到待增设联动规则后,并不会直接将该待增设联动规则添加到应用的联动规则清单中,而是先检测该待增设联动规则与该联动规则清单的已设定联动规则之间是否存在问题,然后在根据检测结果确定是否添加该待增设联动规则,从而减少了由于新增设的联动规则与已设定的联动规则之间存在问题,而导致应用执行过程不稳定或者出现死循环的情况。
[0153]参见图7,其示出了本申请一种联动规则生成装置另一个实施例的结构示意图,与实施例与前面装置实施例的不同之处在于:
[0154]在本实施例中该问题检测单元602包括:
[0155]模型构建单元6021,用于基于所述待增设联动规则的触发对象、触发条件、执行对象和执行动作,构建所述待增设联动规则对应的待增设逻辑关系模型;
[0156]模型集合获取单元6022,用于获取所述联动规则清单对应的逻辑关系模型集合,所述逻辑模型集合中包括与所述已设定联动规则对应的已设定逻辑关系模型;
[0157]模型合并单元6023,用于将所述待增设逻辑关系模型并入到所述逻辑关系模型集合中,得到待检测逻辑关系集合;
[0158]模型检测单元6024,用于检测所述待检测逻辑关系集合中是否存在有逻辑问题的逻辑关系模型。
[0159]可选的,所述模型合并单元可以包括:
[0160]目标模型匹配单元,用于检测所述逻辑关系模型集合的逻辑关系模型中是否存在满足预设条件的目标逻辑关系模型,所述满足预设条件的目标逻辑关系模型中至少包括:设定有所述触发条件的触发对象,和/或设定有所述执行动作的执行对象;
[0161]模型合并子单元,用于当所述逻辑关系模型集合中存在所述目标逻辑关系模型时,采用将所述待增设逻辑关系模型与所述目标逻辑关系模型进行整合,得到待检测逻辑关系t吴型;
[0162]则所述模型检测单元,可以包括:
[0163]第一检测子单元,用于当所述逻辑关系模型集合中不存在所述目标逻辑关系模型,则确定所述待增设联动规则与所述联动规则清单中的已设定联动规则之间不存在逻辑冋题;
[0164]第二检测子单元,用于当所述逻辑关系集合中存在所述目标逻辑关系模型时,则检测所述待检测逻辑关系模型中是否存在不同对象相互关系间的逻辑问题。
[0165]可选的,在以上任意一个实施例中,所述装置还包括:逻辑关系存储单元,用于当检测到所述待检测逻辑关系集合中不存在逻辑问题时,存储所述待检测逻辑关系集合。
[0166]可选的,图7实施例中所述模型构建单元可以包括:
[0167]有向图构建单元,用于基于同一节点表征同一对象具有同一属性的同一属性值的原则,以有向图的方式对所述待增设联动规则进行建模,构建出所述待增设联动规则对应的待增设有向图,其中,所述属性用于表征所述触发条件或执行动作的所属类型;所述属性值用于表征所述触发条件或所述执行动作;
[0168]所述模型集合获取单元,包括:
[0169]有向图集合获取单元,用于获取所述联动规则清单对应的有向图集合,所述有向图集合中包括与所述已设定联动规则对应的已设定有向图,所述已设定有向图中的同一节点表征具有相同属性的相同属性值的同一对象。
[0170]可选的,在模型构建单元包括所述有向图构建单元的基础上,所述模型合并单元可以包括:
[0171]目标有向图检测单元,用于检测所述有向图集合中是否存在包含有所述待增设有向图中所包含的至少一个节点的目标已设定有向图;
[0172]有向图合并子单元,用于当所述有向图集合中存在所述目标已设定有向图时,基于所述同一节点表征同一对象具有同一属性的同一属性值的原则,将所述待增设有向图与所述目标已设定有向图中相同节点进行合并,以将所述待增设有向图与所述目标已构建有向图整合为一个有向图,得到待检测有向图;
[0173]则所述模型检测单元可以包括:
[0174]第三检测子单元,用于当所述有向图集合中不存在所述目标已设定有向图时,则确定所述待增设联动规则与所述联动规则清单中的已设定联动规则不存在逻辑问题;
[0175]第四检测子单元,用于当所述有向图集合中存在所述目标已设定有向图时,检测所述待检测有向图中是否存在如下一个或多个逻辑问题:所述待检测有向图中存在不同节点构建的循环路径;由所述待检测有向图中同一节点出发的多条路径上的节点所组成的节点集合内存在具有相同对象标识、相同属性值的多个节点。
[0176]在以上任意一个实施例中所述装置还可以包括:
[0177]规则添加单元,用于当所述检测结果表明所述待增设联动规则与所述联动规则清单中所述已设定联动规则的逻辑关系之间不存在逻辑问题时,则将所述待增设联动规则添加到所述联动规则清单内;
[0178]提醒输出单元,用于当所述检测结果表明所述待增设联动规则与所述联动规则清单中所述已设定联动规则的逻辑关系之间存在逻辑问题时,输出针对所述逻辑问题的提醒信息。
[0179]本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0180]对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
【主权项】
1.一种联动规则生成方法,其特征在于,包括: 获得待增设联动规则
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1