app during parsing • Example: SAX • Pull Parsing, allows app to retrieve or skip elements • Example: PHP's ext/xmlreader • DOM, constructs an object representation of the tree • Example: DOM (duh) Use XMLReader::expand()
XPath is an expression syntax, XQuery a full query language • XSLT to transform documents to XML, HTML, text, ... • Makes heavy use of XPath • XIncludes • Allow re-use of content within and across documents <3
vendors need to write new (inefﬁcient) parsers • Does not have a DTD anymore • how could it, given how it's not SGML... • Completely idiotic stuff like data-* attributes • And they're even proud of it...
foo: bar -‐-‐-‐ yo: baz bar: | fooness clipped: | This has one newline. same as "clipped" above: "This has one newline.\n" stripped: |-‐ This has no newline. same as "stripped" above: "This has no newline." kept: |+ This has four newlines. same as "kept" above: "This has four newlines.\n\n\n\n" -‐ &showell Steve -‐ Clark -‐ Brian -‐ Oren -‐ *showell