XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Ways to express "what I don't want"

Hi Folks,

This XML Schema:

     <any namespace="http://www.digital-camera.com"/>  

means  "I want elements from the http://www.digital-camera.com namespace"

It expresses what I want; specifically, I want extension elements to come from the http://www.digital-camera.com namespace.


Conversely, this XML Schema: 

     <any notNamespace="http://www.film-camera.com"/>  

means "I don't want elements from the http://www.film-camera.com namespace"

It expresses what I don't want; specifically, I don't want extension elements to come from http://www.film-camera.com namespace.


I am documenting the various ways that the XML technologies can express "what I don't want". The notNamespace attribute is one way. Below I have listed the ways. Have I missed any?  /Roger


-----------------------------------------
XML
-----------------------------------------

I can't think of any. Can you?


-----------------------------------------
XML Schema
-----------------------------------------

1. The notNamespace attribute of the <any> and <anyAttribute> elements

2. The notQName attribute of the <any> and <anyAttribute> elements

3. All the things listed in the Regular Expressions section below

4. All the things listed in the XPath section below


-----------------------------------------
XSLT
-----------------------------------------

1. All the things listed in the Regular Expressions section below

2. All the things listed in the XPath section below


-----------------------------------------
XPath
-----------------------------------------

1. Selecting a set of nodes as long as the node is not XYX, e.g., ./*[not(self::XYZ)] means "I don't want the XYZ child nodes"

2. Selecting a set of nodes as long as the node does not have the value ABC, e.g., ./*[. ne ABC] means "I don't want the child nodes with value ABC"

3. All the things listed in the Regular Expressions section below


-----------------------------------------
Schematron
-----------------------------------------

1. All the things listed in the Regular Expressions section below

2. All the things listed in the XPath section above


-----------------------------------------
Regular Expressions
-----------------------------------------

1. The ^ negation character, e.g., [^0-9]* means "I don't want the digits 0-9"

2. The \P{...} complement category, e.g., \P{Sc} means "I don't want a currency symbol"

3. The \S symbol means "I don't want a whitespace character"

4. The \I symbol means "I don't want an initial name character"

5. The \W symbol means "I don't want a word character"

6. The \D symbol means "I don't want a digit"

7. The \C symbol means "I don't want a name character"


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS