node = encode->to_xml_after(&encode->details, node, style);
}
}
- if(!node) {
- node = xmlNewNode(NULL,"BOGUS");
- xmlAddChild(parent, node);
- }
return node;
}
enc = sdlType->encode;
while (enc && enc->details.sdl_type &&
- enc->details.sdl_type->kind != XSD_TYPEKIND_COMPLEX &&
enc->details.sdl_type->kind != XSD_TYPEKIND_SIMPLE &&
enc->details.sdl_type->kind != XSD_TYPEKIND_LIST &&
enc->details.sdl_type->kind != XSD_TYPEKIND_UNION) {
sdlType->encode &&
type != &sdlType->encode->details) {
if (sdlType->encode->details.sdl_type &&
- sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_COMPLEX &&
sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_SIMPLE &&
sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_LIST &&
sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_UNION) {
enc = sdlType->encode;
while (enc && enc->details.sdl_type &&
- enc->details.sdl_type->kind != XSD_TYPEKIND_COMPLEX &&
enc->details.sdl_type->kind != XSD_TYPEKIND_SIMPLE &&
enc->details.sdl_type->kind != XSD_TYPEKIND_LIST &&
enc->details.sdl_type->kind != XSD_TYPEKIND_UNION) {
zval *tmp = get_zval_property(data, "_" TSRMLS_CC);
if (tmp) {
xmlParam = master_to_xml(enc, tmp, style, parent);
- } else {
+ } else if (prop == NULL) {
xmlParam = master_to_xml(enc, data, style, parent);
+ } else {
+ xmlParam = xmlNewNode(NULL,"BOGUS");
+ xmlAddChild(parent, xmlParam);
}
} else {
xmlParam = xmlNewNode(NULL,"BOGUS");
} else if (sdlType->kind == XSD_TYPEKIND_EXTENSION &&
sdlType->encode && type != &sdlType->encode->details) {
if (sdlType->encode->details.sdl_type &&
- sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_COMPLEX &&
sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_SIMPLE &&
sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_LIST &&
sdlType->encode->details.sdl_type->kind != XSD_TYPEKIND_UNION) {
if (tmp) {
xmlParam = master_to_xml(sdlType->encode, tmp, style, parent);
- } else {
+ } else if (prop == NULL) {
xmlParam = master_to_xml(sdlType->encode, data, style, parent);
- }
+ } else {
+ xmlParam = xmlNewNode(NULL,"BOGUS");
+ xmlAddChild(parent, xmlParam);
+ }
}
} else {
xmlParam = xmlNewNode(NULL,"BOGUS");