1 /** 2 * Licensed to the University Corporation for Advanced Internet 3 * Development, Inc. (UCAID) under one or more contributor license 4 * agreements. See the NOTICE file distributed with this work for 5 * additional information regarding copyright ownership. 6 * 7 * UCAID licenses this file to you under the Apache License, 8 * Version 2.0 (the "License"); you may not use this file except 9 * in compliance with the License. You may obtain a copy of the 10 * License at 11 * 12 * http://www.apache.org/licenses/LICENSE-2.0 13 * 14 * Unless required by applicable law or agreed to in writing, 15 * software distributed under the License is distributed on an 16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 17 * either express or implied. See the License for the specific 18 * language governing permissions and limitations under the License. 19 */ 20 21 /** 22 * @file xmltooling/util/XMLConstants.h 23 * 24 * Fundamental XML namespace constants. 25 */ 26 27 #ifndef __xmltooling_xmlconstants_h__ 28 #define __xmltooling_xmlconstants_h__ 29 30 #include <xmltooling/base.h> 31 #include <xercesc/util/XercesDefs.hpp> 32 33 /** 34 * XML related constants. 35 */ 36 namespace xmlconstants { 37 38 /** XML core namespace ("http://www.w3.org/XML/1998/namespace") */ 39 extern XMLTOOL_API const XMLCh XML_NS[]; 40 41 /** XML namespace prefix for special xml attributes ("xml") */ 42 extern XMLTOOL_API const XMLCh XML_PREFIX[]; 43 44 /** XML namespace for xmlns attributes ("http://www.w3.org/2000/xmlns/") */ 45 extern XMLTOOL_API const XMLCh XMLNS_NS[]; 46 47 /** XML namespace prefix for xmlns attributes ("xmlns") */ 48 extern XMLTOOL_API const XMLCh XMLNS_PREFIX[]; 49 50 /** XML Schema namespace ("http://www.w3.org/2001/XMLSchema") */ 51 extern XMLTOOL_API const XMLCh XSD_NS[]; 52 53 /** XML Schema QName prefix ("xs") */ 54 extern XMLTOOL_API const XMLCh XSD_PREFIX[]; 55 56 /** XML Schema Instance namespace ("http://www.w3.org/2001/XMLSchema-instance") */ 57 extern XMLTOOL_API const XMLCh XSI_NS[]; 58 59 /** XML Schema Instance QName prefix ("xsi") */ 60 extern XMLTOOL_API const XMLCh XSI_PREFIX[]; 61 62 /** XML Signature namespace ("http://www.w3.org/2000/09/xmldsig#") */ 63 extern XMLTOOL_API const XMLCh XMLSIG_NS[]; 64 65 /** XML Signature QName prefix ("ds") */ 66 extern XMLTOOL_API const XMLCh XMLSIG_PREFIX[]; 67 68 /** XML Signature 1.1 namespace ("http://www.w3.org/2009/xmldsig11#") */ 69 extern XMLTOOL_API const XMLCh XMLSIG11_NS[]; 70 71 /** XML Signature 1.1 QName prefix ("ds11") */ 72 extern XMLTOOL_API const XMLCh XMLSIG11_PREFIX[]; 73 74 /** XML Encryption namespace ("http://www.w3.org/2001/04/xmlenc#") */ 75 extern XMLTOOL_API const XMLCh XMLENC_NS[]; 76 77 /** XML Encryption QName prefix ("xenc") */ 78 extern XMLTOOL_API const XMLCh XMLENC_PREFIX[]; 79 80 /** XML Encryption 1.1 namespace ("http://www.w3.org/2009/xmlenc11#") */ 81 extern XMLTOOL_API const XMLCh XMLENC11_NS[]; 82 83 /** XML Encryption 1.1 QName prefix ("xenc11") */ 84 extern XMLTOOL_API const XMLCh XMLENC11_PREFIX[]; 85 86 /** SOAP 1.1 Envelope XML namespace ("http://schemas.xmlsoap.org/soap/envelope/") */ 87 extern XMLTOOL_API const XMLCh SOAP11ENV_NS[]; 88 89 /** SOAP 1.1 Envelope QName prefix ("S") */ 90 extern XMLTOOL_API const XMLCh SOAP11ENV_PREFIX[]; 91 92 /** XML Tooling namespace ("http://www.opensaml.org/xmltooling") */ 93 extern XMLTOOL_API const XMLCh XMLTOOLING_NS[]; 94 95 /** XML "true" boolean constant */ 96 extern XMLTOOL_API const XMLCh XML_TRUE[]; 97 98 /** XML "false" boolean constant */ 99 extern XMLTOOL_API const XMLCh XML_FALSE[]; 100 101 /** XML "1" boolean constant */ 102 extern XMLTOOL_API const XMLCh XML_ONE[]; 103 104 /** XML "0" boolean constant */ 105 extern XMLTOOL_API const XMLCh XML_ZERO[]; 106 107 /** Enumerations of the different values of a boolean attribute or element */ 108 enum xmltooling_bool_t { 109 XML_BOOL_NULL, 110 XML_BOOL_TRUE, 111 XML_BOOL_FALSE, 112 XML_BOOL_ONE, 113 XML_BOOL_ZERO 114 }; 115 }; 116 117 #endif /* __xmltooling_xmlconstants_h__ */ 118