我需要你对这个XML的帮助---> XSD生成+为其添加命名空间。 我会解释更多。
XML (这是代码,以防您想要复制它以供回复...)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:urn="urn:enterprise.soap.sforce.com"
xmlns:urn1="urn:sobject.enterprise.soap.sforce.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<urn:update>
<urn:sObjects xsi:type="urn1:Account">
<urn1:Id>001b0000006mKKqAAM</urn1:Id>
<!--You may enter ANY elements at this point-->
<AnnualRevenue>9988</AnnualRevenue>
<Name>Farell Instruments WYNSYS</Name>
</urn:sObjects>
</urn:update>
</soapenv:Envelope>
XSD (这是代码,以防您想要复制它以供回复...)
<xs:schema attributeFormDefault="unqualified"
elementFormDefault="qualified"
targetNamespace="urn:enterprise.soap.sforce.com"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="update">
<xs:complexType>
<xs:sequence>
<xs:element name="sObjects">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="Id"/>
<xs:element type="xs:string" name="Name"/>
</xs:sequence>
<xs:attribute type="xs:string" name="type"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
我现在的要求是传递类型为Account的属性,如下所示: urn:sObjects xsi:type =&#34; urn1:Account&#34;
但是使用XSD,我认为我需要使用XSD映射才能做到这一点! 我完全失去了我尝试了几种格式,但仍然没有得到正确的格式。
请问如何获取XML的确切XSD格式?
感谢。 BR, Mohamed Amine。
答案 0 :(得分:0)
XSD架构验证使用$read_post_id = [];
$queryReadSave = $this->db->select('post_id')->get('tbl_readsave')->result_array();
if(count($queryReadSave) > 0){
foreach($queryReadSave as $row){
$read_post_id[] = $row['post_id']; // add each post id to the array
}
}
$this->db->select('*');
if(!empty($read_post_id)) $this->db->where_not_in('post_id',$read_post_id);
$post = $this->db->get('tbl_post');
print_r($post->result_array());
exit;
属性的内置定义;不可能在模式中指定它必须具有特定值或将其值限制在XSD规范强加的约束之外。
如果您正在尝试编写一个约束xsi:type值的XSD架构,那么您可以立即停止尝试并寻找问题的不同解决方案。如果你不想这样做,那么你需要再次尝试解释你想要做什么;从问题中不清楚。