summaryrefslogtreecommitdiff
path: root/ext/xmlreader/examples
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2013-03-14 05:42:27 +0000
committer <>2013-04-03 16:25:08 +0000
commitc4dd7a1a684490673e25aaf4fabec5df138854c4 (patch)
tree4d57c44caae4480efff02b90b9be86f44bf25409 /ext/xmlreader/examples
downloadphp2-master.tar.gz
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/xmlreader/examples')
-rw-r--r--ext/xmlreader/examples/dtdexample.dtd8
-rw-r--r--ext/xmlreader/examples/dtdexample.xml15
-rw-r--r--ext/xmlreader/examples/relaxNG.rng11
-rw-r--r--ext/xmlreader/examples/relaxNG.xml1
-rw-r--r--ext/xmlreader/examples/relaxNG2.rng23
-rw-r--r--ext/xmlreader/examples/relaxNG3.rng8
-rw-r--r--ext/xmlreader/examples/xmlreader.xml10
-rw-r--r--ext/xmlreader/examples/xmlreader_file.php20
-rw-r--r--ext/xmlreader/examples/xmlreader_relaxNG.php25
-rw-r--r--ext/xmlreader/examples/xmlreader_string.php31
-rw-r--r--ext/xmlreader/examples/xmlreader_validatedtd.php18
11 files changed, 170 insertions, 0 deletions
diff --git a/ext/xmlreader/examples/dtdexample.dtd b/ext/xmlreader/examples/dtdexample.dtd
new file mode 100644
index 0000000..ce53f0b
--- /dev/null
+++ b/ext/xmlreader/examples/dtdexample.dtd
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!ELEMENT LIST (MOVIE+)>
+<!ELEMENT MOVIE (TITLE, ORGTITLE, LOC, INFO)>
+<!ATTLIST MOVIE ID ID #REQUIRED>
+<!ELEMENT TITLE (#PCDATA)>
+<!ELEMENT ORGTITLE (#PCDATA)>
+<!ELEMENT LOC (#PCDATA)>
+<!ELEMENT INFO (#PCDATA)>
diff --git a/ext/xmlreader/examples/dtdexample.xml b/ext/xmlreader/examples/dtdexample.xml
new file mode 100644
index 0000000..052889c
--- /dev/null
+++ b/ext/xmlreader/examples/dtdexample.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!DOCTYPE LIST SYSTEM "dtdexample.dtd">
+<LIST>
+<MOVIE ID="x200338360">
+<TITLE>Move Title 1</TITLE>
+<ORGTITLE/><LOC>Location 1</LOC>
+<INFO/>
+</MOVIE>
+<MOVIE ID="m200338361">
+<TITLE>Move Title 2</TITLE>
+<ORGTITLE/>
+<LOC>Location 2</LOC>
+<INFO/>
+</MOVIE>
+</LIST>
diff --git a/ext/xmlreader/examples/relaxNG.rng b/ext/xmlreader/examples/relaxNG.rng
new file mode 100644
index 0000000..f4357e0
--- /dev/null
+++ b/ext/xmlreader/examples/relaxNG.rng
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<grammar xmlns="http://relaxng.org/ns/structure/1.0"
+ datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+
+<include href="relaxNG2.rng">
+<define name="TEI.prose"><ref name="INCLUDE"/></define>
+</include>
+</grammar>
+
+
+
diff --git a/ext/xmlreader/examples/relaxNG.xml b/ext/xmlreader/examples/relaxNG.xml
new file mode 100644
index 0000000..6b0cac1
--- /dev/null
+++ b/ext/xmlreader/examples/relaxNG.xml
@@ -0,0 +1 @@
+<TEI.2>hello</TEI.2> \ No newline at end of file
diff --git a/ext/xmlreader/examples/relaxNG2.rng b/ext/xmlreader/examples/relaxNG2.rng
new file mode 100644
index 0000000..4adae7b
--- /dev/null
+++ b/ext/xmlreader/examples/relaxNG2.rng
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<grammar xmlns="http://relaxng.org/ns/structure/1.0" xmlns:t="http://www.thaiopensource.com/ns/annotations" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+
+ <start>
+ <ref name="TEI.2"/>
+ </start>
+ <define name="IGNORE">
+ <notAllowed/>
+ </define>
+ <define name="INCLUDE">
+ <empty/>
+ </define>
+
+
+ <include href="relaxNG3.rng"/>
+
+ <define name="TEI.2">
+ <element name="TEI.2">
+ <text/>
+ </element>
+ </define>
+
+</grammar> \ No newline at end of file
diff --git a/ext/xmlreader/examples/relaxNG3.rng b/ext/xmlreader/examples/relaxNG3.rng
new file mode 100644
index 0000000..73e1eb6
--- /dev/null
+++ b/ext/xmlreader/examples/relaxNG3.rng
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<grammar xmlns="http://relaxng.org/ns/structure/1.0" xmlns:t="http://www.thaiopensource.com/ns/annotations" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+
+ <define name="TEI.prose" combine="interleave">
+ <ref name="IGNORE"/>
+ </define>
+
+</grammar> \ No newline at end of file
diff --git a/ext/xmlreader/examples/xmlreader.xml b/ext/xmlreader/examples/xmlreader.xml
new file mode 100644
index 0000000..4c53743
--- /dev/null
+++ b/ext/xmlreader/examples/xmlreader.xml
@@ -0,0 +1,10 @@
+<books>
+ <book num="1">
+ <title>The Grapes of Wrath</title>
+ <author>John Steinbeck</author>
+ </book>
+ <book num="2">
+ <title>The Pearl</title>
+ <author>John Steinbeck</author>
+ </book>
+</books>
diff --git a/ext/xmlreader/examples/xmlreader_file.php b/ext/xmlreader/examples/xmlreader_file.php
new file mode 100644
index 0000000..531e20b
--- /dev/null
+++ b/ext/xmlreader/examples/xmlreader_file.php
@@ -0,0 +1,20 @@
+<?php
+$reader = new XMLReader();
+$reader->open('xmlreader.xml');
+while ($reader->read()) {
+ if ($reader->nodeType != XMLREADER::END_ELEMENT) {
+ print "Node Name: ".$reader->name."\n";
+ print "Node Value: ".$reader->value."\n";
+ print "Node Depth: ".$reader->depth."\n";
+ if ($reader->nodeType==XMLREADER::ELEMENT && $reader->hasAttributes) {
+ $attr = $reader->moveToFirstAttribute();
+ while ($attr) {
+ print " Attribute Name: ".$reader->name."\n";
+ print " Attribute Value: ".$reader->value."\n";
+ $attr = $reader->moveToNextAttribute();
+ }
+ }
+ print "\n";
+ }
+}
+?>
diff --git a/ext/xmlreader/examples/xmlreader_relaxNG.php b/ext/xmlreader/examples/xmlreader_relaxNG.php
new file mode 100644
index 0000000..e56739a
--- /dev/null
+++ b/ext/xmlreader/examples/xmlreader_relaxNG.php
@@ -0,0 +1,25 @@
+<?php
+$indent = 5; /* Number of spaces to indent per level */
+
+$reader = new XMLReader();
+$reader->open('relaxNG.xml');
+/*
+Example setting relaxNG using string:
+$reader->setRelaxNGSchemaSource(file_get_contents('relaxNG.rng'));
+*/
+if ($reader->setRelaxNGSchema('relaxNG.rng')) {
+ while ($reader->read()) {
+ /* Print node name indenting it based on depth and $indent var */
+ print str_repeat(" ", $reader->depth * $indent).$reader->name."\n";
+ }
+}
+
+print "\n";
+
+if (! $reader->isValid()) {
+ print "Document is not valid\n";
+} else {
+ print "Document is valid\n";
+}
+
+?> \ No newline at end of file
diff --git a/ext/xmlreader/examples/xmlreader_string.php b/ext/xmlreader/examples/xmlreader_string.php
new file mode 100644
index 0000000..f267245
--- /dev/null
+++ b/ext/xmlreader/examples/xmlreader_string.php
@@ -0,0 +1,31 @@
+<?php
+$xmlstring = '<books>
+ <book num="1">
+ <title>The Grapes of Wrath</title>
+ <author>John Steinbeck</author>
+ </book>
+ <book num="2">
+ <title>The Pearl</title>
+ <author>John Steinbeck</author>
+ </book>
+</books>';
+
+$reader = new XMLReader();
+$reader->XML($xmlstring);
+while ($reader->read()) {
+ if ($reader->nodeType != XMLREADER::END_ELEMENT) {
+ print "Node Name: ".$reader->name."\n";
+ print "Node Value: ".$reader->value."\n";
+ print "Node Depth: ".$reader->depth."\n";
+ if ($reader->nodeType==XMLREADER::ELEMENT && $reader->hasAttributes) {
+ $attr = $reader->moveToFirstAttribute();
+ while ($attr) {
+ print " Attribute Name: ".$reader->name."\n";
+ print " Attribute Value: ".$reader->value."\n";
+ $attr = $reader->moveToNextAttribute();
+ }
+ }
+ print "\n";
+ }
+}
+?>
diff --git a/ext/xmlreader/examples/xmlreader_validatedtd.php b/ext/xmlreader/examples/xmlreader_validatedtd.php
new file mode 100644
index 0000000..520a61e
--- /dev/null
+++ b/ext/xmlreader/examples/xmlreader_validatedtd.php
@@ -0,0 +1,18 @@
+<?php
+$indent = 5; /* Number of spaces to indent per level */
+
+$xml = new XMLReader();
+$xml->open("dtdexample.xml");
+$xml->setParserProperty(XMLREADER::LOADDTD, TRUE);
+$xml->setParserProperty(XMLREADER::VALIDATE, TRUE);
+while($xml->read()) {
+ /* Print node name indenting it based on depth and $indent var */
+ print str_repeat(" ", $xml->depth * $indent).$xml->name."\n";
+ if ($xml->hasAttributes) {
+ $attCount = $xml->attributeCount;
+ print str_repeat(" ", $xml->depth * $indent)." Number of Attributes: ".$xml->attributeCount."\n";
+ }
+}
+print "\n\nValid:\n";
+var_dump($xml->isValid());
+?> \ No newline at end of file