xmlファイルから約10 000のデータベースエントリをインポートする必要がありますが、xsdファイルのデータ構造を使用すると、xsdファイルを正しくインポートしてxmlデータをインポートできますか?私はPHPを使用します。xsdデータ構造からxmlデータを解析しますか?
これは私のXSDスキーマです:
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2010 rel. 3 (x64) (http://www.altova.com) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="shopInformations">
<xs:annotation>
<xs:documentation>All products</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="productInformation">
<xs:complexType>
<xs:sequence>
<xs:element name="title" type="xs:string"/>
<xs:element name="author" type="xs:string"/>
<xs:element name="productcode" type="xs:string" minOccurs="0"/>
<xs:element name="content"/>
<xs:element name="sections">
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="section">
<xs:complexType>
<xs:sequence>
<xs:element name="title"/>
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="type" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="public"/>
<xs:enumeration value="reseller"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="version" type="xs:string" use="required"/>
<xs:attribute name="lang" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="en"/>
<xs:enumeration value="es"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
私のxmlファイルには、450メガバイトの周りに持っていると私はそれを開くことができません...
な方法であることが必要になり、値をキャストする必要があるかもしれません見通しのコード!私はあなたが 'DOMDocument'を使用してノードを反復することができますが、データを見ずに誰も実際に答えを提供することはできません。 – RamRaider
現在持っているコードを追加できますか?誰もがあなたのためのコードを書くつもりはありません。 –
@NigelRen xsdの例を追加してDOMDocumentを試しましたが、xmlをインポートするためのマップとしてxsdを使用する方法が見つかりませんでした。 – nowilius