Xpath Quick Reference

Total Page:16

File Type:pdf, Size:1020Kb

Xpath Quick Reference 3243chAppA.qxd 6/20/05 10:34 AM Page 697 APPENDIX A ■ ■ ■ XPath Quick Reference This appendix gives you a quick guide to XPath, including its syntax and a guide to all the functions that are available to you. Sequences Every XPath expression returns a sequence, which can be empty or hold any number of items. Items can be nodes or atomic values. Nodes Nodes can be of the kinds shown in Table A-1. Table A-1. Node Kinds Node Kind Name String Value Document - Concatenation of all text nodes in the document Element Element name Depends on element type Attribute Attribute name Depends on attribute type Text - Text Comment - Text held within the comment Processing instruction Processing instruction target Text in the processing instruction after the space after the target name Namespace Namespace prefix Namespace URI Node Types Element and attribute nodes can be annotated with a type based on validation against a schema. The types, string values, and typed values of element and attribute nodes are summarized in Table A-2. 697 3243chAppA.qxd 6/20/05 10:34 AM Page 698 698 APPENDIX A ■ XPATH QUICK REFERENCE Table A-2. Node Types Node Kind Validity Type String Value Typed Value Element Unvalidated xdt:untyped Concatenation String value as of all text node xdt:untypedAtomic descendants value Element Invalid or xdt:anyType Concatenation String value as partially validated of all text node xdt:untypedAtomic descendants value Element Valid Simple Text with Sequence of items of whitespace appropriate type normalized based on type Element Valid Mixed Concatenation String value as of all text node xdt:untypedAtomic descendants value Element Valid Element-only Concatenation of all Undefined text node descendants Attribute Unvalidated xdt:untypedAtomic Value with String value as whitespace xdt:untypedAtomic replaced value Attribute Invalid or xdt:untypedAtomic Value with String value as partially validated whitespace xdt:untypedAtomic replaced value Attribute Valid Simple Value with Sequence of items of whitespace appropriate type normalized based on type Atomic Values Atomic values in Basic XSLT can be of any of the atomic types shown in Table A-3. The relevant namespace URIs are • http://www.w3.org/2001/XMLSchema (xs prefix by convention) • http://www.w3.org/2005/04/xpath-datatypes (xdt prefix by convention) ■Caution The namespace for XPath datatypes changes with each version of the spec. Basic XSLT processors may support other, implementation-defined types as well as those given in Table A-3. 3243chAppA.qxd 6/20/05 10:34 AM Page 699 APPENDIX A ■ XPATH QUICK REFERENCE 699 Table A-3. Atomic Types in Basic XSLT Atomic Type Representation Description xs:string The string itself A sequence of XML characters xs:boolean 'true', 'false', '1', true or false or '0' xs:decimal Any number of digits, with A decimal number, with size optional fractional part limits being implementation- defined xs:integer Any number of digits An integer, with size limits being implementation-defined xs:double As xs:decimal, but with optional A floating-point number: exponent, 'NaN', 'INF', or '-INF' a double-precision 64-bit format IEEE 754 value xs:float As xs:double A floating-point number: a single-precision 32-bit format IEEE 754 value xs:date YYYY-MM-DD A date: year, month, day, and optional timezone xs:time hh:mm:ss A time: hours, minutes, seconds, and optional timezone xs:dateTime YYYY-MM-DDThh:mm:ss A date and time: year, month, day, hours, minutes, seconds, and optional timezone xs:gYear YYYY A year with optional timezone xs:gYearMonth YYYY-MM A year and month with optional timezone xs:gMonth --MM A month with optional timezone xs:gMonthDay --MM-DD A month and day with optional timezone xs:gDay ---DD A day with optional timezone xs:duration PyYmMdDThHmMsS A duration of years, months, days, hours, minutes, and seconds xdt:dayTimeDuration PdDThHmMsS A duration of days, hours, minutes, and seconds xdt:yearMonthDuration PyYmM A duration of years and months xs:QName prefix:local-name or just A qualified name: local-name; namespace must a namespace URI and a local be declared name xs:anyURI URI syntax A URI xs:hexBinary Hex-encoded octets Binary data xs:base64Binary Base64-encoded octets Binary data xdt:untypedAtomic Any string An atomic value whose type is not known, and can be cast implicitly to another type 3243chAppA.qxd 6/20/05 10:34 AM Page 700 700 APPENDIX A ■ XPATH QUICK REFERENCE In Schema-Aware XSLT processors, all the atomic types from XML Schema and XPath are built in. These are shown in Figure A-1. You may also import types from a schema using <xsl:import-schema>. xdt:anyAtomicType xs:dateTime xs:date xs:time xs:gYear xs:gYearMonth xs:gMonth xs:gMonthDay xs:gDay xs:boolean xs:hexBinary xs:base64Binary xs:anyURI xs:QName xs:NOTATION xs:duration xs:decimal xs:float xs:double xdt:untypedAtomic xs:string xdt:yearMonthDuration xdt:dayTimeDuration xs:integer xs:normalizedString xs:long xs:nonPositiveInteger xs:nonNegativeInteger xs:token xs:int xs:negativeInteger xs:positiveInteger xs:unsignedLong xs:language xs:Name xs:NMTOKEN xs:short xs:unsignedInt xs:NCName xs:byte xs:unsignedShort xs:ID xs:IDREF xs:ENTITY xs:unsignedByte Key: primitive type XSD type XPath type Figure A-1. The hierarchy of built-in types Atomic values can be cast to other types using constructor functions—the name of the constructor function is the same as the name of the type—or the cast expression. Casting is allowed between the following primitive types: • xs:string and xdt:untypedAtomic values can be cast to any other type (though the cast won’t always succeed), with the exceptions of xs:QName and xs:NOTATION. • Values of numeric types (xs:decimal, xs:float, and xs:double) can be cast to other numeric types, though casts from xs:double and xs:float to xs:decimal won’t always succeed. • Values of numeric types can be cast to xs:boolean and vice versa. • xs:dateTime values can be cast to any of the date/time types. • xs:date values can be cast to xs:dateTime, xs:gYear, xs:gYearMonth, xs:gMonth, xs:gMonthDay, and xs:gDay types. • Values of the binary types (xs:hexBinary and xs:base64Binary) can be cast to each other. Whether a cast will succeed or not can be tested using the castable expression. 3243chAppA.qxd 6/20/05 10:34 AM Page 701 APPENDIX A ■ XPATH QUICK REFERENCE 701 ■Note Literal strings can be cast to xs:QName and to subtypes of xs:NOTATION. Effective Boolean Value Within tests, a value (equivalent to a single-item sequence) will be converted to its effective Boolean value, as shown in Table A-4. Table A-4. Effective Boolean Values Value Effective Boolean Value Node true String true if the string contains any characters, false otherwise Number false if number is 0 or NaN, true otherwise Boolean true if true, false if false Other atomic value Raises an error The effective Boolean value of a sequence is false if it is empty and true if the first item in the sequence is a node. Otherwise, if the sequence contains more than one item, you get an error. Sequence Types Sequence types are patterns that match sequences. Sequence types are summarized in Table A-5. Table A-5. Sequence Types Sequence Type Description void() Matches the empty sequence itemType Matches a sequence containing a single item itemType? Matches a sequence that contains 0 or 1 items itemType+ Matches a sequence that contains 1 or more items itemType* Matches a sequence that contains any number of items Sequence types may use an item type to specify the type of the items in the sequence. Item types are summarized in Table A-6. Table A-6. Item Types Item Type Description item() Matches any item atomicType Matches items of the named atomic type (see Table A-3) nodeKindTest Matches items that are nodes that match the node kind test (see Table A-7) 3243chAppA.qxd 6/20/05 10:34 AM Page 702 702 APPENDIX A ■ XPATH QUICK REFERENCE Node kind tests are used to test nodes. Node kind tests are summarized in Table A-7. Table A-7. Node Kind Tests Node Kind Node Test Description Nodes node() Matches or selects all kinds of nodes Document nodes document-node() Matches or selects all document nodes document-node(element(name)) Matches or selects document nodes with a single document element with a particular name document-node(element(*, type)) Matches or selects document nodes with a single document element with a particular type document-node(element(name, type)) Matches or selects document nodes with a single document element with a particular name and type document-node(schema-element(name)) Matches or selects document nodes with a single document element that matches a global element declaration within a schema Text text() Elements element() Matches or selects all elements element(name) Matches or selects elements with a particular name element(*, type) Matches or selects elements with a particular type element(name, type) Matches or selects elements with a particular name and type schema-element(name) Matches or selects elements based on a global element declaration within a schema Attributes attribute() Matches or selects all attributes attribute(name) Matches or selects attributes with a particular name attribute(*, type) Matches or selects attributes with a particular type attribute(name, type) Matches or selects attributes with a particular name and type schema-attribute(name) Matches or selects attributes based on a global attribute declaration within a schema Comments comment() Processing processing-instruction() Matches or selects all processing Instructions instructions processing-instruction(target) Matches or selects processing instructions with a particular target 3243chAppA.qxd 6/20/05 10:34 AM Page 703 APPENDIX A ■ XPATH QUICK REFERENCE 703 Paths Paths are made up of a number of steps, separated by /s.
Recommended publications
  • Toward the Discovery and Extraction of Money Laundering Evidence from Arbitrary Data Formats Using Combinatory Reductions
    Toward the Discovery and Extraction of Money Laundering Evidence from Arbitrary Data Formats using Combinatory Reductions Alonza Mumford, Duminda Wijesekera George Mason University [email protected], [email protected] Abstract—The evidence of money laundering schemes exist undetected in the electronic files of banks and insurance firms scattered around the world. Intelligence and law enforcement analysts, impelled by the duty to discover connections to drug cartels and other participants in these criminal activities, require the information to be searchable and extractable from all types of data formats. In this overview paper, we articulate an approach — a capability that uses a data description language called Data Format Description Language (DFDL) extended with higher- order functions as a host language to XML Linking (XLink) and XML Pointer (XPointer) languages in order to link, discover and extract financial data fragments from raw-data stores not co- located with each other —see figure 1. The strength of the ap- Fig. 1. An illustration of an anti-money laundering application that connects proach is grounded in the specification of a declarative compiler to multiple data storage sites. In this case, the native data format at each site for our concrete language using a higher-order rewriting system differs, and a data description language extended with higher-order functions with binders called Combinatory Reduction Systems Extended and linking/pointing abstractions are used to extract data fragments based on (CRSX). By leveraging CRSX, we anticipate formal operational their ontological meaning. semantics of our language and significant optimization of the compiler. Index Terms—Semantic Web, Data models, Functional pro- II.
    [Show full text]
  • O'reilly Xpath and Xpointer.Pdf
    XPath and XPointer John E. Simpson Publisher: O'Reilly First Edition August 2002 ISBN: 0-596-00291-2, 224 pages Referring to specific information inside an XML document is a little like finding a needle in a haystack. XPath and XPointer are two closely related Table of Contents languages that play a key role in XML processing by allowing developers Index to find these needles and manipulate embedded information. By the time Full Description you've finished XPath and XPointer, you'll know how to construct a full Reviews XPointer (one that uses an XPath location path to address document Reader reviews content) and completely understand both the XPath and XPointer features it Errata uses. 1 Table of Content Table of Content ............................................................................................................. 2 Preface............................................................................................................................. 4 Who Should Read This Book?.................................................................................... 4 Who Should Not Read This Book?............................................................................. 4 Organization of the Book............................................................................................ 5 Conventions Used in This Book ................................................................................. 5 Comments and Questions ........................................................................................... 6 Acknowledgments......................................................................................................
    [Show full text]
  • XML a New Web Site Architecture
    XML A New Web Site Architecture Jim Costello Derek Werthmuller Darshana Apte Center for Technology in Government University at Albany, SUNY 1535 Western Avenue Albany, NY 12203 Phone: (518) 442-3892 Fax: (518) 442-3886 E-mail: [email protected] http://www.ctg.albany.edu September 2002 © 2002 Center for Technology in Government The Center grants permission to reprint this document provided this cover page is included. Table of Contents XML: A New Web Site Architecture .......................................................................................................................... 1 A Better Way? ......................................................................................................................................................... 1 Defining the Problem.............................................................................................................................................. 1 Partial Solutions ...................................................................................................................................................... 2 Addressing the Root Problems .............................................................................................................................. 2 Figure 1. Sample XML file (all code simplified for example) ...................................................................... 4 Figure 2. Sample XSL File (all code simplified for example) ....................................................................... 6 Figure 3. Formatted Page Produced
    [Show full text]
  • Document Object Model
    Document Object Model DOM DOM is a programming interface that provides a way for the values and structure of an XML document to be accessed and manipulated. Tasks that can be performed with DOM . Navigate an XML document's structure, which is a tree stored in memory. Report the information found at the nodes of the XML tree. Add, delete, or modify elements in the XML document. DOM represents each node of the XML tree as an object with properties and behavior for processing the XML. The root of the tree is a Document object. Its children represent the entire XML document except the xml declaration. On the next page we consider a small XML document with comments, a processing instruction, a CDATA section, entity references, and a DOCTYPE declaration, in addition to its element tree. It is valid with respect to a DTD, named root.dtd. <!ELEMENT root (child*)> <!ELEMENT child (name)> <!ELEMENT name (#PCDATA)> <!ATTLIST child position NMTOKEN #REQUIRED> <!ENTITY last1 "Dover"> <!ENTITY last2 "Reckonwith"> Document Object Model Copyright 2005 by Ken Slonneger 1 Example: root.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE root SYSTEM "root.dtd"> <!-- root.xml --> <?DomParse usage="java DomParse root.xml"?> <root> <child position="first"> <name>Eileen &last1;</name> </child> <child position="second"> <name><![CDATA[<<<Amanda>>>]]> &last2;</name> </child> <!-- Could be more children later. --> </root> DOM imagines that this XML information has a document root with four children: 1. A DOCTYPE declaration. 2. A comment. 3. A processing instruction, whose target is DomParse. 4. The root element of the document. The second comment is a child of the root element.
    [Show full text]
  • Rdfa in XHTML: Syntax and Processing Rdfa in XHTML: Syntax and Processing
    RDFa in XHTML: Syntax and Processing RDFa in XHTML: Syntax and Processing RDFa in XHTML: Syntax and Processing A collection of attributes and processing rules for extending XHTML to support RDF W3C Recommendation 14 October 2008 This version: http://www.w3.org/TR/2008/REC-rdfa-syntax-20081014 Latest version: http://www.w3.org/TR/rdfa-syntax Previous version: http://www.w3.org/TR/2008/PR-rdfa-syntax-20080904 Diff from previous version: rdfa-syntax-diff.html Editors: Ben Adida, Creative Commons [email protected] Mark Birbeck, webBackplane [email protected] Shane McCarron, Applied Testing and Technology, Inc. [email protected] Steven Pemberton, CWI Please refer to the errata for this document, which may include some normative corrections. This document is also available in these non-normative formats: PostScript version, PDF version, ZIP archive, and Gzip’d TAR archive. The English version of this specification is the only normative version. Non-normative translations may also be available. Copyright © 2007-2008 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply. Abstract The current Web is primarily made up of an enormous number of documents that have been created using HTML. These documents contain significant amounts of structured data, which is largely unavailable to tools and applications. When publishers can express this data more completely, and when tools can read it, a new world of user functionality becomes available, letting users transfer structured data between applications and web sites, and allowing browsing applications to improve the user experience: an event on a web page can be directly imported - 1 - How to Read this Document RDFa in XHTML: Syntax and Processing into a user’s desktop calendar; a license on a document can be detected so that users can be informed of their rights automatically; a photo’s creator, camera setting information, resolution, location and topic can be published as easily as the original photo itself, enabling structured search and sharing.
    [Show full text]
  • Bibliography of Erik Wilde
    dretbiblio dretbiblio Erik Wilde's Bibliography References [1] AFIPS Fall Joint Computer Conference, San Francisco, California, December 1968. [2] Seventeenth IEEE Conference on Computer Communication Networks, Washington, D.C., 1978. [3] ACM SIGACT-SIGMOD Symposium on Principles of Database Systems, Los Angeles, Cal- ifornia, March 1982. ACM Press. [4] First Conference on Computer-Supported Cooperative Work, 1986. [5] 1987 ACM Conference on Hypertext, Chapel Hill, North Carolina, November 1987. ACM Press. [6] 18th IEEE International Symposium on Fault-Tolerant Computing, Tokyo, Japan, 1988. IEEE Computer Society Press. [7] Conference on Computer-Supported Cooperative Work, Portland, Oregon, 1988. ACM Press. [8] Conference on Office Information Systems, Palo Alto, California, March 1988. [9] 1989 ACM Conference on Hypertext, Pittsburgh, Pennsylvania, November 1989. ACM Press. [10] UNIX | The Legend Evolves. Summer 1990 UKUUG Conference, Buntingford, UK, 1990. UKUUG. [11] Fourth ACM Symposium on User Interface Software and Technology, Hilton Head, South Carolina, November 1991. [12] GLOBECOM'91 Conference, Phoenix, Arizona, 1991. IEEE Computer Society Press. [13] IEEE INFOCOM '91 Conference on Computer Communications, Bal Harbour, Florida, 1991. IEEE Computer Society Press. [14] IEEE International Conference on Communications, Denver, Colorado, June 1991. [15] International Workshop on CSCW, Berlin, Germany, April 1991. [16] Third ACM Conference on Hypertext, San Antonio, Texas, December 1991. ACM Press. [17] 11th Symposium on Reliable Distributed Systems, Houston, Texas, 1992. IEEE Computer Society Press. [18] 3rd Joint European Networking Conference, Innsbruck, Austria, May 1992. [19] Fourth ACM Conference on Hypertext, Milano, Italy, November 1992. ACM Press. [20] GLOBECOM'92 Conference, Orlando, Florida, December 1992. IEEE Computer Society Press. http://github.com/dret/biblio (August 29, 2018) 1 dretbiblio [21] IEEE INFOCOM '92 Conference on Computer Communications, Florence, Italy, 1992.
    [Show full text]
  • Exploring and Extracting Nodes from Large XML Files
    Exploring and Extracting Nodes from Large XML Files Guy Lapalme January 2010 Abstract This article shows how to deal simply with large XML files that cannot be read as a whole in memory and for which the usual XML exploration and extraction mechanisms cannot work or are very inefficient in processing time. We define the notion of a skeleton document that is maintained as the file is read using a pull- parser. It is used for showing the structure of the document and for selecting parts of it. 1 Introduction XML has been developed to facilitate the annotation of information to be shared between computer systems. Because it is intended to be easily generated and parsed by computer systems on all platforms, its format is based on character streams rather than internal binary ones. Being character-based, it also has the nice property of being readable and editable by humans using standard text editors. XML is based on a uniform, simple and yet powerful model of data organization: the generalized tree. Such a tree is defined as either a single element or an element having other trees as its sub-elements called children. This is the same model as the one chosen for the Lisp programming language 50 years ago. This hierarchical model is very simple and allows a simple annotation of the data. The left part of Figure 1 shows a very small XML file illustrating the basic notation: an arbitrary name between < and > symbols is given to a node of a tree. This is called a start-tag.
    [Show full text]
  • QUERYING JSON and XML Performance Evaluation of Querying Tools for Offline-Enabled Web Applications
    QUERYING JSON AND XML Performance evaluation of querying tools for offline-enabled web applications Master Degree Project in Informatics One year Level 30 ECTS Spring term 2012 Adrian Hellström Supervisor: Henrik Gustavsson Examiner: Birgitta Lindström Querying JSON and XML Submitted by Adrian Hellström to the University of Skövde as a final year project towards the degree of M.Sc. in the School of Humanities and Informatics. The project has been supervised by Henrik Gustavsson. 2012-06-03 I hereby certify that all material in this final year project which is not my own work has been identified and that no work is included for which a degree has already been conferred on me. Signature: ___________________________________________ Abstract This article explores the viability of third-party JSON tools as an alternative to XML when an application requires querying and filtering of data, as well as how the application deviates between browsers. We examine and describe the querying alternatives as well as the technologies we worked with and used in the application. The application is built using HTML 5 features such as local storage and canvas, and is benchmarked in Internet Explorer, Chrome and Firefox. The application built is an animated infographical display that uses querying functions in JSON and XML to filter values from a dataset and then display them through the HTML5 canvas technology. The results were in favor of JSON and suggested that using third-party tools did not impact performance compared to native XML functions. In addition, the usage of JSON enabled easier development and cross-browser compatibility. Further research is proposed to examine document-based data filtering as well as investigating why performance deviated between toolsets.
    [Show full text]
  • EAN.UCC XML Architectural Guide Version 1.0 July 2001
    EAN·UCC System The Global Language of Business ® EAN.UCC XML Architectural Guide Version 1.0 July 2001 COPYRIGHT 2001, EAN INTERNATIONAL™ AND UNIFORM CODE COUNCIL, INC.Ô EAN.UCC Architectural Guide EAN·UCC System The Global Language of Business ® Table of Contents Document History........................................................................................................................ 4 1. Introduction............................................................................................................................ 5 1.1 Overview......................................................................................................................................................................... 5 1.1.1 Extensions in UML............................................................................................................................................... 5 1.1.1.1 Common Core Components ....................................................................................................................... 6 1.2 In A Nutshell: A Business Process Document......................................................................................................... 6 1.3 Other Related Documents ............................................................................................................................................ 7 2. Implementation Guidelines ..................................................................................................... 8 2.1 Schema Language ........................................................................................................................................................
    [Show full text]
  • Ontology Matching • Semantic Social Networks and Peer-To-Peer Systems
    The web: from XML to OWL Rough Outline 1. Foundations of XML (Pierre Genevès & Nabil Layaïda) • Core XML • Programming with XML Development of the future web • Foundations of XML types (tree grammars, tree automata) • Tree logics (FO, MSO, µ-calculus) • Expressing information ! Languages • A taste of research: introduction to some grand challenges • Manipulating it ! Algorithms 2. Semantics of knowledge representation on the web (Jérôme Euzenat & • in the most correct, efficient and ! Logic Marie-Christine Rousset) meaningful way ! Semantics • Semantic web languages (URI, RDF, RDFS and OWL) • Querying RDF and RDFS (SPARQL) • Querying data though ontologies (DL-Lite) • Ontology matching • Semantic social networks and peer-to-peer systems 1 / 8 2 / 8 Foundations of XML Semantic web We will talk about languages, algorithms, and semantics for efficiently and meaningfully manipulating formalised knowledge. We will talk about languages, algorithms, and programming techniques for efficiently and safely manipulating XML data. You will learn about: You will learn about: • Expressing formalised knowledge on the semantic web (RDF) • Tree structured data (XML) ! Syntax and semantics ! Tree grammars & validation You will not learn about: • Expressing ontologies on the semantic • XML programming (XPath, XSLT...) You will not learn about: web (RDFS, OWL, DL-Lite) • Tagging pictures ! Queries & transformations ! Syntax and semantics • Hacking CGI scripts ! Reasoning • Sharing MP3 • Foundational theory & tools • HTML • Creating facebook ! Regular expressions
    [Show full text]
  • XML Information Set
    XML Information Set XML Information Set W3C Recommendation 24 October 2001 This version: http://www.w3.org/TR/2001/REC-xml-infoset-20011024 Latest version: http://www.w3.org/TR/xml-infoset Previous version: http://www.w3.org/TR/2001/PR-xml-infoset-20010810 Editors: John Cowan, [email protected] Richard Tobin, [email protected] Copyright ©1999, 2000, 2001 W3C® (MIT, INRIA, Keio), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply. Abstract This specification provides a set of definitions for use in other specifications that need to refer to the information in an XML document. Status of this Document This section describes the status of this document at the time of its publication. Other documents may supersede this document. The latest status of this document series is maintained at the W3C. This is the W3C Recommendation of the XML Information Set. This document has been reviewed by W3C Members and other interested parties and has been endorsed by the Director as a W3C Recommendation. It is a stable document and may be used as reference material or cited as a normative reference from another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its widespread deployment. This enhances the functionality and interoperability of the file:///C|/Documents%20and%20Settings/immdca01/Desktop/xml-infoset.html (1 of 16) [8/12/2002 10:38:58 AM] XML Information Set Web. This document has been produced by the W3C XML Core Working Group as part of the XML Activity in the W3C Architecture Domain.
    [Show full text]
  • <?Xml Version="1.0" Encoding="Iso
    <?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>BCS Website Services- valid html and css code</title> <meta name="author" content="Administrator" /> <meta name="description" content="Read about the importance of using valid HTML coding in your web site design." /> <meta name="keywords" content="valid,html,css,code,coding,web site design" /> <meta name="robots" content="INDEX,FOLLOW" /> <script type="text/javascript" src="http://www.bcswebsiteservices.com/mambots/system/jceutils/jscripts/jquery.js"></script> <script type="text/javascript" src="http://www.bcswebsiteservices.com/mambots/system/jceutils/jscripts/utils.js"></script> <script type="text/javascript" src="http://www.bcswebsiteservices.com/mambots/system/jceutils/jscripts/embed.js"></script> <link href="http://www.bcswebsiteservices.com/mambots/system/jceutils/css/jcebox.css" rel="stylesheet" type="text/css" media="all"/> <!--[if IE]><link href="http://www.bcswebsiteservices.com/mambots/system/jceutils/css/jcebox_ie.css" rel="stylesheet" type="text/css" media="all"/><![endif]--> <script type="text/javascript"> jQuery.noConflict(); jceUtils.config.convert=1; jceUtils.config.resize=1; jceUtils.config.overlay=1; jceUtils.config.overlay_opacity=0.6; jceUtils.config.fadespeed=500; jceUtils.config.scalespeed=500; jceUtils.config.pngfix=0;
    [Show full text]