1*ecfe53c5SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*ecfe53c5SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*ecfe53c5SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*ecfe53c5SAndrew Rist * distributed with this work for additional information 6*ecfe53c5SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*ecfe53c5SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*ecfe53c5SAndrew Rist * "License"); you may not use this file except in compliance 9*ecfe53c5SAndrew Rist * with the License. You may obtain a copy of the License at 10*ecfe53c5SAndrew Rist * 11*ecfe53c5SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*ecfe53c5SAndrew Rist * 13*ecfe53c5SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*ecfe53c5SAndrew Rist * software distributed under the License is distributed on an 15*ecfe53c5SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*ecfe53c5SAndrew Rist * KIND, either express or implied. See the License for the 17*ecfe53c5SAndrew Rist * specific language governing permissions and limitations 18*ecfe53c5SAndrew Rist * under the License. 19*ecfe53c5SAndrew Rist * 20*ecfe53c5SAndrew Rist *************************************************************/ 21*ecfe53c5SAndrew Rist 22*ecfe53c5SAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir #ifndef _XMLOFF_ELEMTRANSFORMERACTION_HXX 25cdf0e10cSrcweir #define _XMLOFF_ELEMTRANSFORMERACTION_HXX 26cdf0e10cSrcweir 27cdf0e10cSrcweir #include "TransformerAction.hxx" 28cdf0e10cSrcweir 29cdf0e10cSrcweir enum XMLElemTransformerAction 30cdf0e10cSrcweir { 31cdf0e10cSrcweir XML_ETACTION_EOT=XML_TACTION_EOT, // uses for initialization only 32cdf0e10cSrcweir XML_ETACTION_COPY, // copy all (default) 33cdf0e10cSrcweir // for persistent elements: keep 34cdf0e10cSrcweir // elem content 35cdf0e10cSrcweir XML_ETACTION_COPY_TEXT, // copy all 36cdf0e10cSrcweir // for persistent elements: keep 37cdf0e10cSrcweir // text content 38cdf0e10cSrcweir XML_ETACTION_COPY_CONTENT, // ignore elem, process content 39cdf0e10cSrcweir XML_ETACTION_RENAME_ELEM, // rename element: 40cdf0e10cSrcweir // - param1: namespace + 41cdf0e10cSrcweir // token of local name 42cdf0e10cSrcweir XML_ETACTION_RENAME_ELEM_PROC_ATTRS,// rename element and proc attr: 43cdf0e10cSrcweir // - param1: elem namespace + 44cdf0e10cSrcweir // token of local name 45cdf0e10cSrcweir // - param2: attr acation map 46cdf0e10cSrcweir XML_ETACTION_RENAME_ELEM_ADD_ATTR, // rename element and add attr: 47cdf0e10cSrcweir // - param1: elem namespace + 48cdf0e10cSrcweir // token of local name 49cdf0e10cSrcweir // - param2: attr namespace + 50cdf0e10cSrcweir // token of local name 51cdf0e10cSrcweir // - param3: attr value 52cdf0e10cSrcweir XML_ETACTION_RENAME_ELEM_ADD_PROC_ATTR, // rename element and add attr: 53cdf0e10cSrcweir // - param1: elem namespace + 54cdf0e10cSrcweir // token of local name 55cdf0e10cSrcweir // - param2: attr namespace + 56cdf0e10cSrcweir // token of local name 57cdf0e10cSrcweir // - param3: attr value (low) 58cdf0e10cSrcweir // attr action map (high) 59cdf0e10cSrcweir XML_ETACTION_RENAME_ELEM_COND, // rename element if child of another: 60cdf0e10cSrcweir // - param1: namespace + 61cdf0e10cSrcweir // token of new local name 62cdf0e10cSrcweir // - param2: namespace + 63cdf0e10cSrcweir // token of parent element 64cdf0e10cSrcweir XML_ETACTION_RENAME_ELEM_PROC_ATTRS_COND,// rename element and proc attr 65cdf0e10cSrcweir // if child of another: 66cdf0e10cSrcweir // - param1: elem namespace + 67cdf0e10cSrcweir // token of new local name 68cdf0e10cSrcweir // - param2: attr acation map 69cdf0e10cSrcweir // - param3: namespace + 70cdf0e10cSrcweir // token of parent element 71cdf0e10cSrcweir XML_ETACTION_PROC_ATTRS, // proc attr: 72cdf0e10cSrcweir // - param1: attr acation map 73cdf0e10cSrcweir XML_ETACTION_MOVE_ATTRS_TO_ELEMS, // turn some attributes into elems 74cdf0e10cSrcweir // - param1: action map specifying 75cdf0e10cSrcweir // the attrs that shall be moved 76cdf0e10cSrcweir XML_ETACTION_MOVE_ELEMS_TO_ATTRS, // turn some elems into attrs 77cdf0e10cSrcweir // - param1: action map specifying 78cdf0e10cSrcweir // the elems that shall be moved 79cdf0e10cSrcweir XML_ETACTION_PROC_ATTRS_COND, // proc attr if child of another: 80cdf0e10cSrcweir // - param1: namespace + 81cdf0e10cSrcweir // token of parent element 82cdf0e10cSrcweir // - param2: attr acation map 83cdf0e10cSrcweir XML_ETACTION_EXTRACT_CHARACTERS, // takes the characters of the current 84cdf0e10cSrcweir // element and all child elements 85cdf0e10cSrcweir // and put them together into the 86cdf0e10cSrcweir // current element 87cdf0e10cSrcweir // the child elements are removed 88cdf0e10cSrcweir XML_ETACTION_USER_DEFINED=0x40000000,// user defined actions start here 89cdf0e10cSrcweir XML_ETACTION_END=XML_TACTION_END 90cdf0e10cSrcweir }; 91cdf0e10cSrcweir 92cdf0e10cSrcweir #endif // _XMLOFF_ELEMTRANSFORMERACTION_HXX 93