soap4r 1.5.5.20061022
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/bin/wsdl2ruby.rb +131 -0
- data/bin/xsd2ruby.rb +82 -0
- data/lib/soap/XMLSchemaDatatypes.rb +9 -0
- data/lib/soap/XMLSchemaDatatypes1999.rb +10 -0
- data/lib/soap/attachment.rb +108 -0
- data/lib/soap/baseData.rb +992 -0
- data/lib/soap/cgistub.rb +9 -0
- data/lib/soap/charset.rb +9 -0
- data/lib/soap/compat.rb +182 -0
- data/lib/soap/driver.rb +9 -0
- data/lib/soap/element.rb +266 -0
- data/lib/soap/encodingstyle/aspDotNetHandler.rb +207 -0
- data/lib/soap/encodingstyle/handler.rb +109 -0
- data/lib/soap/encodingstyle/literalHandler.rb +241 -0
- data/lib/soap/encodingstyle/soapHandler.rb +598 -0
- data/lib/soap/generator.rb +264 -0
- data/lib/soap/header/handler.rb +60 -0
- data/lib/soap/header/handlerset.rb +70 -0
- data/lib/soap/header/simplehandler.rb +44 -0
- data/lib/soap/httpconfigloader.rb +119 -0
- data/lib/soap/mapping.rb +12 -0
- data/lib/soap/mapping/encodedregistry.rb +531 -0
- data/lib/soap/mapping/factory.rb +372 -0
- data/lib/soap/mapping/literalregistry.rb +321 -0
- data/lib/soap/mapping/mapping.rb +561 -0
- data/lib/soap/mapping/registry.rb +258 -0
- data/lib/soap/mapping/rubytypeFactory.rb +475 -0
- data/lib/soap/mapping/typeMap.rb +82 -0
- data/lib/soap/mapping/wsdlencodedregistry.rb +253 -0
- data/lib/soap/mapping/wsdlliteralregistry.rb +246 -0
- data/lib/soap/mappingRegistry.rb +9 -0
- data/lib/soap/marshal.rb +59 -0
- data/lib/soap/mimemessage.rb +241 -0
- data/lib/soap/namespace.rb +9 -0
- data/lib/soap/netHttpClient.rb +204 -0
- data/lib/soap/parser.rb +251 -0
- data/lib/soap/processor.rb +66 -0
- data/lib/soap/property.rb +333 -0
- data/lib/soap/proxy.rb +14 -0
- data/lib/soap/qname.rb +9 -0
- data/lib/soap/rpc/cgistub.rb +214 -0
- data/lib/soap/rpc/driver.rb +245 -0
- data/lib/soap/rpc/element.rb +330 -0
- data/lib/soap/rpc/httpserver.rb +143 -0
- data/lib/soap/rpc/proxy.rb +563 -0
- data/lib/soap/rpc/router.rb +602 -0
- data/lib/soap/rpc/rpc.rb +25 -0
- data/lib/soap/rpc/soaplet.rb +162 -0
- data/lib/soap/rpc/standaloneServer.rb +43 -0
- data/lib/soap/rpcRouter.rb +9 -0
- data/lib/soap/rpcUtils.rb +9 -0
- data/lib/soap/server.rb +9 -0
- data/lib/soap/soap.rb +150 -0
- data/lib/soap/standaloneServer.rb +9 -0
- data/lib/soap/streamHandler.rb +258 -0
- data/lib/soap/wsdlDriver.rb +580 -0
- data/lib/wsdl/binding.rb +65 -0
- data/lib/wsdl/data.rb +64 -0
- data/lib/wsdl/definitions.rb +250 -0
- data/lib/wsdl/documentation.rb +32 -0
- data/lib/wsdl/import.rb +80 -0
- data/lib/wsdl/importer.rb +38 -0
- data/lib/wsdl/info.rb +39 -0
- data/lib/wsdl/message.rb +54 -0
- data/lib/wsdl/operation.rb +175 -0
- data/lib/wsdl/operationBinding.rb +116 -0
- data/lib/wsdl/param.rb +85 -0
- data/lib/wsdl/parser.rb +163 -0
- data/lib/wsdl/part.rb +52 -0
- data/lib/wsdl/port.rb +84 -0
- data/lib/wsdl/portType.rb +75 -0
- data/lib/wsdl/service.rb +61 -0
- data/lib/wsdl/soap/address.rb +40 -0
- data/lib/wsdl/soap/binding.rb +49 -0
- data/lib/wsdl/soap/body.rb +56 -0
- data/lib/wsdl/soap/cgiStubCreator.rb +88 -0
- data/lib/wsdl/soap/classDefCreator.rb +340 -0
- data/lib/wsdl/soap/classDefCreatorSupport.rb +131 -0
- data/lib/wsdl/soap/clientSkeltonCreator.rb +93 -0
- data/lib/wsdl/soap/complexType.rb +166 -0
- data/lib/wsdl/soap/data.rb +42 -0
- data/lib/wsdl/soap/definitions.rb +151 -0
- data/lib/wsdl/soap/driverCreator.rb +110 -0
- data/lib/wsdl/soap/element.rb +28 -0
- data/lib/wsdl/soap/encodedMappingRegistryCreator.rb +117 -0
- data/lib/wsdl/soap/fault.rb +56 -0
- data/lib/wsdl/soap/header.rb +86 -0
- data/lib/wsdl/soap/headerfault.rb +56 -0
- data/lib/wsdl/soap/literalMappingRegistryCreator.rb +188 -0
- data/lib/wsdl/soap/mappingRegistryCreator.rb +53 -0
- data/lib/wsdl/soap/mappingRegistryCreatorSupport.rb +233 -0
- data/lib/wsdl/soap/methodDefCreator.rb +253 -0
- data/lib/wsdl/soap/operation.rb +122 -0
- data/lib/wsdl/soap/servantSkeltonCreator.rb +78 -0
- data/lib/wsdl/soap/standaloneServerStubCreator.rb +98 -0
- data/lib/wsdl/soap/wsdl2ruby.rb +196 -0
- data/lib/wsdl/types.rb +44 -0
- data/lib/wsdl/wsdl.rb +23 -0
- data/lib/wsdl/xmlSchema/all.rb +24 -0
- data/lib/wsdl/xmlSchema/annotation.rb +34 -0
- data/lib/wsdl/xmlSchema/any.rb +56 -0
- data/lib/wsdl/xmlSchema/attribute.rb +123 -0
- data/lib/wsdl/xmlSchema/choice.rb +55 -0
- data/lib/wsdl/xmlSchema/complexContent.rb +88 -0
- data/lib/wsdl/xmlSchema/complexExtension.rb +104 -0
- data/lib/wsdl/xmlSchema/complexRestriction.rb +92 -0
- data/lib/wsdl/xmlSchema/complexType.rb +152 -0
- data/lib/wsdl/xmlSchema/content.rb +74 -0
- data/lib/wsdl/xmlSchema/data.rb +90 -0
- data/lib/wsdl/xmlSchema/element.rb +158 -0
- data/lib/wsdl/xmlSchema/enumeration.rb +36 -0
- data/lib/wsdl/xmlSchema/import.rb +65 -0
- data/lib/wsdl/xmlSchema/importer.rb +87 -0
- data/lib/wsdl/xmlSchema/include.rb +54 -0
- data/lib/wsdl/xmlSchema/length.rb +35 -0
- data/lib/wsdl/xmlSchema/list.rb +48 -0
- data/lib/wsdl/xmlSchema/maxlength.rb +35 -0
- data/lib/wsdl/xmlSchema/minlength.rb +35 -0
- data/lib/wsdl/xmlSchema/parser.rb +166 -0
- data/lib/wsdl/xmlSchema/pattern.rb +36 -0
- data/lib/wsdl/xmlSchema/schema.rb +144 -0
- data/lib/wsdl/xmlSchema/sequence.rb +51 -0
- data/lib/wsdl/xmlSchema/simpleContent.rb +69 -0
- data/lib/wsdl/xmlSchema/simpleExtension.rb +54 -0
- data/lib/wsdl/xmlSchema/simpleRestriction.rb +91 -0
- data/lib/wsdl/xmlSchema/simpleType.rb +80 -0
- data/lib/wsdl/xmlSchema/unique.rb +34 -0
- data/lib/wsdl/xmlSchema/xsd2ruby.rb +107 -0
- data/lib/xsd/charset.rb +187 -0
- data/lib/xsd/codegen.rb +12 -0
- data/lib/xsd/codegen/classdef.rb +203 -0
- data/lib/xsd/codegen/commentdef.rb +34 -0
- data/lib/xsd/codegen/gensupport.rb +168 -0
- data/lib/xsd/codegen/methoddef.rb +70 -0
- data/lib/xsd/codegen/moduledef.rb +191 -0
- data/lib/xsd/datatypes.rb +1282 -0
- data/lib/xsd/datatypes1999.rb +20 -0
- data/lib/xsd/iconvcharset.rb +33 -0
- data/lib/xsd/mapping.rb +42 -0
- data/lib/xsd/namedelements.rb +124 -0
- data/lib/xsd/ns.rb +146 -0
- data/lib/xsd/qname.rb +78 -0
- data/lib/xsd/xmlparser.rb +61 -0
- data/lib/xsd/xmlparser/parser.rb +96 -0
- data/lib/xsd/xmlparser/rexmlparser.rb +54 -0
- data/lib/xsd/xmlparser/xmlparser.rb +50 -0
- data/lib/xsd/xmlparser/xmlscanner.rb +147 -0
- data/test/16runner.rb +68 -0
- data/test/interopR2/README.txt +2 -0
- data/test/interopR2/SOAPBuildersInterop_R2.wsdl +461 -0
- data/test/interopR2/SOAPBuildersInterop_R2GrB.wsdl +19 -0
- data/test/interopR2/base.rb +288 -0
- data/test/interopR2/client.NetRemoting.rb +17 -0
- data/test/interopR2/client.NetRemoting.rb.result +3410 -0
- data/test/interopR2/client.NetRemoting_Base.log +6279 -0
- data/test/interopR2/client.NetRemoting_GroupB.log +1188 -0
- data/test/interopR2/client.rb +1228 -0
- data/test/interopR2/client4S4C.rb +15 -0
- data/test/interopR2/client4S4C2.rb +14 -0
- data/test/interopR2/client4S4C2_Base.log +4955 -0
- data/test/interopR2/client4S4C2_GroupB.log +1000 -0
- data/test/interopR2/client4S4C_Base.log +4635 -0
- data/test/interopR2/client4S4C_GroupB.log +900 -0
- data/test/interopR2/clientASP.NET.rb +17 -0
- data/test/interopR2/clientASP.NET_Base.log +5468 -0
- data/test/interopR2/clientASP.NET_GroupB.log +977 -0
- data/test/interopR2/clientApacheAxis.rb +16 -0
- data/test/interopR2/clientApacheAxis_Base.log +3171 -0
- data/test/interopR2/clientApacheAxis_GroupB.log +498 -0
- data/test/interopR2/clientApacheSOAP.rb +17 -0
- data/test/interopR2/clientApacheSOAP_Base.log +3171 -0
- data/test/interopR2/clientBEAWebLogic.rb +17 -0
- data/test/interopR2/clientBEAWebLogic_Base.log +3171 -0
- data/test/interopR2/clientBEAWebLogic_GroupB.log +498 -0
- data/test/interopR2/clientBase.rb +1970 -0
- data/test/interopR2/clientCapeConnect.rb +18 -0
- data/test/interopR2/clientCapeConnect_Base.log +2126 -0
- data/test/interopR2/clientDelphi.rb +19 -0
- data/test/interopR2/clientDelphi_Base.log +0 -0
- data/test/interopR2/clientEasySoap.rb +14 -0
- data/test/interopR2/clientEasySoap_Base.log +6187 -0
- data/test/interopR2/clientEasySoap_GroupB.log +1076 -0
- data/test/interopR2/clientFrontier.rb +25 -0
- data/test/interopR2/clientFrontier_Base.log +5188 -0
- data/test/interopR2/clientGLUE.rb +32 -0
- data/test/interopR2/clientHP.rb +13 -0
- data/test/interopR2/clientHP_Base.log +3171 -0
- data/test/interopR2/clientHP_GroupB.log +498 -0
- data/test/interopR2/clientJAX-RPC.rb +19 -0
- data/test/interopR2/clientJSOAP.rb +14 -0
- data/test/interopR2/clientJSOAP_Base.log +4465 -0
- data/test/interopR2/clientJSOAP_GroupB.log +824 -0
- data/test/interopR2/clientKafkaXSLT.rb +15 -0
- data/test/interopR2/clientKafkaXSLT_Base.log +10299 -0
- data/test/interopR2/clientKafkaXSLT_GroupB.log +1739 -0
- data/test/interopR2/clientMSSOAPToolkit2.0.rb +17 -0
- data/test/interopR2/clientMSSOAPToolkit2.0_Base.log +4805 -0
- data/test/interopR2/clientMSSOAPToolkit2.0_GroupB.log +871 -0
- data/test/interopR2/clientMSSOAPToolkit3.0.rb +17 -0
- data/test/interopR2/clientMSSOAPToolkit3.0_Base.log +5076 -0
- data/test/interopR2/clientMSSOAPToolkit3.0_GroupB.log +908 -0
- data/test/interopR2/clientNuSOAP.rb +19 -0
- data/test/interopR2/clientNuSOAP_Base.log +5076 -0
- data/test/interopR2/clientNuSOAP_GroupB.log +958 -0
- data/test/interopR2/clientNuWave.rb +15 -0
- data/test/interopR2/clientNuWave_Base.log +2019 -0
- data/test/interopR2/clientOpenLink.rb +15 -0
- data/test/interopR2/clientOpenLink_Base.log +6171 -0
- data/test/interopR2/clientOpenLink_GroupB.log +1094 -0
- data/test/interopR2/clientOracle.rb +15 -0
- data/test/interopR2/clientOracle_Base.log +5594 -0
- data/test/interopR2/clientPEAR.rb +18 -0
- data/test/interopR2/clientPEAR_Base.log +6261 -0
- data/test/interopR2/clientPEAR_GroupB.log +1106 -0
- data/test/interopR2/clientPhalanx.rb +18 -0
- data/test/interopR2/clientPhalanx_Base.log +41036 -0
- data/test/interopR2/clientPhalanx_GroupB.log +6519 -0
- data/test/interopR2/clientSIMACE.rb +18 -0
- data/test/interopR2/clientSIMACE_Base.log +6171 -0
- data/test/interopR2/clientSIMACE_GroupB.log +1093 -0
- data/test/interopR2/clientSOAP4R.rb +18 -0
- data/test/interopR2/clientSOAP4R.rb.result +3409 -0
- data/test/interopR2/clientSOAP4R_Base.log +6366 -0
- data/test/interopR2/clientSOAP4R_GroupB.log +1112 -0
- data/test/interopR2/clientSOAP__Lite.rb +14 -0
- data/test/interopR2/clientSQLData.rb +18 -0
- data/test/interopR2/clientSQLData_Base.log +4857 -0
- data/test/interopR2/clientSQLData_GroupB.log +770 -0
- data/test/interopR2/clientSilverStream.rb +17 -0
- data/test/interopR2/clientSilverStream_Base.log +3171 -0
- data/test/interopR2/clientSpray2001.rb +17 -0
- data/test/interopR2/clientSpray2001_Base.log +8187 -0
- data/test/interopR2/clientSpray2001_GroupB.log +1408 -0
- data/test/interopR2/clientSun.rb +19 -0
- data/test/interopR2/clientSun_Base.log +4641 -0
- data/test/interopR2/clientSun_GroupB.log +856 -0
- data/test/interopR2/clientVWOpentalkSoap.rb +19 -0
- data/test/interopR2/clientVWOpentalkSoap_Base.log +5402 -0
- data/test/interopR2/clientVWOpentalkSoap_GroupB.log +972 -0
- data/test/interopR2/clientWASP.rb +19 -0
- data/test/interopR2/clientWASPC.rb +18 -0
- data/test/interopR2/clientWASPC_Base.log +4187 -0
- data/test/interopR2/clientWASPC_GroupB.log +763 -0
- data/test/interopR2/clientWASP_Base.log +5414 -0
- data/test/interopR2/clientWASP_GroupB.log +970 -0
- data/test/interopR2/clientWebMethods.rb +15 -0
- data/test/interopR2/clientWebMethods_Base.log +3075 -0
- data/test/interopR2/clientWebMethods_GroupB.log +483 -0
- data/test/interopR2/clientWhiteMesa.rb +28 -0
- data/test/interopR2/clientWhiteMesa_Base.log +4359 -0
- data/test/interopR2/clientWhiteMesa_GroupB.log +808 -0
- data/test/interopR2/clientWingfoot.rb +15 -0
- data/test/interopR2/clientWingfoot_Base.log +4445 -0
- data/test/interopR2/clientWingfoot_GroupB.log +848 -0
- data/test/interopR2/clientXMLBus.rb +19 -0
- data/test/interopR2/clientXMLBus_Base.log +3075 -0
- data/test/interopR2/clientXMLBus_GroupB.log +483 -0
- data/test/interopR2/clientXMLRPC-EPI.rb +17 -0
- data/test/interopR2/clientXSOAP.rb +14 -0
- data/test/interopR2/clientXSOAP_Base.log +4445 -0
- data/test/interopR2/clientZSI.rb +19 -0
- data/test/interopR2/clienteSOAP.rb +18 -0
- data/test/interopR2/clienteSOAP_Base.log +8728 -0
- data/test/interopR2/clientgSOAP.rb +18 -0
- data/test/interopR2/clientgSOAP_Base.log +4689 -0
- data/test/interopR2/clientgSOAP_GroupB.log +1014 -0
- data/test/interopR2/clientkSOAP.rb +17 -0
- data/test/interopR2/clientkSOAP_Base.log +5625 -0
- data/test/interopR2/iSimonReg.rb +112 -0
- data/test/interopR2/interopResultBase.rb +114 -0
- data/test/interopR2/interopService.rb +247 -0
- data/test/interopR2/result_client.NetRemoting.txt +4593 -0
- data/test/interopR2/rwikiInteropService.rb +105 -0
- data/test/interopR2/server.cgi +270 -0
- data/test/interopR2/server.rb +274 -0
- data/test/interopR2/simonReg.rb +123 -0
- data/test/interopR2/test.sh +49 -0
- data/test/interopR4/client.rb +112 -0
- data/test/runner.rb +9 -0
- data/test/sm11/classDef.rb +156 -0
- data/test/sm11/client.rb +542 -0
- data/test/sm11/driver.rb +183 -0
- data/test/sm11/servant.rb +1067 -0
- data/test/sm11/server.rb +25 -0
- data/test/soap/asp.net/hello.wsdl +96 -0
- data/test/soap/asp.net/test_aspdotnet.rb +112 -0
- data/test/soap/calc/calc.rb +17 -0
- data/test/soap/calc/calc2.rb +29 -0
- data/test/soap/calc/server.cgi +13 -0
- data/test/soap/calc/server.rb +17 -0
- data/test/soap/calc/server2.rb +20 -0
- data/test/soap/calc/test_calc.rb +49 -0
- data/test/soap/calc/test_calc2.rb +53 -0
- data/test/soap/calc/test_calc_cgi.rb +69 -0
- data/test/soap/fault/test_customfault.rb +58 -0
- data/test/soap/header/server.cgi +119 -0
- data/test/soap/header/test_authheader.rb +240 -0
- data/test/soap/header/test_authheader_cgi.rb +121 -0
- data/test/soap/header/test_simplehandler.rb +116 -0
- data/test/soap/helloworld/hw_s.rb +16 -0
- data/test/soap/helloworld/test_helloworld.rb +41 -0
- data/test/soap/literalArrayMapping/amazonEc.rb +4778 -0
- data/test/soap/literalArrayMapping/amazonEcDriver.rb +172 -0
- data/test/soap/literalArrayMapping/amazonresponse.xml +100 -0
- data/test/soap/literalArrayMapping/test_definedarray.rb +36 -0
- data/test/soap/marshal/marshaltestlib.rb +494 -0
- data/test/soap/marshal/test_digraph.rb +56 -0
- data/test/soap/marshal/test_marshal.rb +26 -0
- data/test/soap/marshal/test_struct.rb +47 -0
- data/test/soap/ssl/README +1 -0
- data/test/soap/ssl/ca.cert +23 -0
- data/test/soap/ssl/client.cert +19 -0
- data/test/soap/ssl/client.key +15 -0
- data/test/soap/ssl/server.cert +19 -0
- data/test/soap/ssl/server.key +15 -0
- data/test/soap/ssl/sslsvr.rb +57 -0
- data/test/soap/ssl/subca.cert +21 -0
- data/test/soap/ssl/test_ssl.rb +245 -0
- data/test/soap/struct/test_struct.rb +77 -0
- data/test/soap/styleuse/client.rb +20 -0
- data/test/soap/styleuse/server.rb +86 -0
- data/test/soap/swa/test_file.rb +73 -0
- data/test/soap/test_basetype.rb +976 -0
- data/test/soap/test_custommap.rb +108 -0
- data/test/soap/test_empty.rb +79 -0
- data/test/soap/test_envelopenamespace.rb +92 -0
- data/test/soap/test_httpconfigloader.rb +39 -0
- data/test/soap/test_mapping.rb +59 -0
- data/test/soap/test_no_indent.rb +86 -0
- data/test/soap/test_property.rb +424 -0
- data/test/soap/test_response_as_xml.rb +95 -0
- data/test/soap/test_soapelement.rb +120 -0
- data/test/soap/test_streamhandler.rb +262 -0
- data/test/soap/test_styleuse.rb +333 -0
- data/test/soap/wsdlDriver/README.txt +2 -0
- data/test/soap/wsdlDriver/calc.wsdl +126 -0
- data/test/soap/wsdlDriver/document.wsdl +54 -0
- data/test/soap/wsdlDriver/echo_version.rb +29 -0
- data/test/soap/wsdlDriver/simpletype.wsdl +63 -0
- data/test/soap/wsdlDriver/test_calc.rb +100 -0
- data/test/soap/wsdlDriver/test_document.rb +78 -0
- data/test/soap/wsdlDriver/test_simpletype.rb +87 -0
- data/test/wsdl/abstract/abstract.wsdl +97 -0
- data/test/wsdl/abstract/test_abstract.rb +130 -0
- data/test/wsdl/any/any.wsdl +51 -0
- data/test/wsdl/any/expectedDriver.rb +46 -0
- data/test/wsdl/any/expectedEcho.rb +18 -0
- data/test/wsdl/any/expectedService.rb +42 -0
- data/test/wsdl/any/test_any.rb +193 -0
- data/test/wsdl/axisArray/axisArray.wsdl +60 -0
- data/test/wsdl/axisArray/itemList.rb +14 -0
- data/test/wsdl/axisArray/test_axisarray.rb +69 -0
- data/test/wsdl/choice/choice.wsdl +91 -0
- data/test/wsdl/choice/test_choice.rb +134 -0
- data/test/wsdl/complexcontent/complexContent.wsdl +83 -0
- data/test/wsdl/complexcontent/test_echo.rb +101 -0
- data/test/wsdl/datetime/DatetimeService.rb +44 -0
- data/test/wsdl/datetime/datetime.rb +0 -0
- data/test/wsdl/datetime/datetime.wsdl +45 -0
- data/test/wsdl/datetime/datetimeServant.rb +21 -0
- data/test/wsdl/datetime/test_datetime.rb +82 -0
- data/test/wsdl/document/array/double.wsdl +72 -0
- data/test/wsdl/document/array/test_array.rb +117 -0
- data/test/wsdl/document/document.wsdl +74 -0
- data/test/wsdl/document/number.wsdl +54 -0
- data/test/wsdl/document/ping_nosoapaction.wsdl +66 -0
- data/test/wsdl/document/test_nosoapaction.rb +109 -0
- data/test/wsdl/document/test_number.rb +99 -0
- data/test/wsdl/document/test_rpc.rb +211 -0
- data/test/wsdl/emptycomplextype.wsdl +31 -0
- data/test/wsdl/list/list.wsdl +93 -0
- data/test/wsdl/list/test_list.rb +134 -0
- data/test/wsdl/map/map.wsdl +92 -0
- data/test/wsdl/map/map.xml +43 -0
- data/test/wsdl/map/test_map.rb +99 -0
- data/test/wsdl/marshal/person.wsdl +21 -0
- data/test/wsdl/marshal/person_org.rb +18 -0
- data/test/wsdl/marshal/test_wsdlmarshal.rb +79 -0
- data/test/wsdl/multiplefault.wsdl +68 -0
- data/test/wsdl/overload/overload.wsdl +80 -0
- data/test/wsdl/overload/test_overload.rb +118 -0
- data/test/wsdl/qualified/lp.wsdl +47 -0
- data/test/wsdl/qualified/lp.xsd +26 -0
- data/test/wsdl/qualified/np.wsdl +51 -0
- data/test/wsdl/qualified/test_qualified.rb +145 -0
- data/test/wsdl/qualified/test_unqualified.rb +159 -0
- data/test/wsdl/raa/RAA.rb +120 -0
- data/test/wsdl/raa/RAAServant.rb +107 -0
- data/test/wsdl/raa/RAAService.rb +120 -0
- data/test/wsdl/raa/README.txt +8 -0
- data/test/wsdl/raa/raa.wsdl +264 -0
- data/test/wsdl/raa/server.rb +103 -0
- data/test/wsdl/raa/test_raa.rb +91 -0
- data/test/wsdl/ref/expectedProduct.rb +158 -0
- data/test/wsdl/ref/product.wsdl +147 -0
- data/test/wsdl/ref/test_ref.rb +289 -0
- data/test/wsdl/rpc/rpc.wsdl +83 -0
- data/test/wsdl/rpc/test-rpc-lit.wsdl +364 -0
- data/test/wsdl/rpc/test_rpc.rb +173 -0
- data/test/wsdl/rpc/test_rpc_lit.rb +407 -0
- data/test/wsdl/simplecontent/simplecontent.wsdl +83 -0
- data/test/wsdl/simplecontent/test_simplecontent.rb +116 -0
- data/test/wsdl/simpletype/rpc/expectedClient.rb +34 -0
- data/test/wsdl/simpletype/rpc/expectedDriver.rb +55 -0
- data/test/wsdl/simpletype/rpc/expectedEchoVersion.rb +19 -0
- data/test/wsdl/simpletype/rpc/expectedServant.rb +32 -0
- data/test/wsdl/simpletype/rpc/expectedService.rb +51 -0
- data/test/wsdl/simpletype/rpc/rpc.wsdl +80 -0
- data/test/wsdl/simpletype/rpc/test_rpc.rb +62 -0
- data/test/wsdl/simpletype/simpletype.wsdl +95 -0
- data/test/wsdl/simpletype/test_simpletype.rb +99 -0
- data/test/wsdl/soap/soapbodyparts.wsdl +103 -0
- data/test/wsdl/soap/test_soapbodyparts.rb +79 -0
- data/test/wsdl/soap/wsdl2ruby/expectedClassdef.rb +19 -0
- data/test/wsdl/soap/wsdl2ruby/expectedClient.rb +34 -0
- data/test/wsdl/soap/wsdl2ruby/expectedDriver.rb +55 -0
- data/test/wsdl/soap/wsdl2ruby/expectedServant.rb +32 -0
- data/test/wsdl/soap/wsdl2ruby/expectedService.cgi +44 -0
- data/test/wsdl/soap/wsdl2ruby/expectedService.rb +51 -0
- data/test/wsdl/soap/wsdl2ruby/rpc.wsdl +80 -0
- data/test/wsdl/soap/wsdl2ruby/section/expectedClassdef.rb +31 -0
- data/test/wsdl/soap/wsdl2ruby/section/section.xsd +31 -0
- data/test/wsdl/soap/wsdl2ruby/section/test_section.rb +54 -0
- data/test/wsdl/soap/wsdl2ruby/soapenc/soapenc.wsdl +64 -0
- data/test/wsdl/soap/wsdl2ruby/soapenc/test_soapenc.rb +96 -0
- data/test/wsdl/soap/wsdl2ruby/test_wsdl2ruby.rb +79 -0
- data/test/wsdl/soaptype/soaptype.wsdl +61 -0
- data/test/wsdl/soaptype/test_soaptype.rb +160 -0
- data/test/wsdl/test_emptycomplextype.rb +21 -0
- data/test/wsdl/test_fault.rb +50 -0
- data/test/wsdl/test_multiplefault.rb +39 -0
- data/test/xsd/codegen/test_classdef.rb +214 -0
- data/test/xsd/noencoding.xml +4 -0
- data/test/xsd/test_noencoding.rb +32 -0
- data/test/xsd/test_ns.rb +20 -0
- data/test/xsd/test_xmlschemaparser.rb +22 -0
- data/test/xsd/test_xsd.rb +1523 -0
- data/test/xsd/xmllang.xml +43 -0
- data/test/xsd/xmlschema.xml +12 -0
- metadata +539 -0
@@ -0,0 +1,36 @@
|
|
1
|
+
# WSDL4R - XMLSchema enumeration definition for WSDL.
|
2
|
+
# Copyright (C) 2004 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'wsdl/info'
|
10
|
+
|
11
|
+
|
12
|
+
module WSDL
|
13
|
+
module XMLSchema
|
14
|
+
|
15
|
+
|
16
|
+
class Enumeration < Info
|
17
|
+
def initialize
|
18
|
+
super
|
19
|
+
end
|
20
|
+
|
21
|
+
def parse_element(element)
|
22
|
+
nil
|
23
|
+
end
|
24
|
+
|
25
|
+
def parse_attr(attr, value)
|
26
|
+
case attr
|
27
|
+
when ValueAttrName
|
28
|
+
parent.enumeration << value.source
|
29
|
+
value.source
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
# WSDL4R - XMLSchema import definition.
|
2
|
+
# Copyright (C) 2002, 2003, 2005 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'wsdl/info'
|
10
|
+
require 'wsdl/xmlSchema/importer'
|
11
|
+
|
12
|
+
|
13
|
+
module WSDL
|
14
|
+
module XMLSchema
|
15
|
+
|
16
|
+
|
17
|
+
class Import < Info
|
18
|
+
attr_reader :namespace
|
19
|
+
attr_reader :schemalocation
|
20
|
+
attr_reader :content
|
21
|
+
|
22
|
+
def initialize
|
23
|
+
super
|
24
|
+
@namespace = nil
|
25
|
+
@schemalocation = nil
|
26
|
+
@content = nil
|
27
|
+
end
|
28
|
+
|
29
|
+
def parse_element(element)
|
30
|
+
nil
|
31
|
+
end
|
32
|
+
|
33
|
+
def parse_attr(attr, value)
|
34
|
+
case attr
|
35
|
+
when NamespaceAttrName
|
36
|
+
@namespace = value.source
|
37
|
+
when SchemaLocationAttrName
|
38
|
+
@schemalocation = URI.parse(value.source)
|
39
|
+
if @schemalocation.relative? and !parent.location.nil? and
|
40
|
+
!parent.location.relative?
|
41
|
+
@schemalocation = parent.location + @schemalocation
|
42
|
+
end
|
43
|
+
if root.importedschema.key?(@schemalocation)
|
44
|
+
@content = root.importedschema[@schemalocation]
|
45
|
+
else
|
46
|
+
root.importedschema[@schemalocation] = nil # placeholder
|
47
|
+
@content = import(@schemalocation)
|
48
|
+
root.importedschema[@schemalocation] = @content
|
49
|
+
end
|
50
|
+
@schemalocation
|
51
|
+
else
|
52
|
+
nil
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
private
|
57
|
+
|
58
|
+
def import(location)
|
59
|
+
Importer.import(location, root)
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
|
64
|
+
end
|
65
|
+
end
|
@@ -0,0 +1,87 @@
|
|
1
|
+
# WSDL4R - XSD importer library.
|
2
|
+
# Copyright (C) 2003, 2005 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'soap/httpconfigloader'
|
10
|
+
require 'wsdl/xmlSchema/parser'
|
11
|
+
|
12
|
+
|
13
|
+
module WSDL
|
14
|
+
module XMLSchema
|
15
|
+
|
16
|
+
|
17
|
+
class Importer
|
18
|
+
def self.import(location, originalroot = nil)
|
19
|
+
new.import(location, originalroot)
|
20
|
+
end
|
21
|
+
|
22
|
+
def initialize
|
23
|
+
@web_client = nil
|
24
|
+
end
|
25
|
+
|
26
|
+
def import(location, originalroot = nil)
|
27
|
+
unless location.is_a?(URI)
|
28
|
+
location = URI.parse(location)
|
29
|
+
end
|
30
|
+
content = parse(fetch(location), location, originalroot)
|
31
|
+
content.location = location
|
32
|
+
content
|
33
|
+
end
|
34
|
+
|
35
|
+
private
|
36
|
+
|
37
|
+
def parse(content, location, originalroot)
|
38
|
+
opt = {
|
39
|
+
:location => location,
|
40
|
+
:originalroot => originalroot
|
41
|
+
}
|
42
|
+
WSDL::XMLSchema::Parser.new(opt).parse(content)
|
43
|
+
end
|
44
|
+
|
45
|
+
def fetch(location)
|
46
|
+
warn("importing: #{location}") if $DEBUG
|
47
|
+
content = nil
|
48
|
+
if location.scheme == 'file' or
|
49
|
+
(location.relative? and FileTest.exist?(location.path))
|
50
|
+
content = File.open(location.path).read
|
51
|
+
elsif location.scheme and location.scheme.size == 1 and
|
52
|
+
FileTest.exist?(location.to_s)
|
53
|
+
# ToDo: remove this ugly workaround for a path with drive letter
|
54
|
+
# (D://foo/bar)
|
55
|
+
content = File.open(location.to_s).read
|
56
|
+
else
|
57
|
+
client = web_client.new(nil, "WSDL4R")
|
58
|
+
client.proxy = ::SOAP::Env::HTTP_PROXY
|
59
|
+
client.no_proxy = ::SOAP::Env::NO_PROXY
|
60
|
+
if opt = ::SOAP::Property.loadproperty(::SOAP::PropertyName)
|
61
|
+
::SOAP::HTTPConfigLoader.set_options(client,
|
62
|
+
opt["client.protocol.http"])
|
63
|
+
end
|
64
|
+
content = client.get_content(location)
|
65
|
+
end
|
66
|
+
content
|
67
|
+
end
|
68
|
+
|
69
|
+
def web_client
|
70
|
+
@web_client ||= begin
|
71
|
+
require 'http-access2'
|
72
|
+
if HTTPAccess2::VERSION < "2.0"
|
73
|
+
raise LoadError.new("http-access/2.0 or later is required.")
|
74
|
+
end
|
75
|
+
HTTPAccess2::Client
|
76
|
+
rescue LoadError
|
77
|
+
warn("Loading http-access2 failed. Net/http is used.") if $DEBUG
|
78
|
+
require 'soap/netHttpClient'
|
79
|
+
::SOAP::NetHttpClient
|
80
|
+
end
|
81
|
+
@web_client
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
|
86
|
+
end
|
87
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# WSDL4R - XMLSchema include definition.
|
2
|
+
# Copyright (C) 2005 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'wsdl/info'
|
10
|
+
require 'wsdl/xmlSchema/importer'
|
11
|
+
|
12
|
+
|
13
|
+
module WSDL
|
14
|
+
module XMLSchema
|
15
|
+
|
16
|
+
|
17
|
+
class Include < Info
|
18
|
+
attr_reader :schemalocation
|
19
|
+
attr_reader :content
|
20
|
+
|
21
|
+
def initialize
|
22
|
+
super
|
23
|
+
@schemalocation = nil
|
24
|
+
@content = nil
|
25
|
+
end
|
26
|
+
|
27
|
+
def parse_element(element)
|
28
|
+
nil
|
29
|
+
end
|
30
|
+
|
31
|
+
def parse_attr(attr, value)
|
32
|
+
case attr
|
33
|
+
when SchemaLocationAttrName
|
34
|
+
@schemalocation = URI.parse(value.source)
|
35
|
+
if @schemalocation.relative?
|
36
|
+
@schemalocation = parent.location + @schemalocation
|
37
|
+
end
|
38
|
+
@content = import(@schemalocation)
|
39
|
+
@schemalocation
|
40
|
+
else
|
41
|
+
nil
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
private
|
46
|
+
|
47
|
+
def import(location)
|
48
|
+
Importer.import(location)
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# WSDL4R - XMLSchema length definition for WSDL.
|
2
|
+
# Copyright (C) 2005 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'wsdl/info'
|
10
|
+
|
11
|
+
|
12
|
+
module WSDL
|
13
|
+
module XMLSchema
|
14
|
+
|
15
|
+
|
16
|
+
class Length < Info
|
17
|
+
def initialize
|
18
|
+
super
|
19
|
+
end
|
20
|
+
|
21
|
+
def parse_element(element)
|
22
|
+
nil
|
23
|
+
end
|
24
|
+
|
25
|
+
def parse_attr(attr, value)
|
26
|
+
case attr
|
27
|
+
when ValueAttrName
|
28
|
+
parent.length = Integer(value.source)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# WSDL4R - XMLSchema list definition for WSDL.
|
2
|
+
# Copyright (C) 2005 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'wsdl/info'
|
10
|
+
|
11
|
+
|
12
|
+
module WSDL
|
13
|
+
module XMLSchema
|
14
|
+
|
15
|
+
|
16
|
+
class List < Info
|
17
|
+
attr_reader :itemtype
|
18
|
+
attr_reader :local_simpletype
|
19
|
+
|
20
|
+
def initialize
|
21
|
+
super()
|
22
|
+
@itemtype = nil
|
23
|
+
@local_simpletype = nil
|
24
|
+
end
|
25
|
+
|
26
|
+
def parse_element(element)
|
27
|
+
case element
|
28
|
+
when SimpleTypeName
|
29
|
+
@local_simpletype = SimpleType.new
|
30
|
+
@local_simpletype
|
31
|
+
else
|
32
|
+
nil
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
def parse_attr(attr, value)
|
37
|
+
case attr
|
38
|
+
when ItemTypeAttrName
|
39
|
+
@itemtype = value
|
40
|
+
else
|
41
|
+
nil
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# WSDL4R - XMLSchema maxLength definition for WSDL.
|
2
|
+
# Copyright (C) 2006 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'wsdl/info'
|
10
|
+
|
11
|
+
|
12
|
+
module WSDL
|
13
|
+
module XMLSchema
|
14
|
+
|
15
|
+
|
16
|
+
class MaxLength < Info
|
17
|
+
def initialize
|
18
|
+
super
|
19
|
+
end
|
20
|
+
|
21
|
+
def parse_element(element)
|
22
|
+
nil
|
23
|
+
end
|
24
|
+
|
25
|
+
def parse_attr(attr, value)
|
26
|
+
case attr
|
27
|
+
when ValueAttrName
|
28
|
+
parent.maxlength = Integer(value.source)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
# WSDL4R - XMLSchema minLength definition for WSDL.
|
2
|
+
# Copyright (C) 2006 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'wsdl/info'
|
10
|
+
|
11
|
+
|
12
|
+
module WSDL
|
13
|
+
module XMLSchema
|
14
|
+
|
15
|
+
|
16
|
+
class MinLength < Info
|
17
|
+
def initialize
|
18
|
+
super
|
19
|
+
end
|
20
|
+
|
21
|
+
def parse_element(element)
|
22
|
+
nil
|
23
|
+
end
|
24
|
+
|
25
|
+
def parse_attr(attr, value)
|
26
|
+
case attr
|
27
|
+
when ValueAttrName
|
28
|
+
parent.minlength = Integer(value.source)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,166 @@
|
|
1
|
+
# WSDL4R - WSDL XML Instance parser library.
|
2
|
+
# Copyright (C) 2002, 2003, 2005, 2006 NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
|
3
|
+
|
4
|
+
# This program is copyrighted free software by NAKAMURA, Hiroshi. You can
|
5
|
+
# redistribute it and/or modify it under the same terms of Ruby's license;
|
6
|
+
# either the dual license version in 2003, or any later version.
|
7
|
+
|
8
|
+
|
9
|
+
require 'xsd/qname'
|
10
|
+
require 'xsd/ns'
|
11
|
+
require 'xsd/charset'
|
12
|
+
require 'xsd/datatypes'
|
13
|
+
require 'xsd/xmlparser'
|
14
|
+
require 'wsdl/xmlSchema/data'
|
15
|
+
|
16
|
+
|
17
|
+
module WSDL
|
18
|
+
module XMLSchema
|
19
|
+
|
20
|
+
|
21
|
+
class Parser
|
22
|
+
include XSD
|
23
|
+
|
24
|
+
class ParseError < Error; end
|
25
|
+
class FormatDecodeError < ParseError; end
|
26
|
+
class UnknownElementError < FormatDecodeError; end
|
27
|
+
class UnknownAttributeError < FormatDecodeError; end
|
28
|
+
class UnexpectedElementError < FormatDecodeError; end
|
29
|
+
class ElementConstraintError < FormatDecodeError; end
|
30
|
+
class AttributeConstraintError < FormatDecodeError; end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
class ParseFrame
|
35
|
+
attr_reader :ns
|
36
|
+
attr_reader :name
|
37
|
+
attr_accessor :node
|
38
|
+
|
39
|
+
private
|
40
|
+
|
41
|
+
def initialize(ns, name, node)
|
42
|
+
@ns = ns
|
43
|
+
@name = name
|
44
|
+
@node = node
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
public
|
49
|
+
|
50
|
+
def initialize(opt = {})
|
51
|
+
@parser = XSD::XMLParser.create_parser(self, opt)
|
52
|
+
@parsestack = nil
|
53
|
+
@lastnode = nil
|
54
|
+
@ignored = {}
|
55
|
+
@location = opt[:location]
|
56
|
+
@originalroot = opt[:originalroot]
|
57
|
+
end
|
58
|
+
|
59
|
+
def parse(string_or_readable)
|
60
|
+
@parsestack = []
|
61
|
+
@lastnode = nil
|
62
|
+
@textbuf = ''
|
63
|
+
@parser.do_parse(string_or_readable)
|
64
|
+
@lastnode
|
65
|
+
end
|
66
|
+
|
67
|
+
def charset
|
68
|
+
@parser.charset
|
69
|
+
end
|
70
|
+
|
71
|
+
def start_element(name, attrs)
|
72
|
+
lastframe = @parsestack.last
|
73
|
+
ns = parent = nil
|
74
|
+
if lastframe
|
75
|
+
ns = lastframe.ns.clone_ns
|
76
|
+
parent = lastframe.node
|
77
|
+
else
|
78
|
+
ns = XSD::NS.new
|
79
|
+
parent = nil
|
80
|
+
end
|
81
|
+
attrs = XSD::XMLParser.filter_ns(ns, attrs)
|
82
|
+
node = decode_tag(ns, name, attrs, parent)
|
83
|
+
@parsestack << ParseFrame.new(ns, name, node)
|
84
|
+
end
|
85
|
+
|
86
|
+
def characters(text)
|
87
|
+
lastframe = @parsestack.last
|
88
|
+
if lastframe
|
89
|
+
# Need not to be cloned because character does not have attr.
|
90
|
+
ns = lastframe.ns
|
91
|
+
decode_text(ns, text)
|
92
|
+
else
|
93
|
+
p text if $DEBUG
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
97
|
+
def end_element(name)
|
98
|
+
lastframe = @parsestack.pop
|
99
|
+
unless name == lastframe.name
|
100
|
+
raise UnexpectedElementError.new("closing element name '#{name}' does not match with opening element '#{lastframe.name}'")
|
101
|
+
end
|
102
|
+
decode_tag_end(lastframe.ns, lastframe.node)
|
103
|
+
@lastnode = lastframe.node
|
104
|
+
end
|
105
|
+
|
106
|
+
private
|
107
|
+
|
108
|
+
def decode_tag(ns, name, attrs, parent)
|
109
|
+
o = nil
|
110
|
+
elename = ns.parse(name)
|
111
|
+
if !parent
|
112
|
+
if elename == SchemaName
|
113
|
+
o = Schema.parse_element(elename)
|
114
|
+
o.location = @location
|
115
|
+
else
|
116
|
+
raise UnknownElementError.new("unknown element: #{elename}")
|
117
|
+
end
|
118
|
+
o.root = @originalroot if @originalroot # o.root = o otherwise
|
119
|
+
else
|
120
|
+
if elename == AnnotationName
|
121
|
+
# only the first annotation element is allowed for each element.
|
122
|
+
o = Annotation.new
|
123
|
+
else
|
124
|
+
o = parent.parse_element(elename)
|
125
|
+
end
|
126
|
+
if o.nil?
|
127
|
+
unless @ignored.key?(elename)
|
128
|
+
warn("ignored element: #{elename} of #{parent.class}")
|
129
|
+
@ignored[elename] = elename
|
130
|
+
end
|
131
|
+
o = Documentation.new # which accepts any element.
|
132
|
+
end
|
133
|
+
# node could be a pseudo element. pseudo element has its own parent.
|
134
|
+
o.root = parent.root
|
135
|
+
o.parent = parent if o.parent.nil?
|
136
|
+
end
|
137
|
+
attrs.each do |key, value|
|
138
|
+
attr_ele = ns.parse(key, true)
|
139
|
+
value_ele = ns.parse(value, false)
|
140
|
+
value_ele.source = value # for recovery; value may not be a QName
|
141
|
+
if attr_ele == IdAttrName
|
142
|
+
o.id = value_ele
|
143
|
+
else
|
144
|
+
if o.parse_attr(attr_ele, value_ele).nil?
|
145
|
+
unless @ignored.key?(attr_ele)
|
146
|
+
warn("ignored attr: #{attr_ele}")
|
147
|
+
@ignored[attr_ele] = attr_ele
|
148
|
+
end
|
149
|
+
end
|
150
|
+
end
|
151
|
+
end
|
152
|
+
o
|
153
|
+
end
|
154
|
+
|
155
|
+
def decode_tag_end(ns, node)
|
156
|
+
node.parse_epilogue
|
157
|
+
end
|
158
|
+
|
159
|
+
def decode_text(ns, text)
|
160
|
+
@textbuf << text
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
|
165
|
+
end
|
166
|
+
end
|