- XML Reference Guide
- Overview
- What Is XML?
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Table of Contents
- The Document Object Model
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- DOM and Java
- Informit Articles and Sample Chapters
- Books and e-Books
- Implementations
- DOM and JavaScript
- Using a Repeater
- Repeaters and XML
- Repeater Resources
- DOM and .NET
- Informit Articles and Sample Chapters
- Books and e-Books
- Documentation and Downloads
- DOM and C++
- DOM and C++ Resources
- DOM and Perl
- DOM and Perl Resources
- DOM and PHP
- DOM and PHP Resources
- DOM Level 3
- DOM Level 3 Core
- DOM Level 3 Load and Save
- DOM Level 3 XPath
- DOM Level 3 Validation
- Informit Articles and Sample Chapters
- Books and e-Books
- Documentation and Implementations
- The Simple API for XML (SAX)
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- SAX and Java
- Informit Articles and Sample Chapters
- Books and e-Books
- SAX and .NET
- Informit Articles and Sample Chapters
- SAX and Perl
- SAX and Perl Resources
- SAX and PHP
- SAX and PHP Resources
- Validation
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Document Type Definitions (DTDs)
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- XML Schemas
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- RELAX NG
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Schematron
- Official Documentation and Implementations
- Validation in Applications
- Informit Articles and Sample Chapters
- Books and e-Books
- XSL Transformations (XSLT)
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- XSLT in Java
- Java in XSLT Resources
- XSLT and RSS in .NET
- XSLT and RSS in .NET Resources
- XSL-FO
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- XPath
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- XML Base
- Informit Articles and Sample Chapters
- Official Documentation
- XHTML
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- XHTML 2.0
- Documentation
- Cascading Style Sheets
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- XUL
- XUL References
- XML Events
- XML Events Resources
- XML Data Binding
- Informit Articles and Sample Chapters
- Books and e-Books
- Specifications
- Implementations
- XML and Databases
- Informit Articles and Sample Chapters
- Books and e-Books
- Online Resources
- Official Documentation
- SQL Server and FOR XML
- Informit Articles and Sample Chapters
- Books and e-Books
- Documentation and Implementations
- Service Oriented Architecture
- Web Services
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Creating a Perl Web Service Client
- SOAP::Lite
- Amazon Web Services
- Creating the Movable Type Plug-in
- Perl, Amazon, and Movable Type Resources
- Apache Axis2
- REST
- REST Resources
- SOAP
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- SOAP and Java
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- WSDL
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- UDDI
- UDDI Resources
- XML-RPC
- XML-RPC in PHP
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Ajax
- Asynchronous Javascript
- Client-side XSLT
- SAJAX and PHP
- Ajax Resources
- JSON
- Ruby on Rails
- Creating Objects
- Ruby Basics: Arrays and Other Sundry Bits
- Ruby Basics: Iterators and Persistence
- Starting on the Rails
- Rails and Databases
- Rails: Ajax and Partials
- Rails Resources
- Web Services Security
- Web Services Security Resources
- SAML
- Informit Articles and Sample Chapters
- Books and e-Books
- Specification and Implementation
- XML Digital Signatures
- XML Digital Signatures Resources
- XML Key Management Services
- Resources for XML Key Management Services
- Internationalization
- Resources
- Grid Computing
- Grid Resources
- Web Services Resource Framework
- Web Services Resource Framework Resources
- WS-Addressing
- WS-Addressing Resources
- WS-Notifications
- New Languages: XML in Use
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Google Web Toolkit
- GWT Basic Interactivity
- Google Sitemaps
- Google Sitemaps Resources
- Accessibility
- Web Accessibility
- XML Accessibility
- Accessibility Resources
- The Semantic Web
- Defining a New Ontology
- OWL: Web Ontology Language
- Semantic Web Resources
- Google Base
- Microformats
- StructuredBlogging
- Live Clipboard
- WML
- XHTML-MP
- WML Resources
- Google Web Services
- Google Web Services API
- Google Web Services Resources
- The Yahoo! Web Services Interface
- Yahoo! Web Services and PHP
- Yahoo! Web Services Resources
- eBay REST API
- WordML
- WordML Part 2: Lists
- WordML Part 3: Tables
- WordML Resources
- DocBook
- Articles
- Books and e-Books
- Official Documentation and Implementations
- XML Query
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- XForms
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Resource Description Framework (RDF)
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Topic Maps
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation, Implementations, and Other Resources
- Rich Site Summary (RSS)
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- Simple Sharing Extensions (SSE)
- Atom
- Podcasting
- Podcasting Resources
- Scalable Vector Graphics (SVG)
- Informit Articles and Sample Chapters
- Books and e-Books
- Official Documentation
- OPML
- OPML Resources
- Summary
- Projects
- JavaScript TimeTracker: JSON and PHP
- The Javascript Timetracker
- Refactoring to Javascript Objects
- Creating the Yahoo! Widget
- Web Mashup
- Google Maps
- Indeed Mashup
- Mashup Part 3: Putting It All Together
- Additional Resources
- Frequently Asked Questions About XML
- What's XML, and why should I use it?
- What's a well-formed document?
- What's the difference between XML and HTML?
- What's the difference between HTML and XHTML?
- Can I use XML in a browser?
- Should I use elements or attributes for my document?
- What's a namespace?
- Where can I get an XML parser?
- What's the difference between a well-formed document and a valid document?
- What's a validating parser?
- Should I use DOM or SAX for my application?
- How can I stop a SAX parser before it has parsed the entire document?
- 2005 Predictions
- 2006 Predictions
- Nick's Book Picks
InformIT Articles and Sample Chapters
As you might imagine, "wireless development" is a pretty broad topic, and while I could just focus on pointing you to articles about WML, you'd really only be getting part of the story. So here's a list of resources that includes overview information, the meat of the topic, and pointers to some of the topics that are important to wireless development, but tangential to XML.
"Introduction to Mobile Application Architectures" by Heather Schneider, Valentino Lee and Robbie Schell, from Mobile Applications: Architecture, Design, and Development (Prentice Hall PTR, 2004, ISBN 0131172638) explains how, as mobile devices become more common, it becomes imperative to understand how this environment poses unique application architecture challenges. This sample chapter helps you understand the issues involved in developing applications for mobile devices.
"Concepts for Working with Wireless Applications" by Mark Beaulieu, from Wireless Internet Applications and Architecture: Building Professional Wireless Applications Worldwide (Addison Wesley, 2002, ISBN 0201733544) talks about the nearly universal process for developing wireless applications, regardless of the devices or networks to be used. The process involves four steps: identifying the user of the final product, building relevant content, developing the application, and testing the application with a real device on a real network in a typical user situation.
Mark also follows up with "Building the Four Wireless Application Families of the Wireless Internet", which explains the four families of wireless applications serve wireless Internet users: messaging, web browsing, interactive, and conversational wireless software development.
"For Wireless Security, First Understand Wireless Programming" by Seth Fogie, Cyrus Peikari from Maximum Wireless Security (Sams, 2003, ISBN 0672324881) provides a look at the basics of wireless programming, including XML, WML, i-mode, Java, and more, with an eye towards preparing you to think about security issues.
Chris Bennett and Frank Coyle have put together a great series that covers much of the WAP development process, with "A WAP Primer", "Wireless Markup Language", "WMLScript", and "Wireless Markup Language--Beyond the Basics".
"The SMIL Specification", by Tim Kennedy and Mary Slowinski, from SMIL: Adding Multimedia to the Web (Sams, 2001, ISBN 067232167X) explains Synchronized Multimedia Integration Language, which enables you to create animations and other graphical content for cell phones using markup.
You should also check out other guide resources that talk about web design (for more information on effective XHTML development) and J2ME (used to create many wireless applications).
Books and eBooks
WAP 2.0 Development by Chris Tull (Que, 2002, ISBN 0-7897-2602-5) concentrates on WML and WMLScript, but while it covers the gamut of these applications, it's also appropriate for those starting out. It covers both static and dynamic content. (Read this book online)
WAP Development with WML and WMLScript by Ben Forta, Keith D. Lauver, Paul Fonte, Robert M. Juncker, Amy O'Leary, Ronan Mandel and Dylan Bromby (Sams, 2000, ISBN 0-672-31946-2) covers the gamut of WAP development, from the basics to more obscure issues. (Read this book online)
Mobile Applications: Architecture, Design, and Development by Valentino Lee, Heather Schneider and Robbie Schell (Prentice Hall PTR, 2004, ISBN 0-13-117263-8) is, as the title suggests, focused on the grander issues regarding mobile development, but serves as a good foundation. Also, unlike most books, it uses .NET instead of Java. (Read this book online
Building Dynamic WAP Applications with MobileDev by Stéphane Hogue, Leslie Hirst and Nicolas Fortin (Sams, 2001, ISBN 0-672-32177-7) gives an overview of the general issues and then explains how to use, MobileDev, "a powerful but easy-to-use development tool that helps you build, test and manage wireless applications based on the Wireless Application Protocol." (Read this book online)
Essential WAP™ for Web Professionals by Damon Hougland and Khurram Zafar (Prentice Hall PTR, 2001, ISBN 0-13-092568-3) is a get-down-to-it look at WML and WMScript. It also includes sample applications written in ASP, Perl, and Java (both JSP and servlets). (Read this book online)
Macromedia® Flash™ Enabled Flash Design and Development for Devices by Christian Cantrell, Mike Chambers, Branden Hall, Robert Hall, Andreas Heim, Craig Kroeger, Steve Leone, Markus Niedermeier, Bill Perry, Fred Sharples, Glenn Thomas, and Phillip Torrone (New Riders Publishing, 2002, ISBN 0-7357-1177-1) covers, well, Flash design and development on devices. With devices, though, that's not necessarily a simple affair, and this book also covers how to deliver Flash-authored content to non-Flash-enabled devices. (Read this book online)
PowerBuilder® 9: Internet and Distributed Application Development by Bill Green and John D. Olson (Sams, 2003, ISBN 0-672-32499-7) includes a chapter on using Powerbuilder to create mobile content. Read this book online)
Specifications and Implementations
One great place to start looking for information on wireless development is the Openwave Developers Network. Openwave makes the browser in most of today's cell phones, and in addition to various articles and tips, you can download the Openwave Phone Simulator (in case your phone doesn't have the latest and greatest, or you want to see what your application looks like on the less advanced models) and various SDKs. Officially, the WAP specifications are maintained by the Open Mobile Alliance, the group formed by the merging of the WAP Forum and the Open Mobile Architecture Initiative. They maintain a very long list of specifications, including XHTML Mobile Profile and WML.