【问题标题】:Validate xpdl with xsd schema使用 xsd 架构验证 xpdl
【发布时间】:2015-02-19 16:25:00
【问题描述】:

我遇到以下问题:

我需要读取一些 xpdl 格式的进程,它是一个特定于进程的 xml。这些xpdl是由Bizagi生成的。

在 xpdl 的官方网站中,我捕获了 xml 架构,但是当我尝试使用我捕获的网站的 xml 架构验证由 bizagi 生成的 xpdl 时,它给出了一个错误。

我试图了解可能发生了什么,但我不明白。

你能帮我理解吗?

我正在发送错误:

 ["level"]=> int(2) 
 ["code"]=> int(1871)
 ["column"]=> int(0)
 ["message"]=> string(596) "Element '{http://www.wfmc.org/2009/XPDL2.2}Activities': This element is not expected. Expected is one of ( {http://www.wfmc.org/2009/XPDL2.2}DataStoreReferences, {http://www.wfmc.org/2009/XPDL2.2}Transitions, {http://www.wfmc.org/2009/XPDL2.2}DataAssociations, {http://www.wfmc.org/2009/XPDL2.2}ExtendedAttributes, {http://www.wfmc.org/2009/XPDL2.2}Assignments, {http://www.wfmc.org/2009/XPDL2.2}PartnerLinks, {http://www.wfmc.org/2009/XPDL2.2}Object, {http://www.wfmc.org/2009/XPDL2.2}Participants, {http://www.wfmc.org/2002/XPDL1.0}DataFields, {http://www.wfmc.org/2009/XPDL2.2}Applications ). "
 ["file"]=> string(66) "file:///C:/Users/dieferson.medeiros/AppData/Local/Temp/php1DBF.tmp"
 ["line"]=> int(117) 

遵循我使用 xml 架构验证 xpdl 的代码:

libxml_use_internal_errors (true);
$xml = new \DOMDocument();
$xml->load($file->getPathname()); 
var_dump($xml->schemaValidate(__DIR__.'/../../../../web/uploads/xsd/xpdl.xsd')); 
var_dump(libxml_get_errors());

跟随 xpdl 的链接:

https://drive.google.com/file/d/0B1uwndG8_xlZSHBzZHZMTUZ0dkk/view?usp=sharing

跟随指向 xml 架构的链接:

https://drive.google.com/file/d/0B1uwndG8_xlZblpZUmY2NkxXaGc/view?usp=sharing

感谢您的关注。

【问题讨论】:

    标签: xml xsd bizagi


    【解决方案1】:

    它的意思是元素活动位置不好。

    我已针对 XPDL 2.2 Standard by WFMC 验证了您的 .xpdl

    我得到 9 个错误:

    1. "Error: The required attribute 'Id' is missing."
    2. "Error: The required attribute 'Id' is missing."
    3. "Error: The required attribute 'Id' is missing."
    4. "Error: The element 'Lane' in namespace 'http://www.wfmc.org/2009/XPDL2.2' has invalid child element 'ExtendedAttributes' in namespace 'http://www.wfmc.org/2009/XPDL2.2'. List of possible elements expected: 'Performers, NestedLane' in namespace 'http://www.wfmc.org/2009/XPDL2.2' as well as any element in namespace '##other'."
    5. "Error: The element 'Lane' in namespace 'http://www.wfmc.org/2009/XPDL2.2' has invalid child element 'ExtendedAttributes' in namespace 'http://www.wfmc.org/2009/XPDL2.2'. List of possible elements expected: 'Performers, NestedLane' in namespace 'http://www.wfmc.org/2009/XPDL2.2' as well as any element in namespace '##other'."
    6. "Error: The element 'Lane' in namespace 'http://www.wfmc.org/2009/XPDL2.2' has invalid child element 'ExtendedAttributes' in namespace 'http://www.wfmc.org/2009/XPDL2.2'. List of possible elements expected: 'Performers, NestedLane' in namespace 'http://www.wfmc.org/2009/XPDL2.2' as well as any element in namespace '##other'."
    7. "Error: The element 'Associations' in namespace 'http://www.wfmc.org/2009/XPDL2.2' has incomplete content. List of possible elements expected: 'Association' in namespace 'http://www.wfmc.org/2009/XPDL2.2'."
    8. "Error: The element 'Artifacts' in namespace 'http://www.wfmc.org/2009/XPDL2.2' has incomplete content. List of possible elements expected: 'Artifact' in namespace 'http://www.wfmc.org/2009/XPDL2.2'."
    9. "Error: The element 'WorkflowProcess' in namespace 'http://www.wfmc.org/2009/XPDL2.2' has invalid child element 'Activities' in namespace 'http://www.wfmc.org/2009/XPDL2.2'. List of possible elements expected: 'DataStoreReferences, Transitions, DataAssociations, ExtendedAttributes, Assignments, PartnerLinks, Object, Extensions' in namespace 'http://www.wfmc.org/2009/XPDL2.2'."
    

    ...但不是您与我们分享的那个。正如我在您的文件中看到的,活动位置很好:

    <WorkflowProcess>
        ...
        <Activities>...<Activities/>
    </WorkflowProcess>
    

    您能否检查文件是否正确和/或验证我传递给您的错误?您的架构看起来不错。

    【讨论】:

      猜你喜欢
      • 2011-06-18
      • 2012-05-29
      • 2010-11-15
      • 1970-01-01
      • 2012-05-10
      • 2016-10-16
      • 2012-09-16
      • 1970-01-01
      • 2015-04-20
      相关资源
      最近更新 更多