JSValue* JSProcessingInstruction::getValueProperty(ExecState* exec, int token) const
{
    switch (token) {
    case TargetAttrNum: {
        ProcessingInstruction* imp = static_cast<ProcessingInstruction*>(impl());
        return jsStringOrNull(exec, imp->target());
    }
    case DataAttrNum: {
        ProcessingInstruction* imp = static_cast<ProcessingInstruction*>(impl());
        return jsStringOrNull(exec, imp->data());
    }
    case SheetAttrNum: {
        ProcessingInstruction* imp = static_cast<ProcessingInstruction*>(impl());
        return toJS(exec, WTF::getPtr(imp->sheet()));
    }
    case ConstructorAttrNum:
        return getConstructor(exec);
    }
    return 0;
}