From boris at codesynthesis.com Mon Aug 4 04:02:25 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Mon Aug 4 04:07:49 2014 Subject: [xsd-users] no abstract =?utf-8?Q?base?= =?utf-8?Q?_classes_with_=22Customizing_the_generated_type_?= =?utf-8?B?4oCU?= the complex case" In-Reply-To: <53D9FE97.2060003@oli-obk.de> References: <53D77CE4.4040701@oli-obk.de> <53D8B064.20908@oli-obk.de> <53D8BD4B.9050806@oli-obk.de> <53D9F23A.3000402@oli-obk.de> <53D9FE97.2060003@oli-obk.de> Message-ID: Hi Oliver, Oliver Schneider writes: > So, in addition to your previous fix, and to keep the possibility of > adding the *_base type as a member instead of a base in the > non-polymorphic case, could you either add a command-line argument to > prevent the creation of _clone (manually for every _base class would be > fine), or automatically not create it for polymorphic _base classes? I gave it some thought and I don't think there is any use in having the _clone() function generated in *_base classes at all. We cannot make it pure virtual (that would prevent using *_base as a member). But we can simply not generate it at all and I can't think of a good reason why the user-supplied implementation would ever want to call _clone() on *_base. Do you see any problems with this approach on your side? Boris From xsd-users at oli-obk.de Mon Aug 4 04:41:44 2014 From: xsd-users at oli-obk.de (Oliver Schneider) Date: Mon Aug 4 04:41:46 2014 Subject: =?windows-1252?Q?Re=3A_=5Bxsd-users=5D_no_abstract_base_?= =?windows-1252?Q?classes_with_=22Customizing_the_generated_typ?= =?windows-1252?Q?e_=97_the_complex_case=22?= In-Reply-To: References: <53D77CE4.4040701@oli-obk.de> <53D8B064.20908@oli-obk.de> <53D8BD4B.9050806@oli-obk.de> <53D9F23A.3000402@oli-obk.de> <53D9FE97.2060003@oli-obk.de> Message-ID: <53DF4748.9060704@oli-obk.de> Hi Boris, > I gave it some thought and I don't think there is any use in having the > _clone() function generated in *_base classes at all. yes, i agree > We cannot make it > pure virtual (that would prevent using *_base as a member). But we can > simply not generate it at all and I can't think of a good reason why the > user-supplied implementation would ever want to call _clone() on *_base. that would make the _clone function very dangerous. As it would give you a bad copy. I suggest leaving it in for using *_base as a member, and making it pure virtual when polymorphism is requested for the class. In the case of polymorphism, your are expecting that superman_impl is (implicitly) castable to person_impl. (at least that's how i understood the "person()" member function of the catalog class, i didn't test it). /oliver From boris at codesynthesis.com Tue Aug 5 07:00:09 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Tue Aug 5 07:05:32 2014 Subject: [xsd-users] no abstract =?utf-8?Q?base?= =?utf-8?Q?_classes_with_=22Customizing_the_generated_type_?= =?utf-8?B?4oCU?= the complex case" In-Reply-To: <53DF4748.9060704@oli-obk.de> References: <53D8B064.20908@oli-obk.de> <53D8BD4B.9050806@oli-obk.de> <53D9F23A.3000402@oli-obk.de> <53D9FE97.2060003@oli-obk.de> <53DF4748.9060704@oli-obk.de> Message-ID: Hi Oliver, Oliver Schneider writes: > that would make the _clone function very dangerous. True. > I suggest leaving it in for using *_base as a member, and making it pure > virtual when polymorphism is requested for the class. In the case of > polymorphism, your are expecting that superman_impl is (implicitly) > castable to person_impl. (at least that's how i understood the > "person()" member function of the catalog class, i didn't test it). Good point. I've implemented this logic and here is a binary: http://codesynthesis.com/~boris/tmp/xsd/xsd-4.1.0.a2-i686-windows.zip Let me know if there are still any issues. Boris From ciptok at gmail.com Tue Aug 5 13:58:53 2014 From: ciptok at gmail.com (Kamil Grzebien) Date: Tue Aug 5 13:59:01 2014 Subject: [xsd-users] Custom class inheritance Message-ID: Hello, I was playing around with xsdcxx tool to with some inheritance examples. I managed to generate it using restriction and extensions keywords. What I'm looking for is the possibility to generate class from xsd type that will also inherit from external custom class. I'd like to add some abstraction layer for set of generated objects. I hope it's clear what I mean. Is something like that possible at the moment within the tool? Regards, Kamil From boris at codesynthesis.com Wed Aug 6 04:36:00 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Wed Aug 6 04:41:23 2014 Subject: [xsd-users] Custom class inheritance In-Reply-To: References: Message-ID: Hi Kamil, Kamil Grzebien writes: > What I'm looking for is the possibility to generate class from xsd type > that will also inherit from external custom class. I'd like to add some > abstraction layer for set of generated objects. Yes, you can do this with type customization. For more information see the C++/Tree Mapping Customization Guide: http://wiki.codesynthesis.com/Tree/Customization_guide As well as the examples in the examples/cxx/tree/custom/ directory. Boris From xsd-users at oli-obk.de Tue Aug 5 07:35:22 2014 From: xsd-users at oli-obk.de (Oliver Schneider) Date: Wed Aug 6 11:00:46 2014 Subject: =?windows-1252?Q?Re=3A_=5Bxsd-users=5D_no_abstract_base_?= =?windows-1252?Q?classes_with_=22Customizing_the_generated_typ?= =?windows-1252?Q?e_=97_the_complex_case=22?= In-Reply-To: References: <53D8B064.20908@oli-obk.de> <53D8BD4B.9050806@oli-obk.de> <53D9F23A.3000402@oli-obk.de> <53D9FE97.2060003@oli-obk.de> <53DF4748.9060704@oli-obk.de> Message-ID: <53E0C17A.3020006@oli-obk.de> Hi Boris, Wonderful! This works like a charm. > Let me know if there are still any issues. You found a bug in my code :D I had an abstract base type "person". Type "superhero" inherited from that. Type "superman_base" inherited from "superhero". There was a _clone function in type "superhero", which broke, because "person" had a pure virtual function. So, i fixed my xsd schema and made "superhero" abstract, too. /Oliver From alexander.gosling at kongsberg.com Tue Aug 12 04:49:41 2014 From: alexander.gosling at kongsberg.com (alexander.gosling@kongsberg.com) Date: Tue Aug 12 04:50:00 2014 Subject: [xsd-users] Double definitions when using DLLs In-Reply-To: References: Message-ID: Hello Boris, We have tried these suggestions in Visual Studio 2012. Unfortunately have not been successful in making it work. Could you show us an example in how you managed to get it to work? -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 5. mai 2014 18:55 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Alexander, I believe you can resolve this issue if you can make one of the DLLs "root" and export std::basic_string from it while importing it in all the other DLLs and your executable. This earlier post has the instructions: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html With this email containing more analysis/information on the problem: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003019.html Let me know how it goes or if something is not clear. Boris ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. From xsd-users at oli-obk.de Tue Aug 12 05:09:20 2014 From: xsd-users at oli-obk.de (Oliver Schneider) Date: Tue Aug 12 05:09:23 2014 Subject: [xsd-users] idref get() either comment or implementation wrong Message-ID: <53E9D9C0.20901@oli-obk.de> Hi Boris, when using xse:refType together with idref the dynamic_cast in get() will return 0 if the object returned by get_() cannot be cast to ref_type and if the pointer was null. The comment says @return A constant pointer to the referenced object or 0 if the object is not found. So either the comment needs to be updated, or you need to to do something along the lines of : if (get_()) { return &dynamic_cast(*get_()); // throws std::bad_cast if the cast is not possible } else { return nullptr; } greetings /oliver From boris at codesynthesis.com Tue Aug 12 08:18:05 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Tue Aug 12 08:23:27 2014 Subject: [xsd-users] idref get() either comment or implementation wrong In-Reply-To: <53E9D9C0.20901@oli-obk.de> References: <53E9D9C0.20901@oli-obk.de> Message-ID: Hi Oliver, Oliver Schneider writes: > when using xse:refType together with idref the dynamic_cast in get() > will return 0 if the object returned by get_() cannot be cast to > ref_type and if the pointer was null. > The comment says @return A constant pointer to the referenced object or > 0 if the object is not found. Well, this means that the object of *this type* is not found. I've clarified the comment. Boris From boris at codesynthesis.com Tue Aug 12 08:27:14 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Tue Aug 12 08:32:34 2014 Subject: [xsd-users] Double definitions when using DLLs In-Reply-To: References: Message-ID: Hi Alexander, Can you describe your setup a bit. Specifically, what are the DLLs, what are the executables, what exports what, and what errors and where you get. This way I can try to re-create your setup in a separate test case. Or, if you want to create such a test case yourself, that would be even better! I could then try to "fix" it. Thanks, Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Tue, 12 Aug, 2014 08:49 +0000 Hello Boris, We have tried these suggestions in Visual Studio 2012. Unfortunately have not been successful in making it work. Could you show us an example in how you managed to get it to work? -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 5. mai 2014 18:55 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Alexander, I believe you can resolve this issue if you can make one of the DLLs "root" and export std::basic_string from it while importing it in all the other DLLs and your executable. This earlier post has the instructions: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html With this email containing more analysis/information on the problem: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003019.html Let me know how it goes or if something is not clear. Boris ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. From alexander.gosling at kongsberg.com Wed Aug 13 11:20:52 2014 From: alexander.gosling at kongsberg.com (alexander.gosling@kongsberg.com) Date: Wed Aug 13 11:21:06 2014 Subject: [xsd-users] Double definitions when using DLLs In-Reply-To: References: , Message-ID: Hi Boris, Thanks for your suggestions. Yes, we can isolate the code from our system and supply it to you. That is a bit of work, so it would be easier for us if you could send us the program you used to verify the solution you describe in http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html. We can compile that in our environment, and check any differences between our code and yours. -- alex ________________________________________ From: Boris Kolpackov [boris@codesynthesis.com] Sent: Tuesday, August 12, 2014 2:27 PM To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Hi Alexander, Can you describe your setup a bit. Specifically, what are the DLLs, what are the executables, what exports what, and what errors and where you get. This way I can try to re-create your setup in a separate test case. Or, if you want to create such a test case yourself, that would be even better! I could then try to "fix" it. Thanks, Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Tue, 12 Aug, 2014 08:49 +0000 Hello Boris, We have tried these suggestions in Visual Studio 2012. Unfortunately have not been successful in making it work. Could you show us an example in how you managed to get it to work? -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 5. mai 2014 18:55 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Alexander, I believe you can resolve this issue if you can make one of the DLLs "root" and export std::basic_string from it while importing it in all the other DLLs and your executable. This earlier post has the instructions: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html With this email containing more analysis/information on the problem: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003019.html Let me know how it goes or if something is not clear. Boris ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. From boris at codesynthesis.com Thu Aug 14 04:41:43 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Thu Aug 14 04:47:06 2014 Subject: [xsd-users] Double definitions when using DLLs In-Reply-To: References: Message-ID: Hi Alexander, Please find attached the test case I was using at that time. That was 4 years ago so my memory is a bit fuzzy as to what exactly going on in there. The dll_test.new is my latest (modified) version while dll_test.orig is the original test case. See which one resembles your case the closest (if at all). Generally, by now I have a pretty good understanding of what's going on with this problem. Unfortunately, this Win32 DLL exporting stuff is quite complex (and in many cases outright broken) and, as a result, there are many ways in which things can be done "incorrectly" that will all lead to the same or very similar errors. That's why it is best to either have a detailed description of your setup (so that I could try to guess which part is incorrect) or, better yet, have a small test case that mimics your setup so that I can try and fix it. Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Wed, 13 Aug, 2014 15:20 +0000 Hi Boris, Thanks for your suggestions. Yes, we can isolate the code from our system and supply it to you. That is a bit of work, so it would be easier for us if you could send us the program you used to verify the solution you describe in http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html. We can compile that in our environment, and check any differences between our code and yours. -- alex ________________________________________ From: Boris Kolpackov [boris@codesynthesis.com] Sent: Tuesday, August 12, 2014 2:27 PM To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Hi Alexander, Can you describe your setup a bit. Specifically, what are the DLLs, what are the executables, what exports what, and what errors and where you get. This way I can try to re-create your setup in a separate test case. Or, if you want to create such a test case yourself, that would be even better! I could then try to "fix" it. Thanks, Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Tue, 12 Aug, 2014 08:49 +0000 Hello Boris, We have tried these suggestions in Visual Studio 2012. Unfortunately have not been successful in making it work. Could you show us an example in how you managed to get it to work? -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 5. mai 2014 18:55 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Alexander, I believe you can resolve this issue if you can make one of the DLLs "root" and export std::basic_string from it while importing it in all the other DLLs and your executable. This earlier post has the instructions: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html With this email containing more analysis/information on the problem: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003019.html Let me know how it goes or if something is not clear. Boris ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. From alexander.gosling at kongsberg.com Thu Aug 14 07:55:11 2014 From: alexander.gosling at kongsberg.com (alexander.gosling@kongsberg.com) Date: Thu Aug 14 07:55:26 2014 Subject: [xsd-users] Double definitions when using DLLs In-Reply-To: References: Message-ID: Hi Boris, I could not see any attached test case :) -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 14. august 2014 10:42 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Hi Alexander, Please find attached the test case I was using at that time. That was 4 years ago so my memory is a bit fuzzy as to what exactly going on in there. The dll_test.new is my latest (modified) version while dll_test.orig is the original test case. See which one resembles your case the closest (if at all). Generally, by now I have a pretty good understanding of what's going on with this problem. Unfortunately, this Win32 DLL exporting stuff is quite complex (and in many cases outright broken) and, as a result, there are many ways in which things can be done "incorrectly" that will all lead to the same or very similar errors. That's why it is best to either have a detailed description of your setup (so that I could try to guess which part is incorrect) or, better yet, have a small test case that mimics your setup so that I can try and fix it. Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Wed, 13 Aug, 2014 15:20 +0000 Hi Boris, Thanks for your suggestions. Yes, we can isolate the code from our system and supply it to you. That is a bit of work, so it would be easier for us if you could send us the program you used to verify the solution you describe in http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html. We can compile that in our environment, and check any differences between our code and yours. -- alex ________________________________________ From: Boris Kolpackov [boris@codesynthesis.com] Sent: Tuesday, August 12, 2014 2:27 PM To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Hi Alexander, Can you describe your setup a bit. Specifically, what are the DLLs, what are the executables, what exports what, and what errors and where you get. This way I can try to re-create your setup in a separate test case. Or, if you want to create such a test case yourself, that would be even better! I could then try to "fix" it. Thanks, Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Tue, 12 Aug, 2014 08:49 +0000 Hello Boris, We have tried these suggestions in Visual Studio 2012. Unfortunately have not been successful in making it work. Could you show us an example in how you managed to get it to work? -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 5. mai 2014 18:55 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Alexander, I believe you can resolve this issue if you can make one of the DLLs "root" and export std::basic_string from it while importing it in all the other DLLs and your executable. This earlier post has the instructions: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html With this email containing more analysis/information on the problem: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003019.html Let me know how it goes or if something is not clear. Boris ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. From boris at codesynthesis.com Fri Aug 15 00:54:12 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Fri Aug 15 03:46:19 2014 Subject: [xsd-users] Double definitions when using DLLs In-Reply-To: References: Message-ID: Sorry, here it is. Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Thu, 14 Aug, 2014 11:55 +0000 Hi Boris, I could not see any attached test case :) -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 14. august 2014 10:42 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Hi Alexander, Please find attached the test case I was using at that time. That was 4 years ago so my memory is a bit fuzzy as to what exactly going on in there. The dll_test.new is my latest (modified) version while dll_test.orig is the original test case. See which one resembles your case the closest (if at all). Generally, by now I have a pretty good understanding of what's going on with this problem. Unfortunately, this Win32 DLL exporting stuff is quite complex (and in many cases outright broken) and, as a result, there are many ways in which things can be done "incorrectly" that will all lead to the same or very similar errors. That's why it is best to either have a detailed description of your setup (so that I could try to guess which part is incorrect) or, better yet, have a small test case that mimics your setup so that I can try and fix it. Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Wed, 13 Aug, 2014 15:20 +0000 Hi Boris, Thanks for your suggestions. Yes, we can isolate the code from our system and supply it to you. That is a bit of work, so it would be easier for us if you could send us the program you used to verify the solution you describe in http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html. We can compile that in our environment, and check any differences between our code and yours. -- alex ________________________________________ From: Boris Kolpackov [boris@codesynthesis.com] Sent: Tuesday, August 12, 2014 2:27 PM To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Hi Alexander, Can you describe your setup a bit. Specifically, what are the DLLs, what are the executables, what exports what, and what errors and where you get. This way I can try to re-create your setup in a separate test case. Or, if you want to create such a test case yourself, that would be even better! I could then try to "fix" it. Thanks, Boris ----- Original Message ----- From: "alexander.gosling@kongsberg.com" Subject: RE: [xsd-users] Double definitions when using DLLs Date: Tue, 12 Aug, 2014 08:49 +0000 Hello Boris, We have tried these suggestions in Visual Studio 2012. Unfortunately have not been successful in making it work. Could you show us an example in how you managed to get it to work? -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 5. mai 2014 18:55 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Double definitions when using DLLs Alexander, I believe you can resolve this issue if you can make one of the DLLs "root" and export std::basic_string from it while importing it in all the other DLLs and your executable. This earlier post has the instructions: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html With this email containing more analysis/information on the problem: http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003019.html Let me know how it goes or if something is not clear. Boris ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. -------------- next part -------------- A non-text attachment was scrubbed... Name: dll_test.zip Type: application/zip Size: 33858 bytes Desc: not available Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20140815/6183e274/dll_test-0001.zip From alexander.gosling at kongsberg.com Fri Aug 15 03:18:58 2014 From: alexander.gosling at kongsberg.com (alexander.gosling@kongsberg.com) Date: Fri Aug 15 03:46:20 2014 Subject: [xsd-users] Error report for XSD-4.0 Message-ID: Hello Boris, We like to report 2 errors observed using XSD 4.0 The environment is Visual Studio 2012 on Windows 7. 1. libxsd\xsd\cxx\tree\serialization.txx does not compile in our environment. I had to change line 104 from DOMDocument& doc (*e.getOwnerDocument ()); to ::xercesc::DOMDocument& doc (*e.getOwnerDocument ()); which I suppose is exactly the same declaration, only a little bit more specific. 2. For a number of schemas from opengis.org, the include statement to xml.h is wrong in the generated code The include statement generated with 4.0 is: #include while generated with 3.3.0 it is: #include The generation is done with exactly the same command line. Only difference is the version of xsd.exe The code generated with 4.0 has no chance of compiling, while the code generated with 3.3.0 is correct. This is the command line used to generate code: E:\Tools\CodeSynthesis_r\xsd-4.0-i686-windows\bin\xsd.exe cxx-tree --proprietary-license --options-file E:/Work/jsmoms/Jade/JadeOpenGIS/res/JadeOpenGIS/JadeOpenGIS-include.opts --options-file E:/Work/jsmoms/Jade/JadeOpenGIS/cpp/src/JadeOpenGIS-RegRep/3.0/JadeOpenGIS-RegRep.opts --location-map http://schemas.opengis.net/csw/2.0.2/rec-dcterms.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/csw/2.0.2/rec-dcterms.xsd --location-map http://schemas.opengis.net/csw/2.0.2/rec-dcmes.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/csw/2.0.2/rec-dcmes.xsd --location-map http://schemas.opengis.net/csw/2.0.2/CSW-publication.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/csw/2.0.2/CSW-publication.xsd --location-map http://www.w3.org/2001/xml.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/xml/xml.xsd --location-map http://www.w3.org/2001/03/xml.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/xml/xml.xsd --location-map http://schemas.opengis.net/gml/3.1.1/smil/xml-mod.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/xml/xml.xsd --location-map http://schemas.opengis.net/ows/1.0.0/owsAll.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/ows/1.0.0/owsAll.xsd --location-map http://schemas.opengis.net/ows/1.1.0/owsAll.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/ows/1.1.0/owsAll.xsd --location-map http://schemas.opengis.net/filter/1.1.0/filter.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/filter/1.1.0/filter.xsd --location-map http://schemas.opengis.net/xlink/1.0.0/xlinks.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/xlink/1.0.0/xlinks.xsd --location-map xlinks.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/xlink/1.0.0/xlinks.xsd --location-map http://schemas.opengis.net/gml/3.1.1/base/geometryAggregates.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/gml/3.1.1/base/geometryAggregates.xsd --location-map http://schemas.opengis.net/gml/3.1.1/base/gml.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/gml/3.1.1/base/gml.xsd --location-map http://schemas.opengis.net/gml/3.1.1/smil/smil20.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/gml/3.1.1/smil/smil20.xsd --location-map http://www.w3.org/2005/Atom/atom.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/atom/1.0/atom.xsd --location-map http://docs.oasis-open.org/regrep/v3.0/schema/rim.xsd=E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/regrep/3.0/rim.xsd --include-prefix Jade/OpenGIS/regrep/3.0/ --cxx-suffix .cpp --hxx-suffix .h --ixx-suffix .ipp --output-dir E:/Work/jsmoms_RelWithDebInfo/Jade/JadeOpenGIS/include/Jade/OpenGIS/regrep/3.0 E:/Work/jsmoms/Jade/JadeOpenGIS/schemas/regrep/3.0/rim.xsd You will probably need to edit all the paths of the command line to reproduce the generated files. Attached are the following files: - Generated header file with 3.3.0 - Generated header file with 4.0 - source xsd (rim.xsd) - xml.xsd -- alex ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. -------------- next part -------------- A non-text attachment was scrubbed... Name: rim.xsd Type: text/xml Size: 25574 bytes Desc: rim.xsd Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20140815/2cee3a8a/rim-0001.bin -------------- next part -------------- A non-text attachment was scrubbed... Name: xml.xsd Type: text/xml Size: 5712 bytes Desc: xml.xsd Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20140815/2cee3a8a/xml-0001.bin -------------- next part -------------- // Copyright (c) 2005-2014 Code Synthesis Tools CC // // This program was generated by CodeSynthesis XSD, an XML Schema // to C++ data binding compiler, in the Proprietary License mode. // You should have received a proprietary license from Code Synthesis // Tools CC prior to generating this code. See the license text for // conditions. // /** * @file * @brief Generated from rim.xsd. */ #ifndef E__WORK_JSMOMS_JADE_JADE_OPEN_GIS_SCHEMAS_REGREP_3_0_RIM_H #define E__WORK_JSMOMS_JADE_JADE_OPEN_GIS_SCHEMAS_REGREP_3_0_RIM_H #ifndef XSD_USE_CHAR #define XSD_USE_CHAR #endif #ifndef XSD_CXX_TREE_USE_CHAR #define XSD_CXX_TREE_USE_CHAR #endif // Begin prologue. // #include // // End prologue. #include #if (XSD_INT_VERSION != 4000000L) #error XSD runtime version mismatch #endif #include #include // Forward declarations. // namespace Jade { namespace OpenGIS { namespace regrep_3_0 { class referenceURI; class String4; class String8; class String16; class String32; class ShortName; class LongName; class FreeFormText; class InternationalStringType; class LocalizedStringType; class SlotType1; class ValueListType; class SlotListType; class IdentifiableType; class ObjectRefType; class ObjectRefListType; class RegistryObjectType; class RegistryObjectListType; class AssociationType1; class AuditableEventType; class ClassificationType; class ClassificationNodeType; class ClassificationSchemeType; class ExternalIdentifierType; class ExternalLinkType; class ExtrinsicObjectType; class OrganizationType; class PersonNameType; class EmailAddressType; class PostalAddressType; class VersionInfoType; class RegistryPackageType; class ServiceType; class ServiceBindingType; class SpecificationLinkType; class TelephoneNumberType; class TelephoneNumberListType; class PersonType; class UserType; class RegistryType; class FederationType; class AdhocQueryType; class QueryExpressionType; class NotificationType; class SubscriptionType; class ActionType; class NotifyActionType; class conformanceProfile; } } } #include // ::std::auto_ptr #include // std::numeric_limits #include // std::binary_search #include #include #include #include #include #include #include #include namespace Jade { namespace OpenGIS { /** * @brief C++ namespace for the %urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0 * schema namespace. */ namespace regrep_3_0 { /** * @brief Class corresponding to the %referenceURI schema type. * * referenceURI is used by reference attributes within RIM. * Each attribute of type referenceURI references a RegistryObject with * specified URI as id. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED referenceURI: public ::xml_schema::uri { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ referenceURI (const ::xml_schema::uri&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ referenceURI (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ referenceURI (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ referenceURI (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ referenceURI (const referenceURI& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual referenceURI* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~referenceURI (); }; /** * @brief Class corresponding to the %String4 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED String4: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ String4 (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ String4 (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ String4 (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ String4 (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String4 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String4 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String4 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ String4 (const String4& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual String4* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~String4 (); }; /** * @brief Class corresponding to the %String8 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED String8: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ String8 (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ String8 (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ String8 (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ String8 (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String8 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String8 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String8 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ String8 (const String8& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual String8* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~String8 (); }; /** * @brief Class corresponding to the %String16 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED String16: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ String16 (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ String16 (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ String16 (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ String16 (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String16 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String16 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String16 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ String16 (const String16& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual String16* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~String16 (); }; /** * @brief Class corresponding to the %String32 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED String32: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ String32 (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ String32 (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ String32 (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ String32 (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String32 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String32 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String32 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ String32 (const String32& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual String32* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~String32 (); }; /** * @brief Class corresponding to the %ShortName schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ShortName: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ ShortName (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ ShortName (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ ShortName (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ShortName (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ShortName (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ShortName (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ShortName (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ShortName (const ShortName& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ShortName* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ShortName (); }; /** * @brief Class corresponding to the %LongName schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED LongName: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ LongName (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ LongName (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ LongName (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ LongName (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ LongName (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ LongName (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ LongName (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ LongName (const LongName& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual LongName* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~LongName (); }; /** * @brief Class corresponding to the %FreeFormText schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED FreeFormText: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ FreeFormText (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ FreeFormText (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ FreeFormText (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ FreeFormText (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ FreeFormText (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ FreeFormText (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ FreeFormText (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ FreeFormText (const FreeFormText& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual FreeFormText* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~FreeFormText (); }; /** * @brief Class corresponding to the %InternationalStringType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED InternationalStringType: public ::xml_schema::type { public: /** * @name LocalizedString * * @brief Accessor and modifier functions for the %LocalizedString * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::LocalizedStringType LocalizedString_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< LocalizedString_type > LocalizedString_sequence; /** * @brief Element iterator type. */ typedef LocalizedString_sequence::iterator LocalizedString_iterator; /** * @brief Element constant iterator type. */ typedef LocalizedString_sequence::const_iterator LocalizedString_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< LocalizedString_type, char > LocalizedString_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const LocalizedString_sequence& LocalizedString () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ LocalizedString_sequence& LocalizedString (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void LocalizedString (const LocalizedString_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ InternationalStringType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ InternationalStringType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ InternationalStringType (const InternationalStringType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual InternationalStringType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ InternationalStringType& operator= (const InternationalStringType& x); //@} /** * @brief Destructor. */ virtual ~InternationalStringType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: LocalizedString_sequence LocalizedString_; //@endcond }; /** * @brief Class corresponding to the %LocalizedStringType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED LocalizedStringType: public ::xml_schema::type { public: /** * @name lang * * @brief Accessor and modifier functions for the %lang * optional attribute with a default value. * * Attempting to install the relevant ISO 2- and 3-letter * codes as the enumerated possible values is probably never * going to be a realistic possibility. See * RFC 3066 at http://www.ietf.org/rfc/rfc3066.txt and the IANA registry * at http://www.iana.org/assignments/lang-tag-apps.htm for * further information. * * The union allows for the 'un-declaration' of xml:lang with * the empty string. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::xml::lang lang_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< lang_type, char > lang_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const lang_type& lang () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ lang_type& lang (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void lang (const lang_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void lang (::std::auto_ptr< lang_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const lang_type& lang_default_value (); //@} /** * @name charset * * @brief Accessor and modifier functions for the %charset * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::simple_type charset_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< charset_type, char > charset_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const charset_type& charset () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ charset_type& charset (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void charset (const charset_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void charset (::std::auto_ptr< charset_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const charset_type& charset_default_value (); //@} /** * @name value * * @brief Accessor and modifier functions for the %value * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::FreeFormText value_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< value_type, char > value_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const value_type& value () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ value_type& value (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void value (const value_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void value (::std::auto_ptr< value_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ LocalizedStringType (const value_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ LocalizedStringType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ LocalizedStringType (const LocalizedStringType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual LocalizedStringType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ LocalizedStringType& operator= (const LocalizedStringType& x); //@} /** * @brief Destructor. */ virtual ~LocalizedStringType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< lang_type > lang_; static const lang_type lang_default_value_; ::xsd::cxx::tree::one< charset_type > charset_; static const charset_type charset_default_value_; ::xsd::cxx::tree::one< value_type > value_; //@endcond }; /** * @brief Class corresponding to the %SlotType1 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED SlotType1: public ::xml_schema::type { public: /** * @name ValueList * * @brief Accessor and modifier functions for the %ValueList * required element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ValueListType ValueList_type; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ValueList_type, char > ValueList_traits; /** * @brief Return a read-only (constant) reference to the element. * * @return A constant reference to the element. */ const ValueList_type& ValueList () const; /** * @brief Return a read-write reference to the element. * * @return A reference to the element. */ ValueList_type& ValueList (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void ValueList (const ValueList_type& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void ValueList (::std::auto_ptr< ValueList_type > p); //@} /** * @name name * * @brief Accessor and modifier functions for the %name * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName name_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< name_type, char > name_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const name_type& name () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ name_type& name (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void name (const name_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void name (::std::auto_ptr< name_type > p); //@} /** * @name slotType * * @brief Accessor and modifier functions for the %slotType * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI slotType_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< slotType_type > slotType_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< slotType_type, char > slotType_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const slotType_optional& slotType () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ slotType_optional& slotType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void slotType (const slotType_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void slotType (const slotType_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void slotType (::std::auto_ptr< slotType_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ SlotType1 (const ValueList_type&, const name_type&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes * (::std::auto_ptr version). * * This constructor will try to use the passed values directly * instead of making copies. */ SlotType1 (::std::auto_ptr< ValueList_type >, const name_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ SlotType1 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ SlotType1 (const SlotType1& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual SlotType1* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ SlotType1& operator= (const SlotType1& x); //@} /** * @brief Destructor. */ virtual ~SlotType1 (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< ValueList_type > ValueList_; ::xsd::cxx::tree::one< name_type > name_; slotType_optional slotType_; //@endcond }; /** * @brief Class corresponding to the %ValueListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ValueListType: public ::xml_schema::type { public: /** * @name Value * * @brief Accessor and modifier functions for the %Value * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName Value_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Value_type > Value_sequence; /** * @brief Element iterator type. */ typedef Value_sequence::iterator Value_iterator; /** * @brief Element constant iterator type. */ typedef Value_sequence::const_iterator Value_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Value_type, char > Value_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Value_sequence& Value () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Value_sequence& Value (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Value (const Value_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ValueListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ValueListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ValueListType (const ValueListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ValueListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ValueListType& operator= (const ValueListType& x); //@} /** * @brief Destructor. */ virtual ~ValueListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Value_sequence Value_; //@endcond }; /** * @brief Class corresponding to the %SlotListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED SlotListType: public ::xml_schema::type { public: /** * @name Slot * * @brief Accessor and modifier functions for the %Slot * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::SlotType1 Slot_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Slot_type > Slot_sequence; /** * @brief Element iterator type. */ typedef Slot_sequence::iterator Slot_iterator; /** * @brief Element constant iterator type. */ typedef Slot_sequence::const_iterator Slot_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Slot_type, char > Slot_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Slot_sequence& Slot () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Slot_sequence& Slot (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Slot (const Slot_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ SlotListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ SlotListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ SlotListType (const SlotListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual SlotListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ SlotListType& operator= (const SlotListType& x); //@} /** * @brief Destructor. */ virtual ~SlotListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Slot_sequence Slot_; //@endcond }; /** * @brief Class corresponding to the %IdentifiableType schema type. * * Common base type for all types that have unique identity. * If id is provided and is not in proper URN syntax then it is used for * linkage within document and is ignored by the registry. In this case * the * registry generates a UUID URN for id attribute. * id must not be null when object is retrieved from the registry. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED IdentifiableType: public ::xml_schema::type { public: /** * @name Slot * * @brief Accessor and modifier functions for the %Slot * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::SlotType1 Slot_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Slot_type > Slot_sequence; /** * @brief Element iterator type. */ typedef Slot_sequence::iterator Slot_iterator; /** * @brief Element constant iterator type. */ typedef Slot_sequence::const_iterator Slot_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Slot_type, char > Slot_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Slot_sequence& Slot () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Slot_sequence& Slot (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Slot (const Slot_sequence& s); //@} /** * @name id * * @brief Accessor and modifier functions for the %id * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri id_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< id_type, char > id_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const id_type& id () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ id_type& id (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void id (const id_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void id (::std::auto_ptr< id_type > p); //@} /** * @name home * * @brief Accessor and modifier functions for the %home * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri home_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< home_type > home_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< home_type, char > home_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const home_optional& home () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ home_optional& home (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void home (const home_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void home (const home_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void home (::std::auto_ptr< home_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ IdentifiableType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ IdentifiableType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ IdentifiableType (const IdentifiableType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual IdentifiableType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ IdentifiableType& operator= (const IdentifiableType& x); //@} /** * @brief Destructor. */ virtual ~IdentifiableType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Slot_sequence Slot_; ::xsd::cxx::tree::one< id_type > id_; home_optional home_; //@endcond }; /** * @brief Class corresponding to the %ObjectRefType schema type. * * Use to reference an Object by its id. * Specifies the id attribute of the object as its id attribute. * id attribute in ObjectAttributes is exactly the same syntax and * semantics as * id attribute in RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ObjectRefType: public ::Jade::OpenGIS::regrep_3_0::IdentifiableType { public: /** * @name createReplica * * @brief Accessor and modifier functions for the %createReplica * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::boolean createReplica_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< createReplica_type, char > createReplica_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const createReplica_type& createReplica () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ createReplica_type& createReplica (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void createReplica (const createReplica_type& x); /** * @brief Return the default value for the attribute. * * @return The attribute's default value. */ static createReplica_type createReplica_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ObjectRefType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ObjectRefType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ObjectRefType (const ObjectRefType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ObjectRefType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ObjectRefType& operator= (const ObjectRefType& x); //@} /** * @brief Destructor. */ virtual ~ObjectRefType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< createReplica_type > createReplica_; //@endcond }; /** * @brief Class corresponding to the %ObjectRefListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ObjectRefListType: public ::xml_schema::type { public: /** * @name ObjectRef * * @brief Accessor and modifier functions for the %ObjectRef * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ObjectRefType ObjectRef_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ObjectRef_type > ObjectRef_sequence; /** * @brief Element iterator type. */ typedef ObjectRef_sequence::iterator ObjectRef_iterator; /** * @brief Element constant iterator type. */ typedef ObjectRef_sequence::const_iterator ObjectRef_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ObjectRef_type, char > ObjectRef_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ObjectRef_sequence& ObjectRef () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ObjectRef_sequence& ObjectRef (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ObjectRef (const ObjectRef_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ObjectRefListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ObjectRefListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ObjectRefListType (const ObjectRefListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ObjectRefListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ObjectRefListType& operator= (const ObjectRefListType& x); //@} /** * @brief Destructor. */ virtual ~ObjectRefListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ObjectRef_sequence ObjectRef_; //@endcond }; /** * @brief Class corresponding to the %RegistryObjectType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED RegistryObjectType: public ::Jade::OpenGIS::regrep_3_0::IdentifiableType { public: /** * @name Name * * @brief Accessor and modifier functions for the %Name * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::InternationalStringType Name_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< Name_type > Name_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Name_type, char > Name_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const Name_optional& Name () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ Name_optional& Name (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void Name (const Name_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void Name (const Name_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void Name (::std::auto_ptr< Name_type > p); //@} /** * @name Description * * @brief Accessor and modifier functions for the %Description * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::InternationalStringType Description_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< Description_type > Description_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Description_type, char > Description_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const Description_optional& Description () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ Description_optional& Description (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void Description (const Description_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void Description (const Description_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void Description (::std::auto_ptr< Description_type > p); //@} /** * @name VersionInfo * * @brief Accessor and modifier functions for the %VersionInfo * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::VersionInfoType VersionInfo_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< VersionInfo_type > VersionInfo_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< VersionInfo_type, char > VersionInfo_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const VersionInfo_optional& VersionInfo () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ VersionInfo_optional& VersionInfo (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void VersionInfo (const VersionInfo_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void VersionInfo (const VersionInfo_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void VersionInfo (::std::auto_ptr< VersionInfo_type > p); //@} /** * @name Classification * * @brief Accessor and modifier functions for the %Classification * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ClassificationType Classification_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Classification_type > Classification_sequence; /** * @brief Element iterator type. */ typedef Classification_sequence::iterator Classification_iterator; /** * @brief Element constant iterator type. */ typedef Classification_sequence::const_iterator Classification_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Classification_type, char > Classification_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Classification_sequence& Classification () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Classification_sequence& Classification (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Classification (const Classification_sequence& s); //@} /** * @name ExternalIdentifier * * @brief Accessor and modifier functions for the %ExternalIdentifier * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ExternalIdentifierType ExternalIdentifier_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ExternalIdentifier_type > ExternalIdentifier_sequence; /** * @brief Element iterator type. */ typedef ExternalIdentifier_sequence::iterator ExternalIdentifier_iterator; /** * @brief Element constant iterator type. */ typedef ExternalIdentifier_sequence::const_iterator ExternalIdentifier_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ExternalIdentifier_type, char > ExternalIdentifier_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ExternalIdentifier_sequence& ExternalIdentifier () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ExternalIdentifier_sequence& ExternalIdentifier (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ExternalIdentifier (const ExternalIdentifier_sequence& s); //@} /** * @name lid * * @brief Accessor and modifier functions for the %lid * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri lid_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< lid_type > lid_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< lid_type, char > lid_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const lid_optional& lid () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ lid_optional& lid (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void lid (const lid_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void lid (const lid_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void lid (::std::auto_ptr< lid_type > p); //@} /** * @name objectType * * @brief Accessor and modifier functions for the %objectType * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI objectType_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< objectType_type > objectType_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< objectType_type, char > objectType_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const objectType_optional& objectType () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ objectType_optional& objectType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void objectType (const objectType_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void objectType (const objectType_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void objectType (::std::auto_ptr< objectType_type > p); //@} /** * @name status * * @brief Accessor and modifier functions for the %status * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI status_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< status_type > status_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< status_type, char > status_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const status_optional& status () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ status_optional& status (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void status (const status_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void status (const status_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void status (::std::auto_ptr< status_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ RegistryObjectType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ RegistryObjectType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ RegistryObjectType (const RegistryObjectType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual RegistryObjectType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ RegistryObjectType& operator= (const RegistryObjectType& x); //@} /** * @brief Destructor. */ virtual ~RegistryObjectType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Name_optional Name_; Description_optional Description_; VersionInfo_optional VersionInfo_; Classification_sequence Classification_; ExternalIdentifier_sequence ExternalIdentifier_; lid_optional lid_; objectType_optional objectType_; status_optional status_; //@endcond }; /** * @brief Class corresponding to the %RegistryObjectListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED RegistryObjectListType: public ::xml_schema::type { public: /** * @name Identifiable * * @brief Accessor and modifier functions for the %Identifiable * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::IdentifiableType Identifiable_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Identifiable_type > Identifiable_sequence; /** * @brief Element iterator type. */ typedef Identifiable_sequence::iterator Identifiable_iterator; /** * @brief Element constant iterator type. */ typedef Identifiable_sequence::const_iterator Identifiable_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Identifiable_type, char > Identifiable_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Identifiable_sequence& Identifiable () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Identifiable_sequence& Identifiable (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Identifiable (const Identifiable_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ RegistryObjectListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ RegistryObjectListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ RegistryObjectListType (const RegistryObjectListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual RegistryObjectListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ RegistryObjectListType& operator= (const RegistryObjectListType& x); //@} /** * @brief Destructor. */ virtual ~RegistryObjectListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Identifiable_sequence Identifiable_; //@endcond }; /** * @brief Class corresponding to the %AssociationType1 schema type. * * Association is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * An Association specifies references to two previously submitted * registry entrys. * The sourceObject is id of the sourceObject in association * The targetObject is id of the targetObject in association * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED AssociationType1: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name associationType * * @brief Accessor and modifier functions for the %associationType * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI associationType_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< associationType_type, char > associationType_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const associationType_type& associationType () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ associationType_type& associationType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void associationType (const associationType_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void associationType (::std::auto_ptr< associationType_type > p); //@} /** * @name sourceObject * * @brief Accessor and modifier functions for the %sourceObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI sourceObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< sourceObject_type, char > sourceObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const sourceObject_type& sourceObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ sourceObject_type& sourceObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void sourceObject (const sourceObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void sourceObject (::std::auto_ptr< sourceObject_type > p); //@} /** * @name targetObject * * @brief Accessor and modifier functions for the %targetObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI targetObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< targetObject_type, char > targetObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const targetObject_type& targetObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ targetObject_type& targetObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void targetObject (const targetObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void targetObject (::std::auto_ptr< targetObject_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ AssociationType1 (const id_type&, const associationType_type&, const sourceObject_type&, const targetObject_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ AssociationType1 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ AssociationType1 (const AssociationType1& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual AssociationType1* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ AssociationType1& operator= (const AssociationType1& x); //@} /** * @brief Destructor. */ virtual ~AssociationType1 (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< associationType_type > associationType_; ::xsd::cxx::tree::one< sourceObject_type > sourceObject_; ::xsd::cxx::tree::one< targetObject_type > targetObject_; //@endcond }; /** * @brief Class corresponding to the %AuditableEventType schema type. * * An Event that forms an audit trail in ebXML Registry. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED AuditableEventType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name affectedObjects * * @brief Accessor and modifier functions for the %affectedObjects * required element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ObjectRefListType affectedObjects_type; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< affectedObjects_type, char > affectedObjects_traits; /** * @brief Return a read-only (constant) reference to the element. * * @return A constant reference to the element. */ const affectedObjects_type& affectedObjects () const; /** * @brief Return a read-write reference to the element. * * @return A reference to the element. */ affectedObjects_type& affectedObjects (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void affectedObjects (const affectedObjects_type& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void affectedObjects (::std::auto_ptr< affectedObjects_type > p); //@} /** * @name eventType * * @brief Accessor and modifier functions for the %eventType * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI eventType_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< eventType_type, char > eventType_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const eventType_type& eventType () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ eventType_type& eventType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void eventType (const eventType_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void eventType (::std::auto_ptr< eventType_type > p); //@} /** * @name timestamp * * @brief Accessor and modifier functions for the %timestamp * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::date_time timestamp_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< timestamp_type, char > timestamp_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const timestamp_type& timestamp () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ timestamp_type& timestamp (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void timestamp (const timestamp_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void timestamp (::std::auto_ptr< timestamp_type > p); //@} /** * @name user * * @brief Accessor and modifier functions for the %user * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI user_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< user_type, char > user_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const user_type& user () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ user_type& user (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void user (const user_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void user (::std::auto_ptr< user_type > p); //@} /** * @name requestId * * @brief Accessor and modifier functions for the %requestId * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI requestId_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< requestId_type, char > requestId_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const requestId_type& requestId () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ requestId_type& requestId (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void requestId (const requestId_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void requestId (::std::auto_ptr< requestId_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ AuditableEventType (const id_type&, const affectedObjects_type&, const eventType_type&, const timestamp_type&, const user_type&, const requestId_type&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes * (::std::auto_ptr version). * * This constructor will try to use the passed values directly * instead of making copies. */ AuditableEventType (const id_type&, ::std::auto_ptr< affectedObjects_type >, const eventType_type&, const timestamp_type&, const user_type&, const requestId_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ AuditableEventType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ AuditableEventType (const AuditableEventType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual AuditableEventType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ AuditableEventType& operator= (const AuditableEventType& x); //@} /** * @brief Destructor. */ virtual ~AuditableEventType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< affectedObjects_type > affectedObjects_; ::xsd::cxx::tree::one< eventType_type > eventType_; ::xsd::cxx::tree::one< timestamp_type > timestamp_; ::xsd::cxx::tree::one< user_type > user_; ::xsd::cxx::tree::one< requestId_type > requestId_; //@endcond }; /** * @brief Class corresponding to the %ClassificationType schema type. * * Classification is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * A Classification specifies references to two registry entrys. * The classifiedObject is id of the Object being classified. * The classificationNode is id of the ClassificationNode classying the * object * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ClassificationType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name classificationScheme * * @brief Accessor and modifier functions for the %classificationScheme * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI classificationScheme_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< classificationScheme_type > classificationScheme_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< classificationScheme_type, char > classificationScheme_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const classificationScheme_optional& classificationScheme () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ classificationScheme_optional& classificationScheme (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void classificationScheme (const classificationScheme_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void classificationScheme (const classificationScheme_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void classificationScheme (::std::auto_ptr< classificationScheme_type > p); //@} /** * @name classifiedObject * * @brief Accessor and modifier functions for the %classifiedObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI classifiedObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< classifiedObject_type, char > classifiedObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const classifiedObject_type& classifiedObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ classifiedObject_type& classifiedObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void classifiedObject (const classifiedObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void classifiedObject (::std::auto_ptr< classifiedObject_type > p); //@} /** * @name classificationNode * * @brief Accessor and modifier functions for the %classificationNode * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI classificationNode_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< classificationNode_type > classificationNode_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< classificationNode_type, char > classificationNode_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const classificationNode_optional& classificationNode () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ classificationNode_optional& classificationNode (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void classificationNode (const classificationNode_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void classificationNode (const classificationNode_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void classificationNode (::std::auto_ptr< classificationNode_type > p); //@} /** * @name nodeRepresentation * * @brief Accessor and modifier functions for the %nodeRepresentation * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName nodeRepresentation_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< nodeRepresentation_type > nodeRepresentation_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< nodeRepresentation_type, char > nodeRepresentation_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const nodeRepresentation_optional& nodeRepresentation () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ nodeRepresentation_optional& nodeRepresentation (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void nodeRepresentation (const nodeRepresentation_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void nodeRepresentation (const nodeRepresentation_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void nodeRepresentation (::std::auto_ptr< nodeRepresentation_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ClassificationType (const id_type&, const classifiedObject_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ClassificationType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ClassificationType (const ClassificationType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ClassificationType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ClassificationType& operator= (const ClassificationType& x); //@} /** * @brief Destructor. */ virtual ~ClassificationType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: classificationScheme_optional classificationScheme_; ::xsd::cxx::tree::one< classifiedObject_type > classifiedObject_; classificationNode_optional classificationNode_; nodeRepresentation_optional nodeRepresentation_; //@endcond }; /** * @brief Class corresponding to the %ClassificationNodeType schema type. * * ClassificationNode is the mapping of the same named interface in * ebRIM. * It extends RegistryObject. * ClassificationNode is used to submit a Classification tree to the * Registry. * The parent attribute is the id to the parent node. code is an optional * code value for a ClassificationNode * often defined by an external taxonomy (e.g. NAICS) * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ClassificationNodeType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name ClassificationNode * * @brief Accessor and modifier functions for the %ClassificationNode * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ClassificationNodeType ClassificationNode_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ClassificationNode_type > ClassificationNode_sequence; /** * @brief Element iterator type. */ typedef ClassificationNode_sequence::iterator ClassificationNode_iterator; /** * @brief Element constant iterator type. */ typedef ClassificationNode_sequence::const_iterator ClassificationNode_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ClassificationNode_type, char > ClassificationNode_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ClassificationNode_sequence& ClassificationNode () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ClassificationNode_sequence& ClassificationNode (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ClassificationNode (const ClassificationNode_sequence& s); //@} /** * @name parent * * @brief Accessor and modifier functions for the %parent * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI parent_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< parent_type > parent_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< parent_type, char > parent_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const parent_optional& parent () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ parent_optional& parent (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void parent (const parent_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void parent (const parent_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void parent (::std::auto_ptr< parent_type > p); //@} /** * @name code * * @brief Accessor and modifier functions for the %code * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName code_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< code_type > code_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< code_type, char > code_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const code_optional& code () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ code_optional& code (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void code (const code_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void code (const code_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void code (::std::auto_ptr< code_type > p); //@} /** * @name path * * @brief Accessor and modifier functions for the %path * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::string path_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< path_type > path_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< path_type, char > path_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const path_optional& path () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ path_optional& path (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void path (const path_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void path (const path_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void path (::std::auto_ptr< path_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ClassificationNodeType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ClassificationNodeType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ClassificationNodeType (const ClassificationNodeType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ClassificationNodeType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ClassificationNodeType& operator= (const ClassificationNodeType& x); //@} /** * @brief Destructor. */ virtual ~ClassificationNodeType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ClassificationNode_sequence ClassificationNode_; parent_optional parent_; code_optional code_; path_optional path_; //@endcond }; /** * @brief Class corresponding to the %ClassificationSchemeType schema type. * * ClassificationScheme is the mapping of the same named interface in * ebRIM. * It extends RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ClassificationSchemeType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name ClassificationNode * * @brief Accessor and modifier functions for the %ClassificationNode * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ClassificationNodeType ClassificationNode_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ClassificationNode_type > ClassificationNode_sequence; /** * @brief Element iterator type. */ typedef ClassificationNode_sequence::iterator ClassificationNode_iterator; /** * @brief Element constant iterator type. */ typedef ClassificationNode_sequence::const_iterator ClassificationNode_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ClassificationNode_type, char > ClassificationNode_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ClassificationNode_sequence& ClassificationNode () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ClassificationNode_sequence& ClassificationNode (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ClassificationNode (const ClassificationNode_sequence& s); //@} /** * @name isInternal * * @brief Accessor and modifier functions for the %isInternal * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::boolean isInternal_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< isInternal_type, char > isInternal_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const isInternal_type& isInternal () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ isInternal_type& isInternal (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void isInternal (const isInternal_type& x); //@} /** * @name nodeType * * @brief Accessor and modifier functions for the %nodeType * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI nodeType_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< nodeType_type, char > nodeType_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const nodeType_type& nodeType () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ nodeType_type& nodeType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void nodeType (const nodeType_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void nodeType (::std::auto_ptr< nodeType_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ClassificationSchemeType (const id_type&, const isInternal_type&, const nodeType_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ClassificationSchemeType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ClassificationSchemeType (const ClassificationSchemeType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ClassificationSchemeType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ClassificationSchemeType& operator= (const ClassificationSchemeType& x); //@} /** * @brief Destructor. */ virtual ~ClassificationSchemeType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ClassificationNode_sequence ClassificationNode_; ::xsd::cxx::tree::one< isInternal_type > isInternal_; ::xsd::cxx::tree::one< nodeType_type > nodeType_; //@endcond }; /** * @brief Class corresponding to the %ExternalIdentifierType schema type. * * ExternalIdentifier is the mapping of the same named interface in * ebRIM. * It extends RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ExternalIdentifierType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name registryObject * * @brief Accessor and modifier functions for the %registryObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI registryObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< registryObject_type, char > registryObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const registryObject_type& registryObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ registryObject_type& registryObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void registryObject (const registryObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void registryObject (::std::auto_ptr< registryObject_type > p); //@} /** * @name identificationScheme * * @brief Accessor and modifier functions for the %identificationScheme * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI identificationScheme_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< identificationScheme_type, char > identificationScheme_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const identificationScheme_type& identificationScheme () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ identificationScheme_type& identificationScheme (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void identificationScheme (const identificationScheme_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void identificationScheme (::std::auto_ptr< identificationScheme_type > p); //@} /** * @name value * * @brief Accessor and modifier functions for the %value * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName value_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< value_type, char > value_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const value_type& value () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ value_type& value (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void value (const value_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void value (::std::auto_ptr< value_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ExternalIdentifierType (const id_type&, const registryObject_type&, const identificationScheme_type&, const value_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ExternalIdentifierType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ExternalIdentifierType (const ExternalIdentifierType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ExternalIdentifierType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ExternalIdentifierType& operator= (const ExternalIdentifierType& x); //@} /** * @brief Destructor. */ virtual ~ExternalIdentifierType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< registryObject_type > registryObject_; ::xsd::cxx::tree::one< identificationScheme_type > identificationScheme_; ::xsd::cxx::tree::one< value_type > value_; //@endcond }; /** * @brief Class corresponding to the %ExternalLinkType schema type. * * ExternalLink is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ExternalLinkType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name externalURI * * @brief Accessor and modifier functions for the %externalURI * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri externalURI_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< externalURI_type, char > externalURI_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const externalURI_type& externalURI () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ externalURI_type& externalURI (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void externalURI (const externalURI_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void externalURI (::std::auto_ptr< externalURI_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ExternalLinkType (const id_type&, const externalURI_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ExternalLinkType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ExternalLinkType (const ExternalLinkType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ExternalLinkType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ExternalLinkType& operator= (const ExternalLinkType& x); //@} /** * @brief Destructor. */ virtual ~ExternalLinkType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< externalURI_type > externalURI_; //@endcond }; /** * @brief Class corresponding to the %ExtrinsicObjectType schema type. * * ExtrinsicObject is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ExtrinsicObjectType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name ContentVersionInfo * * @brief Accessor and modifier functions for the %ContentVersionInfo * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::VersionInfoType ContentVersionInfo_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< ContentVersionInfo_type > ContentVersionInfo_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ContentVersionInfo_type, char > ContentVersionInfo_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const ContentVersionInfo_optional& ContentVersionInfo () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ ContentVersionInfo_optional& ContentVersionInfo (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void ContentVersionInfo (const ContentVersionInfo_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void ContentVersionInfo (const ContentVersionInfo_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void ContentVersionInfo (::std::auto_ptr< ContentVersionInfo_type > p); //@} /** * @name mimeType * * @brief Accessor and modifier functions for the %mimeType * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName mimeType_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< mimeType_type, char > mimeType_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const mimeType_type& mimeType () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ mimeType_type& mimeType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void mimeType (const mimeType_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void mimeType (::std::auto_ptr< mimeType_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const mimeType_type& mimeType_default_value (); //@} /** * @name isOpaque * * @brief Accessor and modifier functions for the %isOpaque * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::boolean isOpaque_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< isOpaque_type, char > isOpaque_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const isOpaque_type& isOpaque () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ isOpaque_type& isOpaque (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void isOpaque (const isOpaque_type& x); /** * @brief Return the default value for the attribute. * * @return The attribute's default value. */ static isOpaque_type isOpaque_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ExtrinsicObjectType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ExtrinsicObjectType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ExtrinsicObjectType (const ExtrinsicObjectType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ExtrinsicObjectType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ExtrinsicObjectType& operator= (const ExtrinsicObjectType& x); //@} /** * @brief Destructor. */ virtual ~ExtrinsicObjectType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ContentVersionInfo_optional ContentVersionInfo_; ::xsd::cxx::tree::one< mimeType_type > mimeType_; static const mimeType_type mimeType_default_value_; ::xsd::cxx::tree::one< isOpaque_type > isOpaque_; //@endcond }; /** * @brief Class corresponding to the %OrganizationType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED OrganizationType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name Address * * @brief Accessor and modifier functions for the %Address * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::PostalAddressType Address_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Address_type > Address_sequence; /** * @brief Element iterator type. */ typedef Address_sequence::iterator Address_iterator; /** * @brief Element constant iterator type. */ typedef Address_sequence::const_iterator Address_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Address_type, char > Address_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Address_sequence& Address () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Address_sequence& Address (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Address (const Address_sequence& s); //@} /** * @name TelephoneNumber * * @brief Accessor and modifier functions for the %TelephoneNumber * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::TelephoneNumberType TelephoneNumber_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< TelephoneNumber_type > TelephoneNumber_sequence; /** * @brief Element iterator type. */ typedef TelephoneNumber_sequence::iterator TelephoneNumber_iterator; /** * @brief Element constant iterator type. */ typedef TelephoneNumber_sequence::const_iterator TelephoneNumber_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< TelephoneNumber_type, char > TelephoneNumber_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const TelephoneNumber_sequence& TelephoneNumber () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ TelephoneNumber_sequence& TelephoneNumber (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void TelephoneNumber (const TelephoneNumber_sequence& s); //@} /** * @name EmailAddress * * @brief Accessor and modifier functions for the %EmailAddress * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::EmailAddressType EmailAddress_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< EmailAddress_type > EmailAddress_sequence; /** * @brief Element iterator type. */ typedef EmailAddress_sequence::iterator EmailAddress_iterator; /** * @brief Element constant iterator type. */ typedef EmailAddress_sequence::const_iterator EmailAddress_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< EmailAddress_type, char > EmailAddress_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const EmailAddress_sequence& EmailAddress () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ EmailAddress_sequence& EmailAddress (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void EmailAddress (const EmailAddress_sequence& s); //@} /** * @name parent * * @brief Accessor and modifier functions for the %parent * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI parent_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< parent_type > parent_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< parent_type, char > parent_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const parent_optional& parent () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ parent_optional& parent (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void parent (const parent_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void parent (const parent_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void parent (::std::auto_ptr< parent_type > p); //@} /** * @name primaryContact * * @brief Accessor and modifier functions for the %primaryContact * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI primaryContact_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< primaryContact_type > primaryContact_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< primaryContact_type, char > primaryContact_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const primaryContact_optional& primaryContact () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ primaryContact_optional& primaryContact (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void primaryContact (const primaryContact_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void primaryContact (const primaryContact_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void primaryContact (::std::auto_ptr< primaryContact_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ OrganizationType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ OrganizationType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ OrganizationType (const OrganizationType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual OrganizationType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ OrganizationType& operator= (const OrganizationType& x); //@} /** * @brief Destructor. */ virtual ~OrganizationType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Address_sequence Address_; TelephoneNumber_sequence TelephoneNumber_; EmailAddress_sequence EmailAddress_; parent_optional parent_; primaryContact_optional primaryContact_; //@endcond }; /** * @brief Class corresponding to the %PersonNameType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED PersonNameType: public ::xml_schema::type { public: /** * @name firstName * * @brief Accessor and modifier functions for the %firstName * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName firstName_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< firstName_type > firstName_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< firstName_type, char > firstName_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const firstName_optional& firstName () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ firstName_optional& firstName (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void firstName (const firstName_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void firstName (const firstName_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void firstName (::std::auto_ptr< firstName_type > p); //@} /** * @name middleName * * @brief Accessor and modifier functions for the %middleName * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName middleName_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< middleName_type > middleName_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< middleName_type, char > middleName_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const middleName_optional& middleName () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ middleName_optional& middleName (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void middleName (const middleName_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void middleName (const middleName_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void middleName (::std::auto_ptr< middleName_type > p); //@} /** * @name lastName * * @brief Accessor and modifier functions for the %lastName * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName lastName_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< lastName_type > lastName_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< lastName_type, char > lastName_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const lastName_optional& lastName () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ lastName_optional& lastName (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void lastName (const lastName_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void lastName (const lastName_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void lastName (::std::auto_ptr< lastName_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ PersonNameType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ PersonNameType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ PersonNameType (const PersonNameType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual PersonNameType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ PersonNameType& operator= (const PersonNameType& x); //@} /** * @brief Destructor. */ virtual ~PersonNameType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: firstName_optional firstName_; middleName_optional middleName_; lastName_optional lastName_; //@endcond }; /** * @brief Class corresponding to the %EmailAddressType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED EmailAddressType: public ::xml_schema::type { public: /** * @name address * * @brief Accessor and modifier functions for the %address * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName address_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< address_type, char > address_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const address_type& address () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ address_type& address (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void address (const address_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void address (::std::auto_ptr< address_type > p); //@} /** * @name type * * @brief Accessor and modifier functions for the %type * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String32 type_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< type_type > type_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< type_type, char > type_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const type_optional& type () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ type_optional& type (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void type (const type_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void type (const type_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void type (::std::auto_ptr< type_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ EmailAddressType (const address_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ EmailAddressType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ EmailAddressType (const EmailAddressType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual EmailAddressType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ EmailAddressType& operator= (const EmailAddressType& x); //@} /** * @brief Destructor. */ virtual ~EmailAddressType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< address_type > address_; type_optional type_; //@endcond }; /** * @brief Class corresponding to the %PostalAddressType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED PostalAddressType: public ::xml_schema::type { public: /** * @name city * * @brief Accessor and modifier functions for the %city * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName city_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< city_type > city_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< city_type, char > city_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const city_optional& city () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ city_optional& city (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void city (const city_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void city (const city_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void city (::std::auto_ptr< city_type > p); //@} /** * @name country * * @brief Accessor and modifier functions for the %country * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName country_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< country_type > country_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< country_type, char > country_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const country_optional& country () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ country_optional& country (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void country (const country_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void country (const country_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void country (::std::auto_ptr< country_type > p); //@} /** * @name postalCode * * @brief Accessor and modifier functions for the %postalCode * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName postalCode_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< postalCode_type > postalCode_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< postalCode_type, char > postalCode_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const postalCode_optional& postalCode () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ postalCode_optional& postalCode (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void postalCode (const postalCode_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void postalCode (const postalCode_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void postalCode (::std::auto_ptr< postalCode_type > p); //@} /** * @name stateOrProvince * * @brief Accessor and modifier functions for the %stateOrProvince * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName stateOrProvince_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< stateOrProvince_type > stateOrProvince_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< stateOrProvince_type, char > stateOrProvince_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const stateOrProvince_optional& stateOrProvince () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ stateOrProvince_optional& stateOrProvince (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void stateOrProvince (const stateOrProvince_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void stateOrProvince (const stateOrProvince_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void stateOrProvince (::std::auto_ptr< stateOrProvince_type > p); //@} /** * @name street * * @brief Accessor and modifier functions for the %street * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName street_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< street_type > street_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< street_type, char > street_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const street_optional& street () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ street_optional& street (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void street (const street_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void street (const street_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void street (::std::auto_ptr< street_type > p); //@} /** * @name streetNumber * * @brief Accessor and modifier functions for the %streetNumber * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String32 streetNumber_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< streetNumber_type > streetNumber_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< streetNumber_type, char > streetNumber_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const streetNumber_optional& streetNumber () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ streetNumber_optional& streetNumber (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void streetNumber (const streetNumber_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void streetNumber (const streetNumber_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void streetNumber (::std::auto_ptr< streetNumber_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ PostalAddressType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ PostalAddressType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ PostalAddressType (const PostalAddressType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual PostalAddressType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ PostalAddressType& operator= (const PostalAddressType& x); //@} /** * @brief Destructor. */ virtual ~PostalAddressType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: city_optional city_; country_optional country_; postalCode_optional postalCode_; stateOrProvince_optional stateOrProvince_; street_optional street_; streetNumber_optional streetNumber_; //@endcond }; /** * @brief Class corresponding to the %VersionInfoType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED VersionInfoType: public ::xml_schema::type { public: /** * @name versionName * * @brief Accessor and modifier functions for the %versionName * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String16 versionName_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< versionName_type, char > versionName_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const versionName_type& versionName () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ versionName_type& versionName (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void versionName (const versionName_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void versionName (::std::auto_ptr< versionName_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const versionName_type& versionName_default_value (); //@} /** * @name comment * * @brief Accessor and modifier functions for the %comment * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::string comment_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< comment_type > comment_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< comment_type, char > comment_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const comment_optional& comment () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ comment_optional& comment (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void comment (const comment_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void comment (const comment_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void comment (::std::auto_ptr< comment_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ VersionInfoType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ VersionInfoType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ VersionInfoType (const VersionInfoType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual VersionInfoType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ VersionInfoType& operator= (const VersionInfoType& x); //@} /** * @brief Destructor. */ virtual ~VersionInfoType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< versionName_type > versionName_; static const versionName_type versionName_default_value_; comment_optional comment_; //@endcond }; /** * @brief Class corresponding to the %RegistryPackageType schema type. * * RegistryPackage is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * A RegistryPackage is a named collection of objects. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED RegistryPackageType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name RegistryObjectList * * @brief Accessor and modifier functions for the %RegistryObjectList * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::RegistryObjectListType RegistryObjectList_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< RegistryObjectList_type > RegistryObjectList_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< RegistryObjectList_type, char > RegistryObjectList_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const RegistryObjectList_optional& RegistryObjectList () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ RegistryObjectList_optional& RegistryObjectList (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void RegistryObjectList (const RegistryObjectList_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void RegistryObjectList (const RegistryObjectList_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void RegistryObjectList (::std::auto_ptr< RegistryObjectList_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ RegistryPackageType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ RegistryPackageType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ RegistryPackageType (const RegistryPackageType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual RegistryPackageType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ RegistryPackageType& operator= (const RegistryPackageType& x); //@} /** * @brief Destructor. */ virtual ~RegistryPackageType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: RegistryObjectList_optional RegistryObjectList_; //@endcond }; /** * @brief Class corresponding to the %ServiceType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ServiceType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name ServiceBinding * * @brief Accessor and modifier functions for the %ServiceBinding * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ServiceBindingType ServiceBinding_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ServiceBinding_type > ServiceBinding_sequence; /** * @brief Element iterator type. */ typedef ServiceBinding_sequence::iterator ServiceBinding_iterator; /** * @brief Element constant iterator type. */ typedef ServiceBinding_sequence::const_iterator ServiceBinding_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ServiceBinding_type, char > ServiceBinding_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ServiceBinding_sequence& ServiceBinding () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ServiceBinding_sequence& ServiceBinding (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ServiceBinding (const ServiceBinding_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ServiceType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ServiceType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ServiceType (const ServiceType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ServiceType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ServiceType& operator= (const ServiceType& x); //@} /** * @brief Destructor. */ virtual ~ServiceType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ServiceBinding_sequence ServiceBinding_; //@endcond }; /** * @brief Class corresponding to the %ServiceBindingType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ServiceBindingType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name SpecificationLink * * @brief Accessor and modifier functions for the %SpecificationLink * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::SpecificationLinkType SpecificationLink_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< SpecificationLink_type > SpecificationLink_sequence; /** * @brief Element iterator type. */ typedef SpecificationLink_sequence::iterator SpecificationLink_iterator; /** * @brief Element constant iterator type. */ typedef SpecificationLink_sequence::const_iterator SpecificationLink_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< SpecificationLink_type, char > SpecificationLink_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const SpecificationLink_sequence& SpecificationLink () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ SpecificationLink_sequence& SpecificationLink (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void SpecificationLink (const SpecificationLink_sequence& s); //@} /** * @name service * * @brief Accessor and modifier functions for the %service * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI service_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< service_type, char > service_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const service_type& service () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ service_type& service (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void service (const service_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void service (::std::auto_ptr< service_type > p); //@} /** * @name accessURI * * @brief Accessor and modifier functions for the %accessURI * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri accessURI_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< accessURI_type > accessURI_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< accessURI_type, char > accessURI_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const accessURI_optional& accessURI () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ accessURI_optional& accessURI (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void accessURI (const accessURI_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void accessURI (const accessURI_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void accessURI (::std::auto_ptr< accessURI_type > p); //@} /** * @name targetBinding * * @brief Accessor and modifier functions for the %targetBinding * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI targetBinding_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< targetBinding_type > targetBinding_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< targetBinding_type, char > targetBinding_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const targetBinding_optional& targetBinding () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ targetBinding_optional& targetBinding (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void targetBinding (const targetBinding_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void targetBinding (const targetBinding_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void targetBinding (::std::auto_ptr< targetBinding_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ServiceBindingType (const id_type&, const service_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ServiceBindingType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ServiceBindingType (const ServiceBindingType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ServiceBindingType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ ServiceBindingType& operator= (const ServiceBindingType& x); //@} /** * @brief Destructor. */ virtual ~ServiceBindingType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: SpecificationLink_sequence SpecificationLink_; ::xsd::cxx::tree::one< service_type > service_; accessURI_optional accessURI_; targetBinding_optional targetBinding_; //@endcond }; /** * @brief Class corresponding to the %SpecificationLinkType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED SpecificationLinkType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name UsageDescription * * @brief Accessor and modifier functions for the %UsageDescription * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::InternationalStringType UsageDescription_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< UsageDescription_type > UsageDescription_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< UsageDescription_type, char > UsageDescription_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const UsageDescription_optional& UsageDescription () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ UsageDescription_optional& UsageDescription (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void UsageDescription (const UsageDescription_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void UsageDescription (const UsageDescription_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void UsageDescription (::std::auto_ptr< UsageDescription_type > p); //@} /** * @name UsageParameter * * @brief Accessor and modifier functions for the %UsageParameter * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::FreeFormText UsageParameter_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< UsageParameter_type > UsageParameter_sequence; /** * @brief Element iterator type. */ typedef UsageParameter_sequence::iterator UsageParameter_iterator; /** * @brief Element constant iterator type. */ typedef UsageParameter_sequence::const_iterator UsageParameter_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< UsageParameter_type, char > UsageParameter_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const UsageParameter_sequence& UsageParameter () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ UsageParameter_sequence& UsageParameter (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void UsageParameter (const UsageParameter_sequence& s); //@} /** * @name serviceBinding * * @brief Accessor and modifier functions for the %serviceBinding * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI serviceBinding_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< serviceBinding_type, char > serviceBinding_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const serviceBinding_type& serviceBinding () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ serviceBinding_type& serviceBinding (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void serviceBinding (const serviceBinding_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void serviceBinding (::std::auto_ptr< serviceBinding_type > p); //@} /** * @name specificationObject * * @brief Accessor and modifier functions for the %specificationObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI specificationObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< specificationObject_type, char > specificationObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const specificationObject_type& specificationObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ specificationObject_type& specificationObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void specificationObject (const specificationObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void specificationObject (::std::auto_ptr< specificationObject_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ SpecificationLinkType (const id_type&, const serviceBinding_type&, const specificationObject_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ SpecificationLinkType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ SpecificationLinkType (const SpecificationLinkType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual SpecificationLinkType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ SpecificationLinkType& operator= (const SpecificationLinkType& x); //@} /** * @brief Destructor. */ virtual ~SpecificationLinkType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: UsageDescription_optional UsageDescription_; UsageParameter_sequence UsageParameter_; ::xsd::cxx::tree::one< serviceBinding_type > serviceBinding_; ::xsd::cxx::tree::one< specificationObject_type > specificationObject_; //@endcond }; /** * @brief Class corresponding to the %TelephoneNumberType schema type. * * TelephoneNumber is the mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED TelephoneNumberType: public ::xml_schema::type { public: /** * @name areaCode * * @brief Accessor and modifier functions for the %areaCode * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String8 areaCode_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< areaCode_type > areaCode_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< areaCode_type, char > areaCode_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const areaCode_optional& areaCode () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ areaCode_optional& areaCode (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void areaCode (const areaCode_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void areaCode (const areaCode_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void areaCode (::std::auto_ptr< areaCode_type > p); //@} /** * @name countryCode * * @brief Accessor and modifier functions for the %countryCode * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String8 countryCode_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< countryCode_type > countryCode_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< countryCode_type, char > countryCode_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const countryCode_optional& countryCode () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ countryCode_optional& countryCode (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void countryCode (const countryCode_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void countryCode (const countryCode_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void countryCode (::std::auto_ptr< countryCode_type > p); //@} /** * @name extension * * @brief Accessor and modifier functions for the %extension * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String8 extension_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< extension_type > extension_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< extension_type, char > extension_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const extension_optional& extension () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ extension_optional& extension (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void extension (const extension_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void extension (const extension_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void extension (::std::auto_ptr< extension_type > p); //@} /** * @name number * * @brief Accessor and modifier functions for the %number * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String16 number_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< number_type > number_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< number_type, char > number_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const number_optional& number () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ number_optional& number (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void number (const number_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void number (const number_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void number (::std::auto_ptr< number_type > p); //@} /** * @name phoneType * * @brief Accessor and modifier functions for the %phoneType * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String32 phoneType_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< phoneType_type > phoneType_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< phoneType_type, char > phoneType_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const phoneType_optional& phoneType () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ phoneType_optional& phoneType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void phoneType (const phoneType_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void phoneType (const phoneType_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void phoneType (::std::auto_ptr< phoneType_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ TelephoneNumberType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ TelephoneNumberType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ TelephoneNumberType (const TelephoneNumberType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual TelephoneNumberType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ TelephoneNumberType& operator= (const TelephoneNumberType& x); //@} /** * @brief Destructor. */ virtual ~TelephoneNumberType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: areaCode_optional areaCode_; countryCode_optional countryCode_; extension_optional extension_; number_optional number_; phoneType_optional phoneType_; //@endcond }; /** * @brief Class corresponding to the %TelephoneNumberListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED TelephoneNumberListType: public ::xml_schema::type { public: /** * @name TelephoneNumber * * @brief Accessor and modifier functions for the %TelephoneNumber * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::TelephoneNumberType TelephoneNumber_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< TelephoneNumber_type > TelephoneNumber_sequence; /** * @brief Element iterator type. */ typedef TelephoneNumber_sequence::iterator TelephoneNumber_iterator; /** * @brief Element constant iterator type. */ typedef TelephoneNumber_sequence::const_iterator TelephoneNumber_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< TelephoneNumber_type, char > TelephoneNumber_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const TelephoneNumber_sequence& TelephoneNumber () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ TelephoneNumber_sequence& TelephoneNumber (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void TelephoneNumber (const TelephoneNumber_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ TelephoneNumberListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ TelephoneNumberListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ TelephoneNumberListType (const TelephoneNumberListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual TelephoneNumberListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ TelephoneNumberListType& operator= (const TelephoneNumberListType& x); //@} /** * @brief Destructor. */ virtual ~TelephoneNumberListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: TelephoneNumber_sequence TelephoneNumber_; //@endcond }; /** * @brief Class corresponding to the %PersonType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED PersonType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name Address * * @brief Accessor and modifier functions for the %Address * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::PostalAddressType Address_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Address_type > Address_sequence; /** * @brief Element iterator type. */ typedef Address_sequence::iterator Address_iterator; /** * @brief Element constant iterator type. */ typedef Address_sequence::const_iterator Address_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Address_type, char > Address_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Address_sequence& Address () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Address_sequence& Address (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Address (const Address_sequence& s); //@} /** * @name PersonName * * @brief Accessor and modifier functions for the %PersonName * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::PersonNameType PersonName_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< PersonName_type > PersonName_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< PersonName_type, char > PersonName_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const PersonName_optional& PersonName () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ PersonName_optional& PersonName (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void PersonName (const PersonName_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void PersonName (const PersonName_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void PersonName (::std::auto_ptr< PersonName_type > p); //@} /** * @name TelephoneNumber * * @brief Accessor and modifier functions for the %TelephoneNumber * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::TelephoneNumberType TelephoneNumber_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< TelephoneNumber_type > TelephoneNumber_sequence; /** * @brief Element iterator type. */ typedef TelephoneNumber_sequence::iterator TelephoneNumber_iterator; /** * @brief Element constant iterator type. */ typedef TelephoneNumber_sequence::const_iterator TelephoneNumber_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< TelephoneNumber_type, char > TelephoneNumber_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const TelephoneNumber_sequence& TelephoneNumber () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ TelephoneNumber_sequence& TelephoneNumber (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void TelephoneNumber (const TelephoneNumber_sequence& s); //@} /** * @name EmailAddress * * @brief Accessor and modifier functions for the %EmailAddress * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::EmailAddressType EmailAddress_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< EmailAddress_type > EmailAddress_sequence; /** * @brief Element iterator type. */ typedef EmailAddress_sequence::iterator EmailAddress_iterator; /** * @brief Element constant iterator type. */ typedef EmailAddress_sequence::const_iterator EmailAddress_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< EmailAddress_type, char > EmailAddress_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const EmailAddress_sequence& EmailAddress () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ EmailAddress_sequence& EmailAddress (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void EmailAddress (const EmailAddress_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ PersonType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ PersonType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ PersonType (const PersonType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual PersonType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ PersonType& operator= (const PersonType& x); //@} /** * @brief Destructor. */ virtual ~PersonType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Address_sequence Address_; PersonName_optional PersonName_; TelephoneNumber_sequence TelephoneNumber_; EmailAddress_sequence EmailAddress_; //@endcond }; /** * @brief Class corresponding to the %UserType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED UserType: public ::Jade::OpenGIS::regrep_3_0::PersonType { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ UserType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ UserType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ UserType (const UserType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual UserType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~UserType (); }; /** * @brief Class corresponding to the %RegistryType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED RegistryType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name operator * * @brief Accessor and modifier functions for the %operator * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI operator_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< operator_type, char > operator_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const operator_type& operator_ () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ operator_type& operator_ (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void operator_ (const operator_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void operator_ (::std::auto_ptr< operator_type > p); //@} /** * @name specificationVersion * * @brief Accessor and modifier functions for the %specificationVersion * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::string specificationVersion_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< specificationVersion_type, char > specificationVersion_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const specificationVersion_type& specificationVersion () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ specificationVersion_type& specificationVersion (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void specificationVersion (const specificationVersion_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void specificationVersion (::std::auto_ptr< specificationVersion_type > p); //@} /** * @name replicationSyncLatency * * @brief Accessor and modifier functions for the %replicationSyncLatency * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::duration replicationSyncLatency_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< replicationSyncLatency_type, char > replicationSyncLatency_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const replicationSyncLatency_type& replicationSyncLatency () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ replicationSyncLatency_type& replicationSyncLatency (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void replicationSyncLatency (const replicationSyncLatency_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void replicationSyncLatency (::std::auto_ptr< replicationSyncLatency_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const replicationSyncLatency_type& replicationSyncLatency_default_value (); //@} /** * @name catalogingLatency * * @brief Accessor and modifier functions for the %catalogingLatency * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::duration catalogingLatency_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< catalogingLatency_type, char > catalogingLatency_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const catalogingLatency_type& catalogingLatency () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ catalogingLatency_type& catalogingLatency (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void catalogingLatency (const catalogingLatency_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void catalogingLatency (::std::auto_ptr< catalogingLatency_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const catalogingLatency_type& catalogingLatency_default_value (); //@} /** * @name conformanceProfile * * @brief Accessor and modifier functions for the %conformanceProfile * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::conformanceProfile conformanceProfile_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< conformanceProfile_type, char > conformanceProfile_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const conformanceProfile_type& conformanceProfile () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ conformanceProfile_type& conformanceProfile (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void conformanceProfile (const conformanceProfile_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void conformanceProfile (::std::auto_ptr< conformanceProfile_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const conformanceProfile_type& conformanceProfile_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ RegistryType (const id_type&, const operator_type&, const specificationVersion_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ RegistryType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ RegistryType (const RegistryType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual RegistryType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ RegistryType& operator= (const RegistryType& x); //@} /** * @brief Destructor. */ virtual ~RegistryType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< operator_type > operator__; ::xsd::cxx::tree::one< specificationVersion_type > specificationVersion_; ::xsd::cxx::tree::one< replicationSyncLatency_type > replicationSyncLatency_; static const replicationSyncLatency_type replicationSyncLatency_default_value_; ::xsd::cxx::tree::one< catalogingLatency_type > catalogingLatency_; static const catalogingLatency_type catalogingLatency_default_value_; ::xsd::cxx::tree::one< conformanceProfile_type > conformanceProfile_; static const conformanceProfile_type conformanceProfile_default_value_; //@endcond }; /** * @brief Class corresponding to the %FederationType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED FederationType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name replicationSyncLatency * * @brief Accessor and modifier functions for the %replicationSyncLatency * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::duration replicationSyncLatency_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< replicationSyncLatency_type, char > replicationSyncLatency_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const replicationSyncLatency_type& replicationSyncLatency () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ replicationSyncLatency_type& replicationSyncLatency (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void replicationSyncLatency (const replicationSyncLatency_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void replicationSyncLatency (::std::auto_ptr< replicationSyncLatency_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const replicationSyncLatency_type& replicationSyncLatency_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ FederationType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ FederationType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ FederationType (const FederationType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual FederationType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ FederationType& operator= (const FederationType& x); //@} /** * @brief Destructor. */ virtual ~FederationType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< replicationSyncLatency_type > replicationSyncLatency_; static const replicationSyncLatency_type replicationSyncLatency_default_value_; //@endcond }; /** * @brief Class corresponding to the %AdhocQueryType schema type. * * A registry query. * A QueryExpression child element is not required when invoking a stored * query. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED AdhocQueryType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name QueryExpression * * @brief Accessor and modifier functions for the %QueryExpression * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::QueryExpressionType QueryExpression_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< QueryExpression_type > QueryExpression_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< QueryExpression_type, char > QueryExpression_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const QueryExpression_optional& QueryExpression () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ QueryExpression_optional& QueryExpression (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void QueryExpression (const QueryExpression_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void QueryExpression (const QueryExpression_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void QueryExpression (::std::auto_ptr< QueryExpression_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ AdhocQueryType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ AdhocQueryType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ AdhocQueryType (const AdhocQueryType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual AdhocQueryType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ AdhocQueryType& operator= (const AdhocQueryType& x); //@} /** * @brief Destructor. */ virtual ~AdhocQueryType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: QueryExpression_optional QueryExpression_; //@endcond }; /** * @brief Class corresponding to the %QueryExpressionType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED QueryExpressionType: public ::xml_schema::type { public: /** * @name any * * @brief Accessor and modifier functions for the any wildcard. */ //@{ /** * @brief DOM element optional container type. */ typedef ::xsd::cxx::tree::element_optional any_optional; /** * @brief Return a read-only (constant) reference to the wildcard * element container. * * @return A constant reference to the optional container. */ const any_optional& any () const; /** * @brief Return a read-write reference to the wildcard element * container. * * @return A reference to the optional container. */ any_optional& any (); /** * @brief Set the wildcard content. * * @param e A new element to set. * * This function makes a copy of its argument and sets it as * the new wildcard content. */ void any (const ::xercesc::DOMElement& e); /** * @brief Set the wildcard content without copying. * * @param p A new element to use. * * This function will use the passed element directly instead * of making a copy. For this to work the element should belong * to the DOM document associated with this instance. * * @see dom_document */ void any (::xercesc::DOMElement* p); /** * @brief Set the wildcard content. * * @param x An optional container with the new element to set. * * If the element is present in @a x then this function makes a * copy of this element and sets it as the new wildcard content. * Otherwise the element container is set the 'not present' state. */ void any (const any_optional& x); //@} /** * @name queryLanguage * * @brief Accessor and modifier functions for the %queryLanguage * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI queryLanguage_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< queryLanguage_type, char > queryLanguage_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const queryLanguage_type& queryLanguage () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ queryLanguage_type& queryLanguage (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void queryLanguage (const queryLanguage_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void queryLanguage (::std::auto_ptr< queryLanguage_type > p); //@} /** * @brief Return a read-only (constant) reference to the DOM * document associated with this instance. * * @return A constant reference to the DOM document. * * The DOM document returned by this function is used to store * the raw XML content corresponding to wildcards. */ const ::xercesc::DOMDocument& dom_document () const; /** * @brief Return a read-write reference to the DOM document * associated with this instance. * * @return A reference to the DOM document. * * The DOM document returned by this function is used to store * the raw XML content corresponding to wildcards. */ ::xercesc::DOMDocument& dom_document (); /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ QueryExpressionType (const queryLanguage_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ QueryExpressionType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ QueryExpressionType (const QueryExpressionType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual QueryExpressionType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ QueryExpressionType& operator= (const QueryExpressionType& x); //@} /** * @brief Destructor. */ virtual ~QueryExpressionType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xml_schema::dom::auto_ptr< ::xercesc::DOMDocument > dom_document_; any_optional any_; ::xsd::cxx::tree::one< queryLanguage_type > queryLanguage_; //@endcond }; /** * @brief Class corresponding to the %NotificationType schema type. * * Notification of registry events. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED NotificationType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name RegistryObjectList * * @brief Accessor and modifier functions for the %RegistryObjectList * required element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::RegistryObjectListType RegistryObjectList_type; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< RegistryObjectList_type, char > RegistryObjectList_traits; /** * @brief Return a read-only (constant) reference to the element. * * @return A constant reference to the element. */ const RegistryObjectList_type& RegistryObjectList () const; /** * @brief Return a read-write reference to the element. * * @return A reference to the element. */ RegistryObjectList_type& RegistryObjectList (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void RegistryObjectList (const RegistryObjectList_type& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void RegistryObjectList (::std::auto_ptr< RegistryObjectList_type > p); //@} /** * @name subscription * * @brief Accessor and modifier functions for the %subscription * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI subscription_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< subscription_type, char > subscription_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const subscription_type& subscription () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ subscription_type& subscription (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void subscription (const subscription_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void subscription (::std::auto_ptr< subscription_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ NotificationType (const id_type&, const RegistryObjectList_type&, const subscription_type&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes * (::std::auto_ptr version). * * This constructor will try to use the passed values directly * instead of making copies. */ NotificationType (const id_type&, ::std::auto_ptr< RegistryObjectList_type >, const subscription_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ NotificationType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ NotificationType (const NotificationType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual NotificationType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ NotificationType& operator= (const NotificationType& x); //@} /** * @brief Destructor. */ virtual ~NotificationType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< RegistryObjectList_type > RegistryObjectList_; ::xsd::cxx::tree::one< subscription_type > subscription_; //@endcond }; /** * @brief Class corresponding to the %SubscriptionType schema type. * * A Subscription for specified Events in an ebXML V3+ registry. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED SubscriptionType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name Action * * @brief Accessor and modifier functions for the %Action * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ActionType Action_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Action_type > Action_sequence; /** * @brief Element iterator type. */ typedef Action_sequence::iterator Action_iterator; /** * @brief Element constant iterator type. */ typedef Action_sequence::const_iterator Action_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Action_type, char > Action_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Action_sequence& Action () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Action_sequence& Action (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Action (const Action_sequence& s); //@} /** * @name selector * * @brief Accessor and modifier functions for the %selector * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI selector_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< selector_type, char > selector_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const selector_type& selector () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ selector_type& selector (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void selector (const selector_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void selector (::std::auto_ptr< selector_type > p); //@} /** * @name startTime * * @brief Accessor and modifier functions for the %startTime * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::date_time startTime_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< startTime_type > startTime_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< startTime_type, char > startTime_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const startTime_optional& startTime () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ startTime_optional& startTime (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void startTime (const startTime_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void startTime (const startTime_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void startTime (::std::auto_ptr< startTime_type > p); //@} /** * @name endTime * * @brief Accessor and modifier functions for the %endTime * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::date_time endTime_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< endTime_type > endTime_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< endTime_type, char > endTime_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const endTime_optional& endTime () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ endTime_optional& endTime (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void endTime (const endTime_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void endTime (const endTime_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void endTime (::std::auto_ptr< endTime_type > p); //@} /** * @name notificationInterval * * @brief Accessor and modifier functions for the %notificationInterval * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::duration notificationInterval_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< notificationInterval_type, char > notificationInterval_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const notificationInterval_type& notificationInterval () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ notificationInterval_type& notificationInterval (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void notificationInterval (const notificationInterval_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void notificationInterval (::std::auto_ptr< notificationInterval_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const notificationInterval_type& notificationInterval_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ SubscriptionType (const id_type&, const selector_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ SubscriptionType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ SubscriptionType (const SubscriptionType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual SubscriptionType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ SubscriptionType& operator= (const SubscriptionType& x); //@} /** * @brief Destructor. */ virtual ~SubscriptionType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Action_sequence Action_; ::xsd::cxx::tree::one< selector_type > selector_; startTime_optional startTime_; endTime_optional endTime_; ::xsd::cxx::tree::one< notificationInterval_type > notificationInterval_; static const notificationInterval_type notificationInterval_default_value_; //@endcond }; /** * @brief Class corresponding to the %ActionType schema type. * * Abstract Base type for all types of Actions. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ActionType: public ::xml_schema::type { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ActionType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ActionType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ActionType (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ActionType (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ActionType (const ActionType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ActionType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ActionType (); }; /** * @brief Class corresponding to the %NotifyActionType schema type. * * Abstract Base type for all types of Notify Actions * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED NotifyActionType: public ::Jade::OpenGIS::regrep_3_0::ActionType { public: /** * @name notificationOption * * @brief Accessor and modifier functions for the %notificationOption * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI notificationOption_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< notificationOption_type, char > notificationOption_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const notificationOption_type& notificationOption () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ notificationOption_type& notificationOption (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void notificationOption (const notificationOption_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void notificationOption (::std::auto_ptr< notificationOption_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const notificationOption_type& notificationOption_default_value (); //@} /** * @name endPoint * * @brief Accessor and modifier functions for the %endPoint * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri endPoint_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< endPoint_type, char > endPoint_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const endPoint_type& endPoint () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ endPoint_type& endPoint (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void endPoint (const endPoint_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void endPoint (::std::auto_ptr< endPoint_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ NotifyActionType (const endPoint_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ NotifyActionType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ NotifyActionType (const NotifyActionType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual NotifyActionType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Copy assignment operator. * * @param x An instance to make a copy of. * @return A reference to itself. * * For polymorphic object models use the @c _clone function instead. */ NotifyActionType& operator= (const NotifyActionType& x); //@} /** * @brief Destructor. */ virtual ~NotifyActionType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< notificationOption_type > notificationOption_; static const notificationOption_type notificationOption_default_value_; ::xsd::cxx::tree::one< endPoint_type > endPoint_; //@endcond }; /** * @brief Enumeration class corresponding to the %conformanceProfile * schema type. */ class JADE_OPENGIS_REGREP_3_0_SHARED conformanceProfile: public ::xml_schema::ncname { public: /** * @brief Underlying enum type. */ enum value { registryFull, registryLite }; /** * @brief Create an instance from the underlying enum value. * * @param v A enum value. */ conformanceProfile (value v); /** * @brief Create an instance from a C string. * * @param v A string value. */ conformanceProfile (const char* v); /** * @brief Create an instance from a string. * * @param v A string value. */ conformanceProfile (const ::std::string& v); /** * @brief Create an instance from the base value. * * @param v A base value. */ conformanceProfile (const ::xml_schema::ncname& v); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ conformanceProfile (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ conformanceProfile (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ conformanceProfile (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ conformanceProfile (const conformanceProfile& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual conformanceProfile* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Assign the underlying enum value. * * @param v A enum value. * @return A refernce to the instance. */ conformanceProfile& operator= (value v); /** * @brief Implicit conversion operator to the underlying * enum value. * * @return A enum value. */ virtual operator value () const { return _xsd_conformanceProfile_convert (); } //@cond protected: value _xsd_conformanceProfile_convert () const; public: static const char* const _xsd_conformanceProfile_literals_[2]; static const value _xsd_conformanceProfile_indexes_[2]; //@endcond }; } } } #include #include #include #include namespace Jade { namespace OpenGIS { namespace regrep_3_0 { /** * @name Parsing functions for the %RegistryPackage document root. */ //@{ /** * @brief Parse a URI or a local file. * * @param uri A URI or a local file name. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function uses exceptions to report parsing errors. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (const ::std::string& uri, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a URI or a local file with an error handler. * * @param uri A URI or a local file name. * @param eh An error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (const ::std::string& uri, ::xml_schema::error_handler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a URI or a local file with a Xerces-C++ DOM error * handler. * * @param uri A URI or a local file name. * @param eh A Xerces-C++ DOM error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (const ::std::string& uri, ::xercesc::DOMErrorHandler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream. * * @param is A standrad input stream. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function uses exceptions to report parsing errors. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with an error handler. * * @param is A standrad input stream. * @param eh An error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, ::xml_schema::error_handler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with a Xerces-C++ DOM error * handler. * * @param is A standrad input stream. * @param eh A Xerces-C++ DOM error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, ::xercesc::DOMErrorHandler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with a resource id. * * @param is A standrad input stream. * @param id A resource id. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * The resource id is used to identify the document being parsed in * diagnostics as well as to resolve relative paths. * * This function uses exceptions to report parsing errors. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, const ::std::string& id, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with a resource id and an * error handler. * * @param is A standrad input stream. * @param id A resource id. * @param eh An error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * The resource id is used to identify the document being parsed in * diagnostics as well as to resolve relative paths. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, const ::std::string& id, ::xml_schema::error_handler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with a resource id and a * Xerces-C++ DOM error handler. * * @param is A standrad input stream. * @param id A resource id. * @param eh A Xerces-C++ DOM error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * The resource id is used to identify the document being parsed in * diagnostics as well as to resolve relative paths. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, const ::std::string& id, ::xercesc::DOMErrorHandler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ input source. * * @param is A Xerces-C++ input source. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function uses exceptions to report parsing errors. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::xercesc::InputSource& is, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ input source with an error handler. * * @param is A Xerces-C++ input source. * @param eh An error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::xercesc::InputSource& is, ::xml_schema::error_handler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ input source with a Xerces-C++ DOM * error handler. * * @param is A Xerces-C++ input source. * @param eh A Xerces-C++ DOM error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::xercesc::InputSource& is, ::xercesc::DOMErrorHandler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ DOM document. * * @param d A Xerces-C++ DOM document. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (const ::xercesc::DOMDocument& d, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ DOM document. * * @param d A pointer to the Xerces-C++ DOM document. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function is normally used together with the keep_dom and * own_dom parsing flags to assign ownership of the DOM document * to the object model. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::xml_schema::dom::auto_ptr< ::xercesc::DOMDocument > d, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); //@} } } } #include #include #include #include #include namespace Jade { namespace OpenGIS { namespace regrep_3_0 { JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const referenceURI&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const referenceURI&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const referenceURI&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const String4&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const String4&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const String4&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const String8&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const String8&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const String8&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const String16&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const String16&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const String16&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const String32&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const String32&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const String32&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ShortName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const ShortName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const ShortName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const LongName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const LongName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const LongName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const FreeFormText&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const FreeFormText&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const FreeFormText&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const InternationalStringType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const LocalizedStringType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const SlotType1&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ValueListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const SlotListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const IdentifiableType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ObjectRefType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ObjectRefListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const RegistryObjectType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const RegistryObjectListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const AssociationType1&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const AuditableEventType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ClassificationType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ClassificationNodeType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ClassificationSchemeType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ExternalIdentifierType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ExternalLinkType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ExtrinsicObjectType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const OrganizationType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const PersonNameType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const EmailAddressType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const PostalAddressType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const VersionInfoType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const RegistryPackageType&); /** * @name Serialization functions for the %RegistryPackage document root. */ //@{ /** * @brief Serialize to a standard output stream. * * @param os A standrad output stream. * @param x An object model to serialize. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function uses exceptions to report serialization errors. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::std::ostream& os, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a standard output stream with an error handler. * * @param os A standrad output stream. * @param x An object model to serialize. * @param eh An error handler. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function reports serialization errors by calling the error * handler. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::std::ostream& os, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xml_schema::error_handler& eh, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a standard output stream with a Xerces-C++ DOM * error handler. * * @param os A standrad output stream. * @param x An object model to serialize. * @param eh A Xerces-C++ DOM error handler. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function reports serialization errors by calling the error * handler. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::std::ostream& os, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xercesc::DOMErrorHandler& eh, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a Xerces-C++ XML format target. * * @param ft A Xerces-C++ XML format target. * @param x An object model to serialize. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function uses exceptions to report serialization errors. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::xercesc::XMLFormatTarget& ft, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a Xerces-C++ XML format target with an error * handler. * * @param ft A Xerces-C++ XML format target. * @param x An object model to serialize. * @param eh An error handler. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function reports serialization errors by calling the error * handler. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::xercesc::XMLFormatTarget& ft, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xml_schema::error_handler& eh, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a Xerces-C++ XML format target with a * Xerces-C++ DOM error handler. * * @param ft A Xerces-C++ XML format target. * @param x An object model to serialize. * @param eh A Xerces-C++ DOM error handler. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function reports serialization errors by calling the error * handler. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::xercesc::XMLFormatTarget& ft, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xercesc::DOMErrorHandler& eh, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to an existing Xerces-C++ DOM document. * * @param d A Xerces-C++ DOM document. * @param x An object model to serialize. * @param f Serialization flags. * * Note that it is your responsibility to create the DOM document * with the correct root element as well as set the necessary * namespace mapping attributes. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::xercesc::DOMDocument& d, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xml_schema::flags f = 0); /** * @brief Serialize to a new Xerces-C++ DOM document. * * @param x An object model to serialize. * @param m A namespace information map. * @param f Serialization flags. * @return A pointer to the new Xerces-C++ DOM document. */ JADE_OPENGIS_REGREP_3_0_SHARED ::xml_schema::dom::auto_ptr< ::xercesc::DOMDocument > RegistryPackage (const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), ::xml_schema::flags f = 0); //@} JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ServiceType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ServiceBindingType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const SpecificationLinkType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const TelephoneNumberType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const TelephoneNumberListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const PersonType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const UserType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const RegistryType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const FederationType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const AdhocQueryType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const QueryExpressionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const NotificationType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const SubscriptionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ActionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const ActionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const ActionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const NotifyActionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const conformanceProfile&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const conformanceProfile&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const conformanceProfile&); } } } #include // Begin epilogue. // // // End epilogue. #endif // E__WORK_JSMOMS_JADE_JADE_OPEN_GIS_SCHEMAS_REGREP_3_0_RIM_H -------------- next part -------------- // Copyright (C) 2005-2010 Code Synthesis Tools CC // // This program was generated by CodeSynthesis XSD, an XML Schema // to C++ data binding compiler, in the Proprietary License mode. // You should have received a proprietary license from Code Synthesis // Tools CC prior to generating this code. See the license text for // conditions. // /** * @file * @brief Generated from rim.xsd. */ #ifndef E__WORK_JSMOMS_JADE_JADE_OPEN_GIS_SCHEMAS_REGREP_3_0_RIM_H #define E__WORK_JSMOMS_JADE_JADE_OPEN_GIS_SCHEMAS_REGREP_3_0_RIM_H // Begin prologue. // #include // // End prologue. #include #if (XSD_INT_VERSION != 3030000L) #error XSD runtime version mismatch #endif #include #ifndef XSD_USE_CHAR #define XSD_USE_CHAR #endif #ifndef XSD_CXX_TREE_USE_CHAR #define XSD_CXX_TREE_USE_CHAR #endif #include // Forward declarations. // namespace Jade { namespace OpenGIS { namespace regrep_3_0 { class referenceURI; class String4; class String8; class String16; class String32; class ShortName; class LongName; class FreeFormText; class InternationalStringType; class LocalizedStringType; class SlotType1; class ValueListType; class SlotListType; class IdentifiableType; class ObjectRefType; class ObjectRefListType; class RegistryObjectType; class RegistryObjectListType; class AssociationType1; class AuditableEventType; class ClassificationType; class ClassificationNodeType; class ClassificationSchemeType; class ExternalIdentifierType; class ExternalLinkType; class ExtrinsicObjectType; class OrganizationType; class PersonNameType; class EmailAddressType; class PostalAddressType; class VersionInfoType; class RegistryPackageType; class ServiceType; class ServiceBindingType; class SpecificationLinkType; class TelephoneNumberType; class TelephoneNumberListType; class PersonType; class UserType; class RegistryType; class FederationType; class AdhocQueryType; class QueryExpressionType; class NotificationType; class SubscriptionType; class ActionType; class NotifyActionType; class conformanceProfile; } } } #include // std::auto_ptr #include // std::numeric_limits #include // std::binary_search #include #include #include #include #include #include #include #include namespace Jade { namespace OpenGIS { /** * @brief C++ namespace for the %urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0 * schema namespace. */ namespace regrep_3_0 { /** * @brief Class corresponding to the %referenceURI schema type. * * referenceURI is used by reference attributes within RIM. * Each attribute of type referenceURI references a RegistryObject with * specified URI as id. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED referenceURI: public ::xml_schema::uri { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ referenceURI (const ::xml_schema::uri&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ referenceURI (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ referenceURI (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ referenceURI (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ referenceURI (const referenceURI& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual referenceURI* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~referenceURI (); }; /** * @brief Class corresponding to the %String4 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED String4: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ String4 (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ String4 (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ String4 (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ String4 (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String4 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String4 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String4 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ String4 (const String4& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual String4* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~String4 (); }; /** * @brief Class corresponding to the %String8 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED String8: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ String8 (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ String8 (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ String8 (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ String8 (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String8 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String8 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String8 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ String8 (const String8& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual String8* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~String8 (); }; /** * @brief Class corresponding to the %String16 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED String16: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ String16 (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ String16 (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ String16 (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ String16 (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String16 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String16 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String16 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ String16 (const String16& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual String16* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~String16 (); }; /** * @brief Class corresponding to the %String32 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED String32: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ String32 (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ String32 (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ String32 (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ String32 (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String32 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String32 (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ String32 (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ String32 (const String32& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual String32* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~String32 (); }; /** * @brief Class corresponding to the %ShortName schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ShortName: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ ShortName (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ ShortName (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ ShortName (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ShortName (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ShortName (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ShortName (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ShortName (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ShortName (const ShortName& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ShortName* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ShortName (); }; /** * @brief Class corresponding to the %LongName schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED LongName: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ LongName (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ LongName (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ LongName (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ LongName (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ LongName (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ LongName (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ LongName (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ LongName (const LongName& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual LongName* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~LongName (); }; /** * @brief Class corresponding to the %FreeFormText schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED FreeFormText: public ::xml_schema::string { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from initializers for required * elements and attributes. */ FreeFormText (); /** * @brief Create an instance from a C string and initializers * for required elements and attributes. */ FreeFormText (const char*); /** * @brief Create an instance from a string andinitializers * for required elements and attributes. */ FreeFormText (const ::std::string&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ FreeFormText (const ::xml_schema::string&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ FreeFormText (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ FreeFormText (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ FreeFormText (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ FreeFormText (const FreeFormText& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual FreeFormText* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~FreeFormText (); }; /** * @brief Class corresponding to the %InternationalStringType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED InternationalStringType: public ::xml_schema::type { public: /** * @name LocalizedString * * @brief Accessor and modifier functions for the %LocalizedString * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::LocalizedStringType LocalizedString_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< LocalizedString_type > LocalizedString_sequence; /** * @brief Element iterator type. */ typedef LocalizedString_sequence::iterator LocalizedString_iterator; /** * @brief Element constant iterator type. */ typedef LocalizedString_sequence::const_iterator LocalizedString_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< LocalizedString_type, char > LocalizedString_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const LocalizedString_sequence& LocalizedString () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ LocalizedString_sequence& LocalizedString (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void LocalizedString (const LocalizedString_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ InternationalStringType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ InternationalStringType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ InternationalStringType (const InternationalStringType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual InternationalStringType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~InternationalStringType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: LocalizedString_sequence LocalizedString_; //@endcond }; /** * @brief Class corresponding to the %LocalizedStringType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED LocalizedStringType: public ::xml_schema::type { public: /** * @name lang * * @brief Accessor and modifier functions for the %lang * optional attribute with a default value. * * Attempting to install the relevant ISO 2- and 3-letter * codes as the enumerated possible values is probably never * going to be a realistic possibility. See * RFC 3066 at http://www.ietf.org/rfc/rfc3066.txt and the IANA registry * at http://www.iana.org/assignments/lang-tag-apps.htm for * further information. * * The union allows for the 'un-declaration' of xml:lang with * the empty string. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::xml::lang lang_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< lang_type, char > lang_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const lang_type& lang () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ lang_type& lang (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void lang (const lang_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void lang (::std::auto_ptr< lang_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const lang_type& lang_default_value (); //@} /** * @name charset * * @brief Accessor and modifier functions for the %charset * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::simple_type charset_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< charset_type, char > charset_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const charset_type& charset () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ charset_type& charset (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void charset (const charset_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void charset (::std::auto_ptr< charset_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const charset_type& charset_default_value (); //@} /** * @name value * * @brief Accessor and modifier functions for the %value * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::FreeFormText value_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< value_type, char > value_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const value_type& value () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ value_type& value (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void value (const value_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void value (::std::auto_ptr< value_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ LocalizedStringType (const value_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ LocalizedStringType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ LocalizedStringType (const LocalizedStringType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual LocalizedStringType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~LocalizedStringType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< lang_type > lang_; static const lang_type lang_default_value_; ::xsd::cxx::tree::one< charset_type > charset_; static const charset_type charset_default_value_; ::xsd::cxx::tree::one< value_type > value_; //@endcond }; /** * @brief Class corresponding to the %SlotType1 schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED SlotType1: public ::xml_schema::type { public: /** * @name ValueList * * @brief Accessor and modifier functions for the %ValueList * required element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ValueListType ValueList_type; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ValueList_type, char > ValueList_traits; /** * @brief Return a read-only (constant) reference to the element. * * @return A constant reference to the element. */ const ValueList_type& ValueList () const; /** * @brief Return a read-write reference to the element. * * @return A reference to the element. */ ValueList_type& ValueList (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void ValueList (const ValueList_type& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void ValueList (::std::auto_ptr< ValueList_type > p); //@} /** * @name name * * @brief Accessor and modifier functions for the %name * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName name_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< name_type, char > name_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const name_type& name () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ name_type& name (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void name (const name_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void name (::std::auto_ptr< name_type > p); //@} /** * @name slotType * * @brief Accessor and modifier functions for the %slotType * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI slotType_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< slotType_type > slotType_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< slotType_type, char > slotType_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const slotType_optional& slotType () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ slotType_optional& slotType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void slotType (const slotType_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void slotType (const slotType_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void slotType (::std::auto_ptr< slotType_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ SlotType1 (const ValueList_type&, const name_type&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes * (auto_ptr version). * * This constructor will try to use the passed values directly * instead of making copies. */ SlotType1 (::std::auto_ptr< ValueList_type >&, const name_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ SlotType1 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ SlotType1 (const SlotType1& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual SlotType1* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~SlotType1 (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< ValueList_type > ValueList_; ::xsd::cxx::tree::one< name_type > name_; slotType_optional slotType_; //@endcond }; /** * @brief Class corresponding to the %ValueListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ValueListType: public ::xml_schema::type { public: /** * @name Value * * @brief Accessor and modifier functions for the %Value * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName Value_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Value_type > Value_sequence; /** * @brief Element iterator type. */ typedef Value_sequence::iterator Value_iterator; /** * @brief Element constant iterator type. */ typedef Value_sequence::const_iterator Value_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Value_type, char > Value_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Value_sequence& Value () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Value_sequence& Value (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Value (const Value_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ValueListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ValueListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ValueListType (const ValueListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ValueListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ValueListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Value_sequence Value_; //@endcond }; /** * @brief Class corresponding to the %SlotListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED SlotListType: public ::xml_schema::type { public: /** * @name Slot * * @brief Accessor and modifier functions for the %Slot * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::SlotType1 Slot_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Slot_type > Slot_sequence; /** * @brief Element iterator type. */ typedef Slot_sequence::iterator Slot_iterator; /** * @brief Element constant iterator type. */ typedef Slot_sequence::const_iterator Slot_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Slot_type, char > Slot_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Slot_sequence& Slot () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Slot_sequence& Slot (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Slot (const Slot_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ SlotListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ SlotListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ SlotListType (const SlotListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual SlotListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~SlotListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Slot_sequence Slot_; //@endcond }; /** * @brief Class corresponding to the %IdentifiableType schema type. * * Common base type for all types that have unique identity. * If id is provided and is not in proper URN syntax then it is used for * linkage within document and is ignored by the registry. In this case * the * registry generates a UUID URN for id attribute. * id must not be null when object is retrieved from the registry. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED IdentifiableType: public ::xml_schema::type { public: /** * @name Slot * * @brief Accessor and modifier functions for the %Slot * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::SlotType1 Slot_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Slot_type > Slot_sequence; /** * @brief Element iterator type. */ typedef Slot_sequence::iterator Slot_iterator; /** * @brief Element constant iterator type. */ typedef Slot_sequence::const_iterator Slot_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Slot_type, char > Slot_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Slot_sequence& Slot () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Slot_sequence& Slot (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Slot (const Slot_sequence& s); //@} /** * @name id * * @brief Accessor and modifier functions for the %id * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri id_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< id_type, char > id_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const id_type& id () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ id_type& id (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void id (const id_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void id (::std::auto_ptr< id_type > p); //@} /** * @name home * * @brief Accessor and modifier functions for the %home * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri home_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< home_type > home_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< home_type, char > home_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const home_optional& home () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ home_optional& home (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void home (const home_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void home (const home_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void home (::std::auto_ptr< home_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ IdentifiableType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ IdentifiableType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ IdentifiableType (const IdentifiableType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual IdentifiableType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~IdentifiableType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Slot_sequence Slot_; ::xsd::cxx::tree::one< id_type > id_; home_optional home_; //@endcond }; /** * @brief Class corresponding to the %ObjectRefType schema type. * * Use to reference an Object by its id. * Specifies the id attribute of the object as its id attribute. * id attribute in ObjectAttributes is exactly the same syntax and * semantics as * id attribute in RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ObjectRefType: public ::Jade::OpenGIS::regrep_3_0::IdentifiableType { public: /** * @name createReplica * * @brief Accessor and modifier functions for the %createReplica * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::boolean createReplica_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< createReplica_type, char > createReplica_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const createReplica_type& createReplica () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ createReplica_type& createReplica (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void createReplica (const createReplica_type& x); /** * @brief Return the default value for the attribute. * * @return The attribute's default value. */ static createReplica_type createReplica_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ObjectRefType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ObjectRefType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ObjectRefType (const ObjectRefType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ObjectRefType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ObjectRefType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< createReplica_type > createReplica_; //@endcond }; /** * @brief Class corresponding to the %ObjectRefListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ObjectRefListType: public ::xml_schema::type { public: /** * @name ObjectRef * * @brief Accessor and modifier functions for the %ObjectRef * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ObjectRefType ObjectRef_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ObjectRef_type > ObjectRef_sequence; /** * @brief Element iterator type. */ typedef ObjectRef_sequence::iterator ObjectRef_iterator; /** * @brief Element constant iterator type. */ typedef ObjectRef_sequence::const_iterator ObjectRef_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ObjectRef_type, char > ObjectRef_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ObjectRef_sequence& ObjectRef () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ObjectRef_sequence& ObjectRef (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ObjectRef (const ObjectRef_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ObjectRefListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ObjectRefListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ObjectRefListType (const ObjectRefListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ObjectRefListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ObjectRefListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ObjectRef_sequence ObjectRef_; //@endcond }; /** * @brief Class corresponding to the %RegistryObjectType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED RegistryObjectType: public ::Jade::OpenGIS::regrep_3_0::IdentifiableType { public: /** * @name Name * * @brief Accessor and modifier functions for the %Name * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::InternationalStringType Name_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< Name_type > Name_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Name_type, char > Name_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const Name_optional& Name () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ Name_optional& Name (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void Name (const Name_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void Name (const Name_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void Name (::std::auto_ptr< Name_type > p); //@} /** * @name Description * * @brief Accessor and modifier functions for the %Description * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::InternationalStringType Description_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< Description_type > Description_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Description_type, char > Description_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const Description_optional& Description () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ Description_optional& Description (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void Description (const Description_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void Description (const Description_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void Description (::std::auto_ptr< Description_type > p); //@} /** * @name VersionInfo * * @brief Accessor and modifier functions for the %VersionInfo * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::VersionInfoType VersionInfo_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< VersionInfo_type > VersionInfo_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< VersionInfo_type, char > VersionInfo_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const VersionInfo_optional& VersionInfo () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ VersionInfo_optional& VersionInfo (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void VersionInfo (const VersionInfo_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void VersionInfo (const VersionInfo_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void VersionInfo (::std::auto_ptr< VersionInfo_type > p); //@} /** * @name Classification * * @brief Accessor and modifier functions for the %Classification * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ClassificationType Classification_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Classification_type > Classification_sequence; /** * @brief Element iterator type. */ typedef Classification_sequence::iterator Classification_iterator; /** * @brief Element constant iterator type. */ typedef Classification_sequence::const_iterator Classification_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Classification_type, char > Classification_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Classification_sequence& Classification () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Classification_sequence& Classification (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Classification (const Classification_sequence& s); //@} /** * @name ExternalIdentifier * * @brief Accessor and modifier functions for the %ExternalIdentifier * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ExternalIdentifierType ExternalIdentifier_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ExternalIdentifier_type > ExternalIdentifier_sequence; /** * @brief Element iterator type. */ typedef ExternalIdentifier_sequence::iterator ExternalIdentifier_iterator; /** * @brief Element constant iterator type. */ typedef ExternalIdentifier_sequence::const_iterator ExternalIdentifier_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ExternalIdentifier_type, char > ExternalIdentifier_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ExternalIdentifier_sequence& ExternalIdentifier () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ExternalIdentifier_sequence& ExternalIdentifier (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ExternalIdentifier (const ExternalIdentifier_sequence& s); //@} /** * @name lid * * @brief Accessor and modifier functions for the %lid * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri lid_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< lid_type > lid_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< lid_type, char > lid_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const lid_optional& lid () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ lid_optional& lid (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void lid (const lid_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void lid (const lid_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void lid (::std::auto_ptr< lid_type > p); //@} /** * @name objectType * * @brief Accessor and modifier functions for the %objectType * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI objectType_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< objectType_type > objectType_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< objectType_type, char > objectType_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const objectType_optional& objectType () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ objectType_optional& objectType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void objectType (const objectType_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void objectType (const objectType_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void objectType (::std::auto_ptr< objectType_type > p); //@} /** * @name status * * @brief Accessor and modifier functions for the %status * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI status_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< status_type > status_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< status_type, char > status_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const status_optional& status () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ status_optional& status (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void status (const status_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void status (const status_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void status (::std::auto_ptr< status_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ RegistryObjectType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ RegistryObjectType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ RegistryObjectType (const RegistryObjectType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual RegistryObjectType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~RegistryObjectType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Name_optional Name_; Description_optional Description_; VersionInfo_optional VersionInfo_; Classification_sequence Classification_; ExternalIdentifier_sequence ExternalIdentifier_; lid_optional lid_; objectType_optional objectType_; status_optional status_; //@endcond }; /** * @brief Class corresponding to the %RegistryObjectListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED RegistryObjectListType: public ::xml_schema::type { public: /** * @name Identifiable * * @brief Accessor and modifier functions for the %Identifiable * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::IdentifiableType Identifiable_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Identifiable_type > Identifiable_sequence; /** * @brief Element iterator type. */ typedef Identifiable_sequence::iterator Identifiable_iterator; /** * @brief Element constant iterator type. */ typedef Identifiable_sequence::const_iterator Identifiable_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Identifiable_type, char > Identifiable_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Identifiable_sequence& Identifiable () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Identifiable_sequence& Identifiable (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Identifiable (const Identifiable_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ RegistryObjectListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ RegistryObjectListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ RegistryObjectListType (const RegistryObjectListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual RegistryObjectListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~RegistryObjectListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Identifiable_sequence Identifiable_; //@endcond }; /** * @brief Class corresponding to the %AssociationType1 schema type. * * Association is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * An Association specifies references to two previously submitted * registry entrys. * The sourceObject is id of the sourceObject in association * The targetObject is id of the targetObject in association * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED AssociationType1: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name associationType * * @brief Accessor and modifier functions for the %associationType * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI associationType_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< associationType_type, char > associationType_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const associationType_type& associationType () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ associationType_type& associationType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void associationType (const associationType_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void associationType (::std::auto_ptr< associationType_type > p); //@} /** * @name sourceObject * * @brief Accessor and modifier functions for the %sourceObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI sourceObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< sourceObject_type, char > sourceObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const sourceObject_type& sourceObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ sourceObject_type& sourceObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void sourceObject (const sourceObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void sourceObject (::std::auto_ptr< sourceObject_type > p); //@} /** * @name targetObject * * @brief Accessor and modifier functions for the %targetObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI targetObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< targetObject_type, char > targetObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const targetObject_type& targetObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ targetObject_type& targetObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void targetObject (const targetObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void targetObject (::std::auto_ptr< targetObject_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ AssociationType1 (const id_type&, const associationType_type&, const sourceObject_type&, const targetObject_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ AssociationType1 (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ AssociationType1 (const AssociationType1& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual AssociationType1* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~AssociationType1 (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< associationType_type > associationType_; ::xsd::cxx::tree::one< sourceObject_type > sourceObject_; ::xsd::cxx::tree::one< targetObject_type > targetObject_; //@endcond }; /** * @brief Class corresponding to the %AuditableEventType schema type. * * An Event that forms an audit trail in ebXML Registry. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED AuditableEventType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name affectedObjects * * @brief Accessor and modifier functions for the %affectedObjects * required element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ObjectRefListType affectedObjects_type; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< affectedObjects_type, char > affectedObjects_traits; /** * @brief Return a read-only (constant) reference to the element. * * @return A constant reference to the element. */ const affectedObjects_type& affectedObjects () const; /** * @brief Return a read-write reference to the element. * * @return A reference to the element. */ affectedObjects_type& affectedObjects (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void affectedObjects (const affectedObjects_type& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void affectedObjects (::std::auto_ptr< affectedObjects_type > p); //@} /** * @name eventType * * @brief Accessor and modifier functions for the %eventType * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI eventType_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< eventType_type, char > eventType_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const eventType_type& eventType () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ eventType_type& eventType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void eventType (const eventType_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void eventType (::std::auto_ptr< eventType_type > p); //@} /** * @name timestamp * * @brief Accessor and modifier functions for the %timestamp * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::date_time timestamp_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< timestamp_type, char > timestamp_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const timestamp_type& timestamp () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ timestamp_type& timestamp (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void timestamp (const timestamp_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void timestamp (::std::auto_ptr< timestamp_type > p); //@} /** * @name user * * @brief Accessor and modifier functions for the %user * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI user_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< user_type, char > user_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const user_type& user () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ user_type& user (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void user (const user_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void user (::std::auto_ptr< user_type > p); //@} /** * @name requestId * * @brief Accessor and modifier functions for the %requestId * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI requestId_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< requestId_type, char > requestId_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const requestId_type& requestId () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ requestId_type& requestId (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void requestId (const requestId_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void requestId (::std::auto_ptr< requestId_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ AuditableEventType (const id_type&, const affectedObjects_type&, const eventType_type&, const timestamp_type&, const user_type&, const requestId_type&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes * (auto_ptr version). * * This constructor will try to use the passed values directly * instead of making copies. */ AuditableEventType (const id_type&, ::std::auto_ptr< affectedObjects_type >&, const eventType_type&, const timestamp_type&, const user_type&, const requestId_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ AuditableEventType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ AuditableEventType (const AuditableEventType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual AuditableEventType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~AuditableEventType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< affectedObjects_type > affectedObjects_; ::xsd::cxx::tree::one< eventType_type > eventType_; ::xsd::cxx::tree::one< timestamp_type > timestamp_; ::xsd::cxx::tree::one< user_type > user_; ::xsd::cxx::tree::one< requestId_type > requestId_; //@endcond }; /** * @brief Class corresponding to the %ClassificationType schema type. * * Classification is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * A Classification specifies references to two registry entrys. * The classifiedObject is id of the Object being classified. * The classificationNode is id of the ClassificationNode classying the * object * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ClassificationType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name classificationScheme * * @brief Accessor and modifier functions for the %classificationScheme * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI classificationScheme_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< classificationScheme_type > classificationScheme_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< classificationScheme_type, char > classificationScheme_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const classificationScheme_optional& classificationScheme () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ classificationScheme_optional& classificationScheme (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void classificationScheme (const classificationScheme_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void classificationScheme (const classificationScheme_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void classificationScheme (::std::auto_ptr< classificationScheme_type > p); //@} /** * @name classifiedObject * * @brief Accessor and modifier functions for the %classifiedObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI classifiedObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< classifiedObject_type, char > classifiedObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const classifiedObject_type& classifiedObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ classifiedObject_type& classifiedObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void classifiedObject (const classifiedObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void classifiedObject (::std::auto_ptr< classifiedObject_type > p); //@} /** * @name classificationNode * * @brief Accessor and modifier functions for the %classificationNode * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI classificationNode_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< classificationNode_type > classificationNode_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< classificationNode_type, char > classificationNode_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const classificationNode_optional& classificationNode () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ classificationNode_optional& classificationNode (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void classificationNode (const classificationNode_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void classificationNode (const classificationNode_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void classificationNode (::std::auto_ptr< classificationNode_type > p); //@} /** * @name nodeRepresentation * * @brief Accessor and modifier functions for the %nodeRepresentation * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName nodeRepresentation_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< nodeRepresentation_type > nodeRepresentation_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< nodeRepresentation_type, char > nodeRepresentation_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const nodeRepresentation_optional& nodeRepresentation () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ nodeRepresentation_optional& nodeRepresentation (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void nodeRepresentation (const nodeRepresentation_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void nodeRepresentation (const nodeRepresentation_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void nodeRepresentation (::std::auto_ptr< nodeRepresentation_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ClassificationType (const id_type&, const classifiedObject_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ClassificationType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ClassificationType (const ClassificationType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ClassificationType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ClassificationType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: classificationScheme_optional classificationScheme_; ::xsd::cxx::tree::one< classifiedObject_type > classifiedObject_; classificationNode_optional classificationNode_; nodeRepresentation_optional nodeRepresentation_; //@endcond }; /** * @brief Class corresponding to the %ClassificationNodeType schema type. * * ClassificationNode is the mapping of the same named interface in * ebRIM. * It extends RegistryObject. * ClassificationNode is used to submit a Classification tree to the * Registry. * The parent attribute is the id to the parent node. code is an optional * code value for a ClassificationNode * often defined by an external taxonomy (e.g. NAICS) * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ClassificationNodeType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name ClassificationNode * * @brief Accessor and modifier functions for the %ClassificationNode * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ClassificationNodeType ClassificationNode_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ClassificationNode_type > ClassificationNode_sequence; /** * @brief Element iterator type. */ typedef ClassificationNode_sequence::iterator ClassificationNode_iterator; /** * @brief Element constant iterator type. */ typedef ClassificationNode_sequence::const_iterator ClassificationNode_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ClassificationNode_type, char > ClassificationNode_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ClassificationNode_sequence& ClassificationNode () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ClassificationNode_sequence& ClassificationNode (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ClassificationNode (const ClassificationNode_sequence& s); //@} /** * @name parent * * @brief Accessor and modifier functions for the %parent * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI parent_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< parent_type > parent_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< parent_type, char > parent_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const parent_optional& parent () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ parent_optional& parent (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void parent (const parent_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void parent (const parent_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void parent (::std::auto_ptr< parent_type > p); //@} /** * @name code * * @brief Accessor and modifier functions for the %code * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName code_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< code_type > code_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< code_type, char > code_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const code_optional& code () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ code_optional& code (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void code (const code_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void code (const code_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void code (::std::auto_ptr< code_type > p); //@} /** * @name path * * @brief Accessor and modifier functions for the %path * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::string path_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< path_type > path_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< path_type, char > path_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const path_optional& path () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ path_optional& path (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void path (const path_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void path (const path_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void path (::std::auto_ptr< path_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ClassificationNodeType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ClassificationNodeType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ClassificationNodeType (const ClassificationNodeType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ClassificationNodeType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ClassificationNodeType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ClassificationNode_sequence ClassificationNode_; parent_optional parent_; code_optional code_; path_optional path_; //@endcond }; /** * @brief Class corresponding to the %ClassificationSchemeType schema type. * * ClassificationScheme is the mapping of the same named interface in * ebRIM. * It extends RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ClassificationSchemeType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name ClassificationNode * * @brief Accessor and modifier functions for the %ClassificationNode * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ClassificationNodeType ClassificationNode_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ClassificationNode_type > ClassificationNode_sequence; /** * @brief Element iterator type. */ typedef ClassificationNode_sequence::iterator ClassificationNode_iterator; /** * @brief Element constant iterator type. */ typedef ClassificationNode_sequence::const_iterator ClassificationNode_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ClassificationNode_type, char > ClassificationNode_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ClassificationNode_sequence& ClassificationNode () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ClassificationNode_sequence& ClassificationNode (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ClassificationNode (const ClassificationNode_sequence& s); //@} /** * @name isInternal * * @brief Accessor and modifier functions for the %isInternal * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::boolean isInternal_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< isInternal_type, char > isInternal_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const isInternal_type& isInternal () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ isInternal_type& isInternal (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void isInternal (const isInternal_type& x); //@} /** * @name nodeType * * @brief Accessor and modifier functions for the %nodeType * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI nodeType_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< nodeType_type, char > nodeType_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const nodeType_type& nodeType () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ nodeType_type& nodeType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void nodeType (const nodeType_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void nodeType (::std::auto_ptr< nodeType_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ClassificationSchemeType (const id_type&, const isInternal_type&, const nodeType_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ClassificationSchemeType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ClassificationSchemeType (const ClassificationSchemeType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ClassificationSchemeType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ClassificationSchemeType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ClassificationNode_sequence ClassificationNode_; ::xsd::cxx::tree::one< isInternal_type > isInternal_; ::xsd::cxx::tree::one< nodeType_type > nodeType_; //@endcond }; /** * @brief Class corresponding to the %ExternalIdentifierType schema type. * * ExternalIdentifier is the mapping of the same named interface in * ebRIM. * It extends RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ExternalIdentifierType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name registryObject * * @brief Accessor and modifier functions for the %registryObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI registryObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< registryObject_type, char > registryObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const registryObject_type& registryObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ registryObject_type& registryObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void registryObject (const registryObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void registryObject (::std::auto_ptr< registryObject_type > p); //@} /** * @name identificationScheme * * @brief Accessor and modifier functions for the %identificationScheme * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI identificationScheme_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< identificationScheme_type, char > identificationScheme_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const identificationScheme_type& identificationScheme () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ identificationScheme_type& identificationScheme (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void identificationScheme (const identificationScheme_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void identificationScheme (::std::auto_ptr< identificationScheme_type > p); //@} /** * @name value * * @brief Accessor and modifier functions for the %value * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName value_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< value_type, char > value_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const value_type& value () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ value_type& value (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void value (const value_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void value (::std::auto_ptr< value_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ExternalIdentifierType (const id_type&, const registryObject_type&, const identificationScheme_type&, const value_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ExternalIdentifierType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ExternalIdentifierType (const ExternalIdentifierType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ExternalIdentifierType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ExternalIdentifierType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< registryObject_type > registryObject_; ::xsd::cxx::tree::one< identificationScheme_type > identificationScheme_; ::xsd::cxx::tree::one< value_type > value_; //@endcond }; /** * @brief Class corresponding to the %ExternalLinkType schema type. * * ExternalLink is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ExternalLinkType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name externalURI * * @brief Accessor and modifier functions for the %externalURI * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri externalURI_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< externalURI_type, char > externalURI_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const externalURI_type& externalURI () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ externalURI_type& externalURI (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void externalURI (const externalURI_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void externalURI (::std::auto_ptr< externalURI_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ExternalLinkType (const id_type&, const externalURI_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ExternalLinkType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ExternalLinkType (const ExternalLinkType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ExternalLinkType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ExternalLinkType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< externalURI_type > externalURI_; //@endcond }; /** * @brief Class corresponding to the %ExtrinsicObjectType schema type. * * ExtrinsicObject is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ExtrinsicObjectType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name ContentVersionInfo * * @brief Accessor and modifier functions for the %ContentVersionInfo * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::VersionInfoType ContentVersionInfo_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< ContentVersionInfo_type > ContentVersionInfo_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ContentVersionInfo_type, char > ContentVersionInfo_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const ContentVersionInfo_optional& ContentVersionInfo () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ ContentVersionInfo_optional& ContentVersionInfo (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void ContentVersionInfo (const ContentVersionInfo_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void ContentVersionInfo (const ContentVersionInfo_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void ContentVersionInfo (::std::auto_ptr< ContentVersionInfo_type > p); //@} /** * @name mimeType * * @brief Accessor and modifier functions for the %mimeType * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::LongName mimeType_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< mimeType_type, char > mimeType_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const mimeType_type& mimeType () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ mimeType_type& mimeType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void mimeType (const mimeType_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void mimeType (::std::auto_ptr< mimeType_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const mimeType_type& mimeType_default_value (); //@} /** * @name isOpaque * * @brief Accessor and modifier functions for the %isOpaque * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::boolean isOpaque_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< isOpaque_type, char > isOpaque_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const isOpaque_type& isOpaque () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ isOpaque_type& isOpaque (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void isOpaque (const isOpaque_type& x); /** * @brief Return the default value for the attribute. * * @return The attribute's default value. */ static isOpaque_type isOpaque_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ExtrinsicObjectType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ExtrinsicObjectType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ExtrinsicObjectType (const ExtrinsicObjectType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ExtrinsicObjectType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ExtrinsicObjectType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ContentVersionInfo_optional ContentVersionInfo_; ::xsd::cxx::tree::one< mimeType_type > mimeType_; static const mimeType_type mimeType_default_value_; ::xsd::cxx::tree::one< isOpaque_type > isOpaque_; //@endcond }; /** * @brief Class corresponding to the %OrganizationType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED OrganizationType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name Address * * @brief Accessor and modifier functions for the %Address * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::PostalAddressType Address_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Address_type > Address_sequence; /** * @brief Element iterator type. */ typedef Address_sequence::iterator Address_iterator; /** * @brief Element constant iterator type. */ typedef Address_sequence::const_iterator Address_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Address_type, char > Address_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Address_sequence& Address () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Address_sequence& Address (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Address (const Address_sequence& s); //@} /** * @name TelephoneNumber * * @brief Accessor and modifier functions for the %TelephoneNumber * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::TelephoneNumberType TelephoneNumber_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< TelephoneNumber_type > TelephoneNumber_sequence; /** * @brief Element iterator type. */ typedef TelephoneNumber_sequence::iterator TelephoneNumber_iterator; /** * @brief Element constant iterator type. */ typedef TelephoneNumber_sequence::const_iterator TelephoneNumber_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< TelephoneNumber_type, char > TelephoneNumber_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const TelephoneNumber_sequence& TelephoneNumber () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ TelephoneNumber_sequence& TelephoneNumber (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void TelephoneNumber (const TelephoneNumber_sequence& s); //@} /** * @name EmailAddress * * @brief Accessor and modifier functions for the %EmailAddress * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::EmailAddressType EmailAddress_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< EmailAddress_type > EmailAddress_sequence; /** * @brief Element iterator type. */ typedef EmailAddress_sequence::iterator EmailAddress_iterator; /** * @brief Element constant iterator type. */ typedef EmailAddress_sequence::const_iterator EmailAddress_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< EmailAddress_type, char > EmailAddress_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const EmailAddress_sequence& EmailAddress () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ EmailAddress_sequence& EmailAddress (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void EmailAddress (const EmailAddress_sequence& s); //@} /** * @name parent * * @brief Accessor and modifier functions for the %parent * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI parent_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< parent_type > parent_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< parent_type, char > parent_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const parent_optional& parent () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ parent_optional& parent (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void parent (const parent_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void parent (const parent_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void parent (::std::auto_ptr< parent_type > p); //@} /** * @name primaryContact * * @brief Accessor and modifier functions for the %primaryContact * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI primaryContact_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< primaryContact_type > primaryContact_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< primaryContact_type, char > primaryContact_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const primaryContact_optional& primaryContact () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ primaryContact_optional& primaryContact (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void primaryContact (const primaryContact_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void primaryContact (const primaryContact_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void primaryContact (::std::auto_ptr< primaryContact_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ OrganizationType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ OrganizationType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ OrganizationType (const OrganizationType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual OrganizationType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~OrganizationType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Address_sequence Address_; TelephoneNumber_sequence TelephoneNumber_; EmailAddress_sequence EmailAddress_; parent_optional parent_; primaryContact_optional primaryContact_; //@endcond }; /** * @brief Class corresponding to the %PersonNameType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED PersonNameType: public ::xml_schema::type { public: /** * @name firstName * * @brief Accessor and modifier functions for the %firstName * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName firstName_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< firstName_type > firstName_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< firstName_type, char > firstName_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const firstName_optional& firstName () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ firstName_optional& firstName (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void firstName (const firstName_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void firstName (const firstName_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void firstName (::std::auto_ptr< firstName_type > p); //@} /** * @name middleName * * @brief Accessor and modifier functions for the %middleName * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName middleName_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< middleName_type > middleName_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< middleName_type, char > middleName_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const middleName_optional& middleName () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ middleName_optional& middleName (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void middleName (const middleName_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void middleName (const middleName_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void middleName (::std::auto_ptr< middleName_type > p); //@} /** * @name lastName * * @brief Accessor and modifier functions for the %lastName * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName lastName_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< lastName_type > lastName_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< lastName_type, char > lastName_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const lastName_optional& lastName () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ lastName_optional& lastName (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void lastName (const lastName_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void lastName (const lastName_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void lastName (::std::auto_ptr< lastName_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ PersonNameType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ PersonNameType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ PersonNameType (const PersonNameType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual PersonNameType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~PersonNameType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: firstName_optional firstName_; middleName_optional middleName_; lastName_optional lastName_; //@endcond }; /** * @brief Class corresponding to the %EmailAddressType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED EmailAddressType: public ::xml_schema::type { public: /** * @name address * * @brief Accessor and modifier functions for the %address * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName address_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< address_type, char > address_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const address_type& address () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ address_type& address (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void address (const address_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void address (::std::auto_ptr< address_type > p); //@} /** * @name type * * @brief Accessor and modifier functions for the %type * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String32 type_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< type_type > type_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< type_type, char > type_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const type_optional& type () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ type_optional& type (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void type (const type_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void type (const type_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void type (::std::auto_ptr< type_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ EmailAddressType (const address_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ EmailAddressType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ EmailAddressType (const EmailAddressType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual EmailAddressType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~EmailAddressType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< address_type > address_; type_optional type_; //@endcond }; /** * @brief Class corresponding to the %PostalAddressType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED PostalAddressType: public ::xml_schema::type { public: /** * @name city * * @brief Accessor and modifier functions for the %city * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName city_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< city_type > city_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< city_type, char > city_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const city_optional& city () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ city_optional& city (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void city (const city_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void city (const city_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void city (::std::auto_ptr< city_type > p); //@} /** * @name country * * @brief Accessor and modifier functions for the %country * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName country_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< country_type > country_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< country_type, char > country_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const country_optional& country () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ country_optional& country (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void country (const country_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void country (const country_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void country (::std::auto_ptr< country_type > p); //@} /** * @name postalCode * * @brief Accessor and modifier functions for the %postalCode * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName postalCode_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< postalCode_type > postalCode_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< postalCode_type, char > postalCode_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const postalCode_optional& postalCode () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ postalCode_optional& postalCode (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void postalCode (const postalCode_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void postalCode (const postalCode_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void postalCode (::std::auto_ptr< postalCode_type > p); //@} /** * @name stateOrProvince * * @brief Accessor and modifier functions for the %stateOrProvince * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName stateOrProvince_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< stateOrProvince_type > stateOrProvince_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< stateOrProvince_type, char > stateOrProvince_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const stateOrProvince_optional& stateOrProvince () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ stateOrProvince_optional& stateOrProvince (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void stateOrProvince (const stateOrProvince_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void stateOrProvince (const stateOrProvince_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void stateOrProvince (::std::auto_ptr< stateOrProvince_type > p); //@} /** * @name street * * @brief Accessor and modifier functions for the %street * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::ShortName street_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< street_type > street_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< street_type, char > street_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const street_optional& street () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ street_optional& street (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void street (const street_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void street (const street_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void street (::std::auto_ptr< street_type > p); //@} /** * @name streetNumber * * @brief Accessor and modifier functions for the %streetNumber * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String32 streetNumber_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< streetNumber_type > streetNumber_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< streetNumber_type, char > streetNumber_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const streetNumber_optional& streetNumber () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ streetNumber_optional& streetNumber (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void streetNumber (const streetNumber_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void streetNumber (const streetNumber_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void streetNumber (::std::auto_ptr< streetNumber_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ PostalAddressType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ PostalAddressType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ PostalAddressType (const PostalAddressType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual PostalAddressType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~PostalAddressType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: city_optional city_; country_optional country_; postalCode_optional postalCode_; stateOrProvince_optional stateOrProvince_; street_optional street_; streetNumber_optional streetNumber_; //@endcond }; /** * @brief Class corresponding to the %VersionInfoType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED VersionInfoType: public ::xml_schema::type { public: /** * @name versionName * * @brief Accessor and modifier functions for the %versionName * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String16 versionName_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< versionName_type, char > versionName_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const versionName_type& versionName () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ versionName_type& versionName (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void versionName (const versionName_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void versionName (::std::auto_ptr< versionName_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const versionName_type& versionName_default_value (); //@} /** * @name comment * * @brief Accessor and modifier functions for the %comment * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::string comment_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< comment_type > comment_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< comment_type, char > comment_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const comment_optional& comment () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ comment_optional& comment (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void comment (const comment_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void comment (const comment_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void comment (::std::auto_ptr< comment_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ VersionInfoType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ VersionInfoType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ VersionInfoType (const VersionInfoType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual VersionInfoType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~VersionInfoType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< versionName_type > versionName_; static const versionName_type versionName_default_value_; comment_optional comment_; //@endcond }; /** * @brief Class corresponding to the %RegistryPackageType schema type. * * RegistryPackage is the mapping of the same named interface in ebRIM. * It extends RegistryObject. * A RegistryPackage is a named collection of objects. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED RegistryPackageType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name RegistryObjectList * * @brief Accessor and modifier functions for the %RegistryObjectList * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::RegistryObjectListType RegistryObjectList_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< RegistryObjectList_type > RegistryObjectList_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< RegistryObjectList_type, char > RegistryObjectList_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const RegistryObjectList_optional& RegistryObjectList () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ RegistryObjectList_optional& RegistryObjectList (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void RegistryObjectList (const RegistryObjectList_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void RegistryObjectList (const RegistryObjectList_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void RegistryObjectList (::std::auto_ptr< RegistryObjectList_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ RegistryPackageType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ RegistryPackageType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ RegistryPackageType (const RegistryPackageType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual RegistryPackageType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~RegistryPackageType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: RegistryObjectList_optional RegistryObjectList_; //@endcond }; /** * @brief Class corresponding to the %ServiceType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ServiceType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name ServiceBinding * * @brief Accessor and modifier functions for the %ServiceBinding * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ServiceBindingType ServiceBinding_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< ServiceBinding_type > ServiceBinding_sequence; /** * @brief Element iterator type. */ typedef ServiceBinding_sequence::iterator ServiceBinding_iterator; /** * @brief Element constant iterator type. */ typedef ServiceBinding_sequence::const_iterator ServiceBinding_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< ServiceBinding_type, char > ServiceBinding_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const ServiceBinding_sequence& ServiceBinding () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ ServiceBinding_sequence& ServiceBinding (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void ServiceBinding (const ServiceBinding_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ServiceType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ServiceType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ServiceType (const ServiceType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ServiceType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ServiceType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ServiceBinding_sequence ServiceBinding_; //@endcond }; /** * @brief Class corresponding to the %ServiceBindingType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ServiceBindingType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name SpecificationLink * * @brief Accessor and modifier functions for the %SpecificationLink * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::SpecificationLinkType SpecificationLink_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< SpecificationLink_type > SpecificationLink_sequence; /** * @brief Element iterator type. */ typedef SpecificationLink_sequence::iterator SpecificationLink_iterator; /** * @brief Element constant iterator type. */ typedef SpecificationLink_sequence::const_iterator SpecificationLink_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< SpecificationLink_type, char > SpecificationLink_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const SpecificationLink_sequence& SpecificationLink () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ SpecificationLink_sequence& SpecificationLink (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void SpecificationLink (const SpecificationLink_sequence& s); //@} /** * @name service * * @brief Accessor and modifier functions for the %service * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI service_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< service_type, char > service_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const service_type& service () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ service_type& service (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void service (const service_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void service (::std::auto_ptr< service_type > p); //@} /** * @name accessURI * * @brief Accessor and modifier functions for the %accessURI * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri accessURI_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< accessURI_type > accessURI_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< accessURI_type, char > accessURI_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const accessURI_optional& accessURI () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ accessURI_optional& accessURI (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void accessURI (const accessURI_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void accessURI (const accessURI_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void accessURI (::std::auto_ptr< accessURI_type > p); //@} /** * @name targetBinding * * @brief Accessor and modifier functions for the %targetBinding * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI targetBinding_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< targetBinding_type > targetBinding_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< targetBinding_type, char > targetBinding_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const targetBinding_optional& targetBinding () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ targetBinding_optional& targetBinding (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void targetBinding (const targetBinding_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void targetBinding (const targetBinding_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void targetBinding (::std::auto_ptr< targetBinding_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ServiceBindingType (const id_type&, const service_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ServiceBindingType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ServiceBindingType (const ServiceBindingType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ServiceBindingType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ServiceBindingType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: SpecificationLink_sequence SpecificationLink_; ::xsd::cxx::tree::one< service_type > service_; accessURI_optional accessURI_; targetBinding_optional targetBinding_; //@endcond }; /** * @brief Class corresponding to the %SpecificationLinkType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED SpecificationLinkType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name UsageDescription * * @brief Accessor and modifier functions for the %UsageDescription * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::InternationalStringType UsageDescription_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< UsageDescription_type > UsageDescription_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< UsageDescription_type, char > UsageDescription_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const UsageDescription_optional& UsageDescription () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ UsageDescription_optional& UsageDescription (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void UsageDescription (const UsageDescription_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void UsageDescription (const UsageDescription_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void UsageDescription (::std::auto_ptr< UsageDescription_type > p); //@} /** * @name UsageParameter * * @brief Accessor and modifier functions for the %UsageParameter * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::FreeFormText UsageParameter_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< UsageParameter_type > UsageParameter_sequence; /** * @brief Element iterator type. */ typedef UsageParameter_sequence::iterator UsageParameter_iterator; /** * @brief Element constant iterator type. */ typedef UsageParameter_sequence::const_iterator UsageParameter_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< UsageParameter_type, char > UsageParameter_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const UsageParameter_sequence& UsageParameter () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ UsageParameter_sequence& UsageParameter (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void UsageParameter (const UsageParameter_sequence& s); //@} /** * @name serviceBinding * * @brief Accessor and modifier functions for the %serviceBinding * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI serviceBinding_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< serviceBinding_type, char > serviceBinding_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const serviceBinding_type& serviceBinding () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ serviceBinding_type& serviceBinding (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void serviceBinding (const serviceBinding_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void serviceBinding (::std::auto_ptr< serviceBinding_type > p); //@} /** * @name specificationObject * * @brief Accessor and modifier functions for the %specificationObject * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI specificationObject_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< specificationObject_type, char > specificationObject_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const specificationObject_type& specificationObject () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ specificationObject_type& specificationObject (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void specificationObject (const specificationObject_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void specificationObject (::std::auto_ptr< specificationObject_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ SpecificationLinkType (const id_type&, const serviceBinding_type&, const specificationObject_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ SpecificationLinkType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ SpecificationLinkType (const SpecificationLinkType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual SpecificationLinkType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~SpecificationLinkType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: UsageDescription_optional UsageDescription_; UsageParameter_sequence UsageParameter_; ::xsd::cxx::tree::one< serviceBinding_type > serviceBinding_; ::xsd::cxx::tree::one< specificationObject_type > specificationObject_; //@endcond }; /** * @brief Class corresponding to the %TelephoneNumberType schema type. * * TelephoneNumber is the mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED TelephoneNumberType: public ::xml_schema::type { public: /** * @name areaCode * * @brief Accessor and modifier functions for the %areaCode * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String8 areaCode_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< areaCode_type > areaCode_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< areaCode_type, char > areaCode_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const areaCode_optional& areaCode () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ areaCode_optional& areaCode (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void areaCode (const areaCode_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void areaCode (const areaCode_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void areaCode (::std::auto_ptr< areaCode_type > p); //@} /** * @name countryCode * * @brief Accessor and modifier functions for the %countryCode * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String8 countryCode_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< countryCode_type > countryCode_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< countryCode_type, char > countryCode_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const countryCode_optional& countryCode () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ countryCode_optional& countryCode (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void countryCode (const countryCode_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void countryCode (const countryCode_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void countryCode (::std::auto_ptr< countryCode_type > p); //@} /** * @name extension * * @brief Accessor and modifier functions for the %extension * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String8 extension_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< extension_type > extension_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< extension_type, char > extension_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const extension_optional& extension () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ extension_optional& extension (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void extension (const extension_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void extension (const extension_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void extension (::std::auto_ptr< extension_type > p); //@} /** * @name number * * @brief Accessor and modifier functions for the %number * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String16 number_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< number_type > number_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< number_type, char > number_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const number_optional& number () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ number_optional& number (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void number (const number_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void number (const number_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void number (::std::auto_ptr< number_type > p); //@} /** * @name phoneType * * @brief Accessor and modifier functions for the %phoneType * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::String32 phoneType_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< phoneType_type > phoneType_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< phoneType_type, char > phoneType_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const phoneType_optional& phoneType () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ phoneType_optional& phoneType (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void phoneType (const phoneType_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void phoneType (const phoneType_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void phoneType (::std::auto_ptr< phoneType_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ TelephoneNumberType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ TelephoneNumberType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ TelephoneNumberType (const TelephoneNumberType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual TelephoneNumberType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~TelephoneNumberType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: areaCode_optional areaCode_; countryCode_optional countryCode_; extension_optional extension_; number_optional number_; phoneType_optional phoneType_; //@endcond }; /** * @brief Class corresponding to the %TelephoneNumberListType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED TelephoneNumberListType: public ::xml_schema::type { public: /** * @name TelephoneNumber * * @brief Accessor and modifier functions for the %TelephoneNumber * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::TelephoneNumberType TelephoneNumber_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< TelephoneNumber_type > TelephoneNumber_sequence; /** * @brief Element iterator type. */ typedef TelephoneNumber_sequence::iterator TelephoneNumber_iterator; /** * @brief Element constant iterator type. */ typedef TelephoneNumber_sequence::const_iterator TelephoneNumber_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< TelephoneNumber_type, char > TelephoneNumber_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const TelephoneNumber_sequence& TelephoneNumber () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ TelephoneNumber_sequence& TelephoneNumber (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void TelephoneNumber (const TelephoneNumber_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ TelephoneNumberListType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ TelephoneNumberListType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ TelephoneNumberListType (const TelephoneNumberListType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual TelephoneNumberListType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~TelephoneNumberListType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: TelephoneNumber_sequence TelephoneNumber_; //@endcond }; /** * @brief Class corresponding to the %PersonType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED PersonType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name Address * * @brief Accessor and modifier functions for the %Address * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::PostalAddressType Address_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Address_type > Address_sequence; /** * @brief Element iterator type. */ typedef Address_sequence::iterator Address_iterator; /** * @brief Element constant iterator type. */ typedef Address_sequence::const_iterator Address_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Address_type, char > Address_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Address_sequence& Address () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Address_sequence& Address (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Address (const Address_sequence& s); //@} /** * @name PersonName * * @brief Accessor and modifier functions for the %PersonName * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::PersonNameType PersonName_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< PersonName_type > PersonName_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< PersonName_type, char > PersonName_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const PersonName_optional& PersonName () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ PersonName_optional& PersonName (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void PersonName (const PersonName_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void PersonName (const PersonName_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void PersonName (::std::auto_ptr< PersonName_type > p); //@} /** * @name TelephoneNumber * * @brief Accessor and modifier functions for the %TelephoneNumber * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::TelephoneNumberType TelephoneNumber_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< TelephoneNumber_type > TelephoneNumber_sequence; /** * @brief Element iterator type. */ typedef TelephoneNumber_sequence::iterator TelephoneNumber_iterator; /** * @brief Element constant iterator type. */ typedef TelephoneNumber_sequence::const_iterator TelephoneNumber_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< TelephoneNumber_type, char > TelephoneNumber_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const TelephoneNumber_sequence& TelephoneNumber () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ TelephoneNumber_sequence& TelephoneNumber (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void TelephoneNumber (const TelephoneNumber_sequence& s); //@} /** * @name EmailAddress * * @brief Accessor and modifier functions for the %EmailAddress * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::EmailAddressType EmailAddress_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< EmailAddress_type > EmailAddress_sequence; /** * @brief Element iterator type. */ typedef EmailAddress_sequence::iterator EmailAddress_iterator; /** * @brief Element constant iterator type. */ typedef EmailAddress_sequence::const_iterator EmailAddress_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< EmailAddress_type, char > EmailAddress_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const EmailAddress_sequence& EmailAddress () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ EmailAddress_sequence& EmailAddress (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void EmailAddress (const EmailAddress_sequence& s); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ PersonType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ PersonType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ PersonType (const PersonType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual PersonType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~PersonType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Address_sequence Address_; PersonName_optional PersonName_; TelephoneNumber_sequence TelephoneNumber_; EmailAddress_sequence EmailAddress_; //@endcond }; /** * @brief Class corresponding to the %UserType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED UserType: public ::Jade::OpenGIS::regrep_3_0::PersonType { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ UserType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ UserType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ UserType (const UserType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual UserType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~UserType (); }; /** * @brief Class corresponding to the %RegistryType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED RegistryType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name operator * * @brief Accessor and modifier functions for the %operator * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI operator_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< operator_type, char > operator_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const operator_type& operator_ () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ operator_type& operator_ (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void operator_ (const operator_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void operator_ (::std::auto_ptr< operator_type > p); //@} /** * @name specificationVersion * * @brief Accessor and modifier functions for the %specificationVersion * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::string specificationVersion_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< specificationVersion_type, char > specificationVersion_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const specificationVersion_type& specificationVersion () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ specificationVersion_type& specificationVersion (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void specificationVersion (const specificationVersion_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void specificationVersion (::std::auto_ptr< specificationVersion_type > p); //@} /** * @name replicationSyncLatency * * @brief Accessor and modifier functions for the %replicationSyncLatency * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::duration replicationSyncLatency_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< replicationSyncLatency_type, char > replicationSyncLatency_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const replicationSyncLatency_type& replicationSyncLatency () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ replicationSyncLatency_type& replicationSyncLatency (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void replicationSyncLatency (const replicationSyncLatency_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void replicationSyncLatency (::std::auto_ptr< replicationSyncLatency_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const replicationSyncLatency_type& replicationSyncLatency_default_value (); //@} /** * @name catalogingLatency * * @brief Accessor and modifier functions for the %catalogingLatency * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::duration catalogingLatency_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< catalogingLatency_type, char > catalogingLatency_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const catalogingLatency_type& catalogingLatency () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ catalogingLatency_type& catalogingLatency (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void catalogingLatency (const catalogingLatency_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void catalogingLatency (::std::auto_ptr< catalogingLatency_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const catalogingLatency_type& catalogingLatency_default_value (); //@} /** * @name conformanceProfile * * @brief Accessor and modifier functions for the %conformanceProfile * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::conformanceProfile conformanceProfile_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< conformanceProfile_type, char > conformanceProfile_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const conformanceProfile_type& conformanceProfile () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ conformanceProfile_type& conformanceProfile (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void conformanceProfile (const conformanceProfile_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void conformanceProfile (::std::auto_ptr< conformanceProfile_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const conformanceProfile_type& conformanceProfile_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ RegistryType (const id_type&, const operator_type&, const specificationVersion_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ RegistryType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ RegistryType (const RegistryType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual RegistryType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~RegistryType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< operator_type > operator__; ::xsd::cxx::tree::one< specificationVersion_type > specificationVersion_; ::xsd::cxx::tree::one< replicationSyncLatency_type > replicationSyncLatency_; static const replicationSyncLatency_type replicationSyncLatency_default_value_; ::xsd::cxx::tree::one< catalogingLatency_type > catalogingLatency_; static const catalogingLatency_type catalogingLatency_default_value_; ::xsd::cxx::tree::one< conformanceProfile_type > conformanceProfile_; static const conformanceProfile_type conformanceProfile_default_value_; //@endcond }; /** * @brief Class corresponding to the %FederationType schema type. * * Mapping of the same named interface in ebRIM. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED FederationType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name replicationSyncLatency * * @brief Accessor and modifier functions for the %replicationSyncLatency * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::duration replicationSyncLatency_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< replicationSyncLatency_type, char > replicationSyncLatency_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const replicationSyncLatency_type& replicationSyncLatency () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ replicationSyncLatency_type& replicationSyncLatency (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void replicationSyncLatency (const replicationSyncLatency_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void replicationSyncLatency (::std::auto_ptr< replicationSyncLatency_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const replicationSyncLatency_type& replicationSyncLatency_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ FederationType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ FederationType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ FederationType (const FederationType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual FederationType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~FederationType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< replicationSyncLatency_type > replicationSyncLatency_; static const replicationSyncLatency_type replicationSyncLatency_default_value_; //@endcond }; /** * @brief Class corresponding to the %AdhocQueryType schema type. * * A registry query. * A QueryExpression child element is not required when invoking a stored * query. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED AdhocQueryType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name QueryExpression * * @brief Accessor and modifier functions for the %QueryExpression * optional element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::QueryExpressionType QueryExpression_type; /** * @brief Element optional container type. */ typedef ::xsd::cxx::tree::optional< QueryExpression_type > QueryExpression_optional; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< QueryExpression_type, char > QueryExpression_traits; /** * @brief Return a read-only (constant) reference to the element * container. * * @return A constant reference to the optional container. */ const QueryExpression_optional& QueryExpression () const; /** * @brief Return a read-write reference to the element container. * * @return A reference to the optional container. */ QueryExpression_optional& QueryExpression (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void QueryExpression (const QueryExpression_type& x); /** * @brief Set the element value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the element. * Otherwise the element container is set the 'not present' state. */ void QueryExpression (const QueryExpression_optional& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void QueryExpression (::std::auto_ptr< QueryExpression_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ AdhocQueryType (const id_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ AdhocQueryType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ AdhocQueryType (const AdhocQueryType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual AdhocQueryType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~AdhocQueryType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: QueryExpression_optional QueryExpression_; //@endcond }; /** * @brief Class corresponding to the %QueryExpressionType schema type. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED QueryExpressionType: public ::xml_schema::type { public: /** * @name any * * @brief Accessor and modifier functions for the any wildcard. */ //@{ /** * @brief DOM element optional container type. */ typedef ::xsd::cxx::tree::element_optional any_optional; /** * @brief Return a read-only (constant) reference to the wildcard * element container. * * @return A constant reference to the optional container. */ const any_optional& any () const; /** * @brief Return a read-write reference to the wildcard element * container. * * @return A reference to the optional container. */ any_optional& any (); /** * @brief Set the wildcard content. * * @param e A new element to set. * * This function makes a copy of its argument and sets it as * the new wildcard content. */ void any (const ::xercesc::DOMElement& e); /** * @brief Set the wildcard content without copying. * * @param p A new element to use. * * This function will use the passed element directly instead * of making a copy. For this to work the element should belong * to the DOM document associated with this instance. * * @see dom_document */ void any (::xercesc::DOMElement* p); /** * @brief Set the wildcard content. * * @param x An optional container with the new element to set. * * If the element is present in @a x then this function makes a * copy of this element and sets it as the new wildcard content. * Otherwise the element container is set the 'not present' state. */ void any (const any_optional& x); //@} /** * @name queryLanguage * * @brief Accessor and modifier functions for the %queryLanguage * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI queryLanguage_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< queryLanguage_type, char > queryLanguage_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const queryLanguage_type& queryLanguage () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ queryLanguage_type& queryLanguage (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void queryLanguage (const queryLanguage_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void queryLanguage (::std::auto_ptr< queryLanguage_type > p); //@} /** * @brief Return a read-only (constant) reference to the DOM * document associated with this instance. * * @return A constant reference to the DOM document. * * The DOM document returned by this function is used to store * the raw XML content corresponding to wildcards. */ const ::xercesc::DOMDocument& dom_document () const; /** * @brief Return a read-write reference to the DOM document * associated with this instance. * * @return A reference to the DOM document. * * The DOM document returned by this function is used to store * the raw XML content corresponding to wildcards. */ ::xercesc::DOMDocument& dom_document (); /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ QueryExpressionType (const queryLanguage_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ QueryExpressionType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ QueryExpressionType (const QueryExpressionType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual QueryExpressionType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~QueryExpressionType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xml_schema::dom::auto_ptr< ::xercesc::DOMDocument > dom_document_; any_optional any_; ::xsd::cxx::tree::one< queryLanguage_type > queryLanguage_; //@endcond }; /** * @brief Class corresponding to the %NotificationType schema type. * * Notification of registry events. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED NotificationType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name RegistryObjectList * * @brief Accessor and modifier functions for the %RegistryObjectList * required element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::RegistryObjectListType RegistryObjectList_type; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< RegistryObjectList_type, char > RegistryObjectList_traits; /** * @brief Return a read-only (constant) reference to the element. * * @return A constant reference to the element. */ const RegistryObjectList_type& RegistryObjectList () const; /** * @brief Return a read-write reference to the element. * * @return A reference to the element. */ RegistryObjectList_type& RegistryObjectList (); /** * @brief Set the element value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the element. */ void RegistryObjectList (const RegistryObjectList_type& x); /** * @brief Set the element value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void RegistryObjectList (::std::auto_ptr< RegistryObjectList_type > p); //@} /** * @name subscription * * @brief Accessor and modifier functions for the %subscription * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI subscription_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< subscription_type, char > subscription_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const subscription_type& subscription () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ subscription_type& subscription (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void subscription (const subscription_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void subscription (::std::auto_ptr< subscription_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ NotificationType (const id_type&, const RegistryObjectList_type&, const subscription_type&); /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes * (auto_ptr version). * * This constructor will try to use the passed values directly * instead of making copies. */ NotificationType (const id_type&, ::std::auto_ptr< RegistryObjectList_type >&, const subscription_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ NotificationType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ NotificationType (const NotificationType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual NotificationType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~NotificationType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< RegistryObjectList_type > RegistryObjectList_; ::xsd::cxx::tree::one< subscription_type > subscription_; //@endcond }; /** * @brief Class corresponding to the %SubscriptionType schema type. * * A Subscription for specified Events in an ebXML V3+ registry. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED SubscriptionType: public ::Jade::OpenGIS::regrep_3_0::RegistryObjectType { public: /** * @name Action * * @brief Accessor and modifier functions for the %Action * sequence element. */ //@{ /** * @brief Element type. */ typedef ::Jade::OpenGIS::regrep_3_0::ActionType Action_type; /** * @brief Element sequence container type. */ typedef ::xsd::cxx::tree::sequence< Action_type > Action_sequence; /** * @brief Element iterator type. */ typedef Action_sequence::iterator Action_iterator; /** * @brief Element constant iterator type. */ typedef Action_sequence::const_iterator Action_const_iterator; /** * @brief Element traits type. */ typedef ::xsd::cxx::tree::traits< Action_type, char > Action_traits; /** * @brief Return a read-only (constant) reference to the element * sequence. * * @return A constant reference to the sequence container. */ const Action_sequence& Action () const; /** * @brief Return a read-write reference to the element sequence. * * @return A reference to the sequence container. */ Action_sequence& Action (); /** * @brief Copy elements from a given sequence. * * @param s A sequence to copy elements from. * * For each element in @a s this function makes a copy and adds it * to the sequence. Note that this operation completely changes the * sequence and all old elements will be lost. */ void Action (const Action_sequence& s); //@} /** * @name selector * * @brief Accessor and modifier functions for the %selector * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI selector_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< selector_type, char > selector_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const selector_type& selector () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ selector_type& selector (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void selector (const selector_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void selector (::std::auto_ptr< selector_type > p); //@} /** * @name startTime * * @brief Accessor and modifier functions for the %startTime * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::date_time startTime_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< startTime_type > startTime_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< startTime_type, char > startTime_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const startTime_optional& startTime () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ startTime_optional& startTime (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void startTime (const startTime_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void startTime (const startTime_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void startTime (::std::auto_ptr< startTime_type > p); //@} /** * @name endTime * * @brief Accessor and modifier functions for the %endTime * optional attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::date_time endTime_type; /** * @brief Attribute optional container type. */ typedef ::xsd::cxx::tree::optional< endTime_type > endTime_optional; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< endTime_type, char > endTime_traits; /** * @brief Return a read-only (constant) reference to the attribute * container. * * @return A constant reference to the optional container. */ const endTime_optional& endTime () const; /** * @brief Return a read-write reference to the attribute container. * * @return A reference to the optional container. */ endTime_optional& endTime (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void endTime (const endTime_type& x); /** * @brief Set the attribute value. * * @param x An optional container with the new value to set. * * If the value is present in @a x then this function makes a copy * of this value and sets it as the new value of the attribute. * Otherwise the attribute container is set the 'not present' state. */ void endTime (const endTime_optional& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly instead * of making a copy. */ void endTime (::std::auto_ptr< endTime_type > p); //@} /** * @name notificationInterval * * @brief Accessor and modifier functions for the %notificationInterval * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::duration notificationInterval_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< notificationInterval_type, char > notificationInterval_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const notificationInterval_type& notificationInterval () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ notificationInterval_type& notificationInterval (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void notificationInterval (const notificationInterval_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void notificationInterval (::std::auto_ptr< notificationInterval_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const notificationInterval_type& notificationInterval_default_value (); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ SubscriptionType (const id_type&, const selector_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ SubscriptionType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ SubscriptionType (const SubscriptionType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual SubscriptionType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~SubscriptionType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: Action_sequence Action_; ::xsd::cxx::tree::one< selector_type > selector_; startTime_optional startTime_; endTime_optional endTime_; ::xsd::cxx::tree::one< notificationInterval_type > notificationInterval_; static const notificationInterval_type notificationInterval_default_value_; //@endcond }; /** * @brief Class corresponding to the %ActionType schema type. * * Abstract Base type for all types of Actions. * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED ActionType: public ::xml_schema::type { public: /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ ActionType (); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ActionType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ActionType (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ ActionType (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ ActionType (const ActionType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual ActionType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~ActionType (); }; /** * @brief Class corresponding to the %NotifyActionType schema type. * * Abstract Base type for all types of Notify Actions * * @nosubgrouping */ class JADE_OPENGIS_REGREP_3_0_SHARED NotifyActionType: public ::Jade::OpenGIS::regrep_3_0::ActionType { public: /** * @name notificationOption * * @brief Accessor and modifier functions for the %notificationOption * optional attribute with a default value. */ //@{ /** * @brief Attribute type. */ typedef ::Jade::OpenGIS::regrep_3_0::referenceURI notificationOption_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< notificationOption_type, char > notificationOption_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const notificationOption_type& notificationOption () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ notificationOption_type& notificationOption (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void notificationOption (const notificationOption_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void notificationOption (::std::auto_ptr< notificationOption_type > p); /** * @brief Return the default value for the attribute. * * @return A read-only (constant) reference to the attribute's * default value. */ static const notificationOption_type& notificationOption_default_value (); //@} /** * @name endPoint * * @brief Accessor and modifier functions for the %endPoint * required attribute. */ //@{ /** * @brief Attribute type. */ typedef ::xml_schema::uri endPoint_type; /** * @brief Attribute traits type. */ typedef ::xsd::cxx::tree::traits< endPoint_type, char > endPoint_traits; /** * @brief Return a read-only (constant) reference to the attribute. * * @return A constant reference to the attribute. */ const endPoint_type& endPoint () const; /** * @brief Return a read-write reference to the attribute. * * @return A reference to the attribute. */ endPoint_type& endPoint (); /** * @brief Set the attribute value. * * @param x A new value to set. * * This function makes a copy of its argument and sets it as * the new value of the attribute. */ void endPoint (const endPoint_type& x); /** * @brief Set the attribute value without copying. * * @param p A new value to use. * * This function will try to use the passed value directly * instead of making a copy. */ void endPoint (::std::auto_ptr< endPoint_type > p); //@} /** * @name Constructors */ //@{ /** * @brief Create an instance from the ultimate base and * initializers for required elements and attributes. */ NotifyActionType (const endPoint_type&); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ NotifyActionType (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ NotifyActionType (const NotifyActionType& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual NotifyActionType* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; //@} /** * @brief Destructor. */ virtual ~NotifyActionType (); // Implementation. // //@cond protected: void parse (::xsd::cxx::xml::dom::parser< char >&, ::xml_schema::flags); protected: ::xsd::cxx::tree::one< notificationOption_type > notificationOption_; static const notificationOption_type notificationOption_default_value_; ::xsd::cxx::tree::one< endPoint_type > endPoint_; //@endcond }; /** * @brief Enumeration class corresponding to the %conformanceProfile * schema type. */ class JADE_OPENGIS_REGREP_3_0_SHARED conformanceProfile: public ::xml_schema::ncname { public: /** * @brief Underlying enum type. */ enum value { registryFull, registryLite }; /** * @brief Create an instance from the underlying enum value. * * @param v A enum value. */ conformanceProfile (value v); /** * @brief Create an instance from a C string. * * @param v A string value. */ conformanceProfile (const char* v); /** * @brief Create an instance from a string. * * @param v A string value. */ conformanceProfile (const ::std::string& v); /** * @brief Create an instance from the base value. * * @param v A base value. */ conformanceProfile (const ::xml_schema::ncname& v); /** * @brief Create an instance from a DOM element. * * @param e A DOM element to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ conformanceProfile (const ::xercesc::DOMElement& e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a DOM attribute. * * @param a A DOM attribute to extract the data from. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ conformanceProfile (const ::xercesc::DOMAttr& a, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Create an instance from a string fragment. * * @param s A string fragment to extract the data from. * @param e A pointer to DOM element containing the string fragment. * @param f Flags to create the new instance with. * @param c A pointer to the object that will contain the new * instance. */ conformanceProfile (const ::std::string& s, const ::xercesc::DOMElement* e, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy constructor. * * @param x An instance to make a copy of. * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * * For polymorphic object models use the @c _clone function instead. */ conformanceProfile (const conformanceProfile& x, ::xml_schema::flags f = 0, ::xml_schema::container* c = 0); /** * @brief Copy the instance polymorphically. * * @param f Flags to create the copy with. * @param c A pointer to the object that will contain the copy. * @return A pointer to the dynamically allocated copy. * * This function ensures that the dynamic type of the instance is * used for copying and should be used for polymorphic object * models instead of the copy constructor. */ virtual conformanceProfile* _clone (::xml_schema::flags f = 0, ::xml_schema::container* c = 0) const; /** * @brief Assign the underlying enum value. * * @param v A enum value. * @return A refernce to the instance. */ conformanceProfile& operator= (value v); /** * @brief Implicit conversion operator to the underlying * enum value. * * @return A enum value. */ virtual operator value () const { return _xsd_conformanceProfile_convert (); } //@cond protected: value _xsd_conformanceProfile_convert () const; public: static const char* const _xsd_conformanceProfile_literals_[2]; static const value _xsd_conformanceProfile_indexes_[2]; //@endcond }; } } } #include #include #include #include namespace Jade { namespace OpenGIS { namespace regrep_3_0 { /** * @name Parsing functions for the %RegistryPackage document root. */ //@{ /** * @brief Parse a URI or a local file. * * @param uri A URI or a local file name. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function uses exceptions to report parsing errors. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (const ::std::string& uri, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a URI or a local file with an error handler. * * @param uri A URI or a local file name. * @param eh An error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (const ::std::string& uri, ::xml_schema::error_handler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a URI or a local file with a Xerces-C++ DOM error * handler. * * @param uri A URI or a local file name. * @param eh A Xerces-C++ DOM error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (const ::std::string& uri, ::xercesc::DOMErrorHandler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream. * * @param is A standrad input stream. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function uses exceptions to report parsing errors. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with an error handler. * * @param is A standrad input stream. * @param eh An error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, ::xml_schema::error_handler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with a Xerces-C++ DOM error * handler. * * @param is A standrad input stream. * @param eh A Xerces-C++ DOM error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, ::xercesc::DOMErrorHandler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with a resource id. * * @param is A standrad input stream. * @param id A resource id. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * The resource id is used to identify the document being parsed in * diagnostics as well as to resolve relative paths. * * This function uses exceptions to report parsing errors. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, const ::std::string& id, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with a resource id and an * error handler. * * @param is A standrad input stream. * @param id A resource id. * @param eh An error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * The resource id is used to identify the document being parsed in * diagnostics as well as to resolve relative paths. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, const ::std::string& id, ::xml_schema::error_handler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a standard input stream with a resource id and a * Xerces-C++ DOM error handler. * * @param is A standrad input stream. * @param id A resource id. * @param eh A Xerces-C++ DOM error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * The resource id is used to identify the document being parsed in * diagnostics as well as to resolve relative paths. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::std::istream& is, const ::std::string& id, ::xercesc::DOMErrorHandler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ input source. * * @param is A Xerces-C++ input source. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function uses exceptions to report parsing errors. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::xercesc::InputSource& is, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ input source with an error handler. * * @param is A Xerces-C++ input source. * @param eh An error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::xercesc::InputSource& is, ::xml_schema::error_handler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ input source with a Xerces-C++ DOM * error handler. * * @param is A Xerces-C++ input source. * @param eh A Xerces-C++ DOM error handler. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function reports parsing errors by calling the error handler. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::xercesc::InputSource& is, ::xercesc::DOMErrorHandler& eh, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ DOM document. * * @param d A Xerces-C++ DOM document. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (const ::xercesc::DOMDocument& d, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); /** * @brief Parse a Xerces-C++ DOM document. * * @param d A pointer to the Xerces-C++ DOM document. * @param f Parsing flags. * @param p Parsing properties. * @return A pointer to the root of the object model. * * This function is normally used together with the keep_dom and * own_dom parsing flags to assign ownership of the DOM document * to the object model. */ JADE_OPENGIS_REGREP_3_0_SHARED ::std::auto_ptr< ::Jade::OpenGIS::regrep_3_0::RegistryPackageType > RegistryPackage (::xml_schema::dom::auto_ptr< ::xercesc::DOMDocument >& d, ::xml_schema::flags f = 0, const ::xml_schema::properties& p = ::xml_schema::properties ()); //@} } } } #include #include #include #include #include namespace Jade { namespace OpenGIS { namespace regrep_3_0 { JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const referenceURI&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const referenceURI&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const referenceURI&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const String4&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const String4&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const String4&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const String8&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const String8&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const String8&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const String16&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const String16&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const String16&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const String32&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const String32&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const String32&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ShortName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const ShortName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const ShortName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const LongName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const LongName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const LongName&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const FreeFormText&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const FreeFormText&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const FreeFormText&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const InternationalStringType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const LocalizedStringType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const SlotType1&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ValueListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const SlotListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const IdentifiableType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ObjectRefType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ObjectRefListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const RegistryObjectType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const RegistryObjectListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const AssociationType1&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const AuditableEventType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ClassificationType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ClassificationNodeType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ClassificationSchemeType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ExternalIdentifierType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ExternalLinkType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ExtrinsicObjectType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const OrganizationType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const PersonNameType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const EmailAddressType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const PostalAddressType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const VersionInfoType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const RegistryPackageType&); /** * @name Serialization functions for the %RegistryPackage document root. */ //@{ /** * @brief Serialize to a standard output stream. * * @param os A standrad output stream. * @param x An object model to serialize. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function uses exceptions to report serialization errors. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::std::ostream& os, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a standard output stream with an error handler. * * @param os A standrad output stream. * @param x An object model to serialize. * @param eh An error handler. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function reports serialization errors by calling the error * handler. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::std::ostream& os, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xml_schema::error_handler& eh, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a standard output stream with a Xerces-C++ DOM * error handler. * * @param os A standrad output stream. * @param x An object model to serialize. * @param eh A Xerces-C++ DOM error handler. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function reports serialization errors by calling the error * handler. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::std::ostream& os, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xercesc::DOMErrorHandler& eh, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a Xerces-C++ XML format target. * * @param ft A Xerces-C++ XML format target. * @param x An object model to serialize. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function uses exceptions to report serialization errors. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::xercesc::XMLFormatTarget& ft, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a Xerces-C++ XML format target with an error * handler. * * @param ft A Xerces-C++ XML format target. * @param x An object model to serialize. * @param eh An error handler. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function reports serialization errors by calling the error * handler. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::xercesc::XMLFormatTarget& ft, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xml_schema::error_handler& eh, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to a Xerces-C++ XML format target with a * Xerces-C++ DOM error handler. * * @param ft A Xerces-C++ XML format target. * @param x An object model to serialize. * @param eh A Xerces-C++ DOM error handler. * @param m A namespace information map. * @param e A character encoding to produce XML in. * @param f Serialization flags. * * This function reports serialization errors by calling the error * handler. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::xercesc::XMLFormatTarget& ft, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xercesc::DOMErrorHandler& eh, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), const ::std::string& e = "UTF-8", ::xml_schema::flags f = 0); /** * @brief Serialize to an existing Xerces-C++ DOM document. * * @param d A Xerces-C++ DOM document. * @param x An object model to serialize. * @param f Serialization flags. * * Note that it is your responsibility to create the DOM document * with the correct root element as well as set the necessary * namespace mapping attributes. */ JADE_OPENGIS_REGREP_3_0_SHARED void RegistryPackage (::xercesc::DOMDocument& d, const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, ::xml_schema::flags f = 0); /** * @brief Serialize to a new Xerces-C++ DOM document. * * @param x An object model to serialize. * @param m A namespace information map. * @param f Serialization flags. * @return A pointer to the new Xerces-C++ DOM document. */ JADE_OPENGIS_REGREP_3_0_SHARED ::xml_schema::dom::auto_ptr< ::xercesc::DOMDocument > RegistryPackage (const ::Jade::OpenGIS::regrep_3_0::RegistryPackageType& x, const ::xml_schema::namespace_infomap& m = ::xml_schema::namespace_infomap (), ::xml_schema::flags f = 0); //@} JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ServiceType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ServiceBindingType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const SpecificationLinkType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const TelephoneNumberType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const TelephoneNumberListType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const PersonType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const UserType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const RegistryType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const FederationType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const AdhocQueryType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const QueryExpressionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const NotificationType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const SubscriptionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const ActionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const ActionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const ActionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const NotifyActionType&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMElement&, const conformanceProfile&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xercesc::DOMAttr&, const conformanceProfile&); JADE_OPENGIS_REGREP_3_0_SHARED void operator<< (::xml_schema::list_stream&, const conformanceProfile&); } } } #include // Begin epilogue. // // // End epilogue. #endif // E__WORK_JSMOMS_JADE_JADE_OPEN_GIS_SCHEMAS_REGREP_3_0_RIM_H From boris at codesynthesis.com Fri Aug 15 04:16:37 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Fri Aug 15 04:21:58 2014 Subject: [xsd-users] Error report for XSD-4.0 In-Reply-To: References: Message-ID: Hi Alexander, alexander.gosling@kongsberg.com writes: > 1. libxsd\xsd\cxx\tree\serialization.txx does not compile in our environment. > I had to change line 104 from > DOMDocument& doc (*e.getOwnerDocument ()); > to > ::xercesc::DOMDocument& doc (*e.getOwnerDocument ()); > which I suppose is exactly the same declaration, only a little bit more > specific. That's very strange. We have tested 4.0.0 with VC 2012 and this code was definitely compiled without any errors. Could you open the 'library' example and try to build it, to see if you get the same error? > 2. For a number of schemas from opengis.org, the include statement to > xml.h is wrong in the generated code > > The include statement generated with 4.0 is: > #include > while generated with 3.3.0 it is: > #include > > The generation is done with exactly the same command line. I just tried your example and both XSD 4.0.0 and XSD 3.3.0 generate the same #include for this command line: xsd cxx-tree --location-map http://www.w3.org/2001/xml.xsd=/tmp/xml.xsd --output-dir /tmp rim.xsd I.e., they both have '#include "/tmp/xml.hxx"'. My guess is that you have some --include-regex options (perhaps in the .options files not shown?) that translate such paths and that don't work the same in XSD 4.0.0 for some reason. If you have such options and can show them, then I could take a look. Boris From xsd-users at oli-obk.de Fri Aug 15 05:50:29 2014 From: xsd-users at oli-obk.de (Oliver Schneider) Date: Fri Aug 15 05:50:33 2014 Subject: [xsd-users] template type_(const C*) constructor creates unexpected empty copies of any pointer Message-ID: <53EDD7E5.9030500@oli-obk.de> Hi Boris, i have a function taking a "const ::xml_schema::type&" argument. If i pass (by accident) any pointer to this function, it will (with MSVC) happily accept it and create an empty type object. I suggest adding an "explicit" before the templated type_ constructor. greetings /oliver From boris at codesynthesis.com Mon Aug 18 06:29:33 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Mon Aug 18 06:34:53 2014 Subject: [xsd-users] template type_(const C*) constructor creates unexpected empty copies of any pointer In-Reply-To: <53EDD7E5.9030500@oli-obk.de> References: <53EDD7E5.9030500@oli-obk.de> Message-ID: Hi Oliver, Oliver Schneider writes: > I suggest adding an "explicit" before the templated type_ constructor. Good idea, added. Thanks for the report/suggestion! Boris From alexander.gosling at kongsberg.com Mon Aug 25 10:57:35 2014 From: alexander.gosling at kongsberg.com (alexander.gosling@kongsberg.com) Date: Tue Aug 26 04:26:03 2014 Subject: [xsd-users] Error report for XSD-4.0 In-Reply-To: References: Message-ID: Hello Boris, Some clarifications: 1. I did not mean that this is an error in your code. It is just that it is not robust to what happens in user code it is included into. In our case msxml.h gets included into our code for a reason I am not able to find within 30 minutes of work. By not prefix DOMDocument by its namespace in the XSD code it causes an ambiguity between msxml::DOMDocument and xercesc::DOMDocument. I think it is a good practice to always prefix types with their namespace in API include files as you can not know what context it is included into. I do not see why DOMDocument should not be prefixed by its namespace in serialization.txx especially since it is already done for other xercesc types in the same file in several places already. 2. Yes, there are --include-regex expressions in options files. They look like this (Result produced by searching all files): E:\Work\jsmoms\Jade\JadeOpenGIS\res\JadeOpenGIS\JadeOpenGIS-include.opts (4 hits) Line 2: --include-regex %.*/schemas/(.+)%Jade/OpenGIS/$1% Line 3: --include-regex %.*Common/(.+)%Jade/OpenGIS/Common/$1% Line 15: # --include-regex %.*xml-mod.h%Jade/OpenGIS/gml/3.1.1/smil/xml-mod.h% Line 17: --include-regex %.*xml-mod.h%Jade/OpenGIS/xml/xml.h% E:\Work\jsmoms\Jade\JadeWxS\cpp\src\JadeWxS-WPS\JadeWxS-WPS.opts (1 hits) Line 21: --include-regex %.*ExecuteResponses.h%Jade/WxS/WPS/1.0.0/ExecuteResponses.h% I have used some time working around other build issues not concerned with XSD to be sure of my previous conclusion. The conclusion is that given the exact same command line and options files, version 3.3.0 of xsd.exe produces correct include statement while version 4.0 of xsd.exe produces wrong result. The problem may as you suggest be in different handling of --include-regex 3. We have managed to strip down the SW tree to a manageable example supplied in the attached zip file. - A script file with the command to run xsd.exe is at the top of the tree called generate.bat. - The source file atom.xsd file - Several other source directories referenced in mapping commands. - Several options files - The script assumes that the root of this file tree is at E:/. If you install it elsewhere you must modify the script. - The resulting files are atom.h and atom.cpp in the folder E:\TestXsdKda\jsmoms_RelWithDebInfo\Jade\JadeOpenGIS\include\Jade\OpenGIS\atom\1.0 - There are cpp and h files there to compare against. They have suffix 4.0AtKda -- alex -----Original Message----- From: Boris Kolpackov [mailto:boris@codesynthesis.com] Sent: 15. august 2014 10:17 To: Gosling, Alexander Cc: xsd-users@codesynthesis.com Subject: Re: [xsd-users] Error report for XSD-4.0 Hi Alexander, alexander.gosling@kongsberg.com writes: > 1. libxsd\xsd\cxx\tree\serialization.txx does not compile in our environment. > I had to change line 104 from > DOMDocument& doc (*e.getOwnerDocument ()); to > ::xercesc::DOMDocument& doc (*e.getOwnerDocument ()); which > I suppose is exactly the same declaration, only a little bit more > specific. That's very strange. We have tested 4.0.0 with VC 2012 and this code was definitely compiled without any errors. Could you open the 'library' example and try to build it, to see if you get the same error? > 2. For a number of schemas from opengis.org, the include statement to > xml.h is wrong in the generated code > > The include statement generated with 4.0 is: > #include > ml.h> > while generated with 3.3.0 it is: > #include > > The generation is done with exactly the same command line. I just tried your example and both XSD 4.0.0 and XSD 3.3.0 generate the same #include for this command line: xsd cxx-tree --location-map http://www.w3.org/2001/xml.xsd=/tmp/xml.xsd --output-dir /tmp rim.xsd I.e., they both have '#include "/tmp/xml.hxx"'. My guess is that you have some --include-regex options (perhaps in the .options files not shown?) that translate such paths and that don't work the same in XSD 4.0.0 for some reason. If you have such options and can show them, then I could take a look. Boris ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. -------------- next part -------------- A non-text attachment was scrubbed... Name: TestXsdKda.zip Type: application/x-zip-compressed Size: 1445956 bytes Desc: TestXsdKda.zip Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20140825/98e89063/TestXsdKda-0001.bin From boris at codesynthesis.com Wed Aug 27 07:13:42 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Wed Aug 27 07:19:43 2014 Subject: [xsd-users] Error report for XSD-4.0 In-Reply-To: References: Message-ID: Hi Alexander, alexander.gosling@kongsberg.com writes: > 1. > I did not mean that this is an error in your code. It is just that it > is not robust to what happens in user code it is included into. In our > case msxml.h gets included into our code for a reason I am not able to > find within 30 minutes of work. Ouch ;-). One thing you can try is add an #error directive as a first line in msxml.h (first make a backup copy though): #error MSXML is included! Then try to rebuild your application. If I remember correctly, VC++ will show you the #include stack that triggered the error. > By not prefix DOMDocument by its namespace in the XSD code it causes > an ambiguity between msxml::DOMDocument and xercesc::DOMDocument. > I think it is a good practice to always prefix types with their > namespace in API include files as you can not know what context > it is included into. The DOMDocument name in question is inside a function body. At the beginning of this body there is 'using namespace xercesc'. If we can't rely on this working, then we will have to fully qualify all names all the time. This is a huge burden and code readability and maintainability nightmare. Especially seeing that there is more and more template code (which has to be in the headers). Plus, this is still not going to work if someone does this: #define DOMDocument MyStuff The point I am trying to make is that we have to draw a line somewhere when trying to be "robust" in the face of "incorrect" client code. In your case, it is not the fact that msxml.h is includes. There is also should be something like this somewhere: using msxml::DOMDocument; Which essentially makes MSXML's name unqualified. This is a well known "do not do this" in C++. >2. > Line 17: --include-regex %.*xml-mod.h%Jade/OpenGIS/xml/xml.h% I noticed that the schema that you are compiling is called xml.xsd, not xml-mod.xsd. So the above should probably be changed to xml.h (and in other places). > 3. I will look into this in the next few days. Boris From matthis.krause at areva.com Thu Aug 28 08:57:48 2014 From: matthis.krause at areva.com (KRAUSE Matthis (AREVA)) Date: Thu Aug 28 08:57:51 2014 Subject: [xsd-users] Adding custom code to getter functions of all types. Message-ID: <9ED88C5956C5B5499D95ADECCF14BF2EE3FA14@FGEER00MX03.fdom.ad.corp> Hello, I am currently playing around with C++/Tree mapping in a project and have a question: I would like to be able to generate a log which contains information about which values from an xml file/object model have been accessed and which have not. Would it be possible to customize the default behavior in such a way to allow for this information to be captured? I already looked into generating every type from the schema file as a base class which inherits from a custom class but I don't know if and how I would be able to customize the "getter" functions this way. Ideally I would still like to access values normally, meaning that if I have a value "...", I want to access it via "rootpointer.apple()" (if it is not an optional value). Can you maybe point me into the right direction? Regards, Matthis From boris at codesynthesis.com Fri Aug 29 04:56:53 2014 From: boris at codesynthesis.com (Boris Kolpackov) Date: Fri Aug 29 05:02:53 2014 Subject: [xsd-users] Adding custom code to getter functions of all types. In-Reply-To: <9ED88C5956C5B5499D95ADECCF14BF2EE3FA14@FGEER00MX03.fdom.ad.corp> References: <9ED88C5956C5B5499D95ADECCF14BF2EE3FA14@FGEER00MX03.fdom.ad.corp> Message-ID: Hi Matthis, KRAUSE Matthis (AREVA) writes: > I would like to be able to generate a log which contains information > about which values from an xml file/object model have been accessed > and which have not. > > Would it be possible to customize the default behavior in such a way > to allow for this information to be captured? > > I already looked into generating every type from the schema file as a > base class which inherits from a custom class but I don't know if and > how I would be able to customize the "getter" functions this way. For this to work you will have to wrap every accessor generated by XSD, which could be a lot of work/code for any non-trivial schema. The other option that I thought of is to instrument the runtime (libxsd), specifically, the 'one', 'optional', and 'sequence' containers that are used by the generated code to actually store the data. This is doable but the problem is you won't know the names of the data members that are stored. The best you could do is print their addresses which will probably be pretty useless in your case. The proper way to do this will be to generate some custom code in each accessor. It will be quite easy if you are prepared to modify and build the XSD compiler directly. The other idea that I've been toying with is support for a code generation plugin in XSD. That would handle your use case perfectly. Would anyone else be interested in this? Boris From alexander.gosling at kongsberg.com Fri Aug 29 06:13:10 2014 From: alexander.gosling at kongsberg.com (alexander.gosling@kongsberg.com) Date: Fri Aug 29 06:13:21 2014 Subject: [xsd-users] Error report for XSD-4.0 In-Reply-To: References: Message-ID: Hello Boris, Regarding this. Do you have any news? 3. We have managed to strip down the SW tree to a manageable example supplied in the attached zip file. - A script file with the command to run xsd.exe is at the top of the tree called generate.bat. - The source file atom.xsd file - Several other source directories referenced in mapping commands. - Several options files - The script assumes that the root of this file tree is at E:/. If you install it elsewhere you must modify the script. - The resulting files are atom.h and atom.cpp in the folder E:\TestXsdKda\jsmoms_RelWithDebInfo\Jade\JadeOpenGIS\include\Jade\OpenGIS\atom\1.0 - There are cpp and h files there to compare against. They have suffix 4.0AtKda > 3. I will look into this in the next few days. Boris -- alex ________________________________ CONFIDENTIALITY This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly. From roger at autodata.no Fri Aug 29 09:55:52 2014 From: roger at autodata.no (roger) Date: Fri Aug 29 09:54:53 2014 Subject: [xsd-users] Serialization of inherited class not providing attributes from base class Message-ID: <1409320552.27296.87.camel@localhost> Greetings, I am using xsd to generate a Peppol/EHF version 2 invoice based on the Oasis UBL-2.1 set of schema definitions. http://docs.oasis-open.org/ubl/os-UBL-2.1/ (everything is in the .zip file) I have successfully used XSD to generate invoices with UBL version 2.0, but in this version I have hit a snag with a set of attributes that depend on a base class way down at the bottom of the specifications. In the file UBL-UnqualifiedDataTypes-2.1.hxx, there are a group of classes defined that inherit from classes of the same name from the file CCTS_CCT_SchemaModule-2.1.hxx. example: UBL-CommonBasicComponents-2.1.hxx has a class that inherits from CodeType which is in turn inherited from a class in the Invoice document: class DocumentCurrencyCodeType: public ::UnqualifiedDataTypes_2::CodeType which is found in: UBL-UnqualifiedDataTypes_2.hxx: class CodeType: public ::CoreComponentTypeSchemaModule_2::CodeType "CoreComponentTypeSchemaModule_2" is in CCTS_CCT_SchemaModule-2.1.hxx: This CodeType has an optional listID which is a locally defined typedef xsd::normalized-string: _optional& listID () Although the .xsd file defines listID as optional, it is required by the National purchasing authority and the invoices are not accepted without it. In my code, I create a CodeType, and populate the listID thusly: CoreComponentTypeSchemaModule_2::CodeType krone("NOK"); const CoreComponentTypeSchemaModule_2::CodeType::listID_type p = normalized_string("ISO4217"); //this didn't work either... krone.listID("ISO4217"); krone.listID(p); Then I add it to the Invoice Document as a DocumentCurrencyCode, which is an "optional but required" element inheriting from UBL-UnqualifiedDataTypes::CodeType. myxmlfakt.DocumentCurrencyCode(krone); When I serialize the invoice, I only get: NOK instead of the expected: NOK Can this have to do with the fact that two of the base classes have the same name, or is it maybe that the inheritance chain is too long? Thanks in advance -- Roger Evans, Vitec Autodata Norge A/S mob: +47 93 25 92 36