[WebKit IDL] move extended attributes to left of interface, exception...
https://bugs.webkit.org/show_bug.cgi?id=99012

Patch by Takashi Sakamoto <tasak@google.com> on 2012-10-12
Reviewed by Kentaro Hara.

According to WebIDL spec, moved all extended attributes to the left
of interface / attribute / readonly attribute / exception.

No new tests. I ran run-bindings-tests and all tests passed.

* Modules/battery/BatteryManager.idl:
* Modules/battery/NavigatorBattery.idl:
* Modules/filesystem/DOMFileSystem.idl:
* Modules/filesystem/DOMFileSystemSync.idl:
* Modules/filesystem/DOMWindowFileSystem.idl:
* Modules/filesystem/DataTransferItemFileSystem.idl:
* Modules/filesystem/DirectoryEntry.idl:
* Modules/filesystem/DirectoryEntrySync.idl:
* Modules/filesystem/DirectoryReader.idl:
* Modules/filesystem/DirectoryReaderSync.idl:
* Modules/filesystem/EntriesCallback.idl:
* Modules/filesystem/Entry.idl:
* Modules/filesystem/EntryArray.idl:
* Modules/filesystem/EntryArraySync.idl:
* Modules/filesystem/EntryCallback.idl:
* Modules/filesystem/EntrySync.idl:
* Modules/filesystem/ErrorCallback.idl:
* Modules/filesystem/FileCallback.idl:
* Modules/filesystem/FileEntry.idl:
* Modules/filesystem/FileEntrySync.idl:
* Modules/filesystem/FileSystemCallback.idl:
* Modules/filesystem/FileWriter.idl:
* Modules/filesystem/FileWriterCallback.idl:
* Modules/filesystem/FileWriterSync.idl:
* Modules/filesystem/HTMLInputElementFileSystem.idl:
* Modules/filesystem/Metadata.idl:
* Modules/filesystem/MetadataCallback.idl:
* Modules/filesystem/WorkerContextFileSystem.idl:
* Modules/gamepad/Gamepad.idl:
* Modules/gamepad/GamepadList.idl:
* Modules/gamepad/NavigatorGamepad.idl:
* Modules/geolocation/Geolocation.idl:
* Modules/geolocation/Geoposition.idl:
* Modules/geolocation/NavigatorGeolocation.idl:
* Modules/geolocation/PositionCallback.idl:
* Modules/geolocation/PositionError.idl:
* Modules/geolocation/PositionErrorCallback.idl:
* Modules/indexeddb/DOMWindowIndexedDatabase.idl:
* Modules/indexeddb/IDBAny.idl:
* Modules/indexeddb/IDBCursor.idl:
* Modules/indexeddb/IDBCursorWithValue.idl:
* Modules/indexeddb/IDBDatabase.idl:
* Modules/indexeddb/IDBDatabaseException.idl:
* Modules/indexeddb/IDBFactory.idl:
* Modules/indexeddb/IDBIndex.idl:
* Modules/indexeddb/IDBKey.idl:
* Modules/indexeddb/IDBKeyRange.idl:
* Modules/indexeddb/IDBObjectStore.idl:
* Modules/indexeddb/IDBOpenDBRequest.idl:
* Modules/indexeddb/IDBRequest.idl:
* Modules/indexeddb/IDBTransaction.idl:
* Modules/indexeddb/IDBUpgradeNeededEvent.idl:
* Modules/indexeddb/IDBVersionChangeEvent.idl:
* Modules/indexeddb/IDBVersionChangeRequest.idl:
* Modules/indexeddb/WorkerContextIndexedDatabase.idl:
* Modules/intents/DOMWindowIntents.idl:
* Modules/intents/DeliveredIntent.idl:
* Modules/intents/NavigatorIntents.idl:
* Modules/mediasource/MediaSource.idl:
* Modules/mediasource/SourceBuffer.idl:
* Modules/mediasource/SourceBufferList.idl:
* Modules/mediastream/DOMWindowMediaStream.idl:
* Modules/mediastream/IceCallback.idl:
* Modules/mediastream/IceCandidate.idl:
* Modules/mediastream/LocalMediaStream.idl:
* Modules/mediastream/MediaStream.idl:
* Modules/mediastream/MediaStreamEvent.idl:
* Modules/mediastream/MediaStreamList.idl:
* Modules/mediastream/MediaStreamTrack.idl:
* Modules/mediastream/MediaStreamTrackEvent.idl:
* Modules/mediastream/MediaStreamTrackList.idl:
* Modules/mediastream/NavigatorMediaStream.idl:
* Modules/mediastream/NavigatorUserMediaError.idl:
* Modules/mediastream/NavigatorUserMediaErrorCallback.idl:
* Modules/mediastream/NavigatorUserMediaSuccessCallback.idl:
* Modules/mediastream/PeerConnection00.idl:
* Modules/mediastream/RTCErrorCallback.idl:
* Modules/mediastream/RTCIceCandidate.idl:
* Modules/mediastream/RTCIceCandidateEvent.idl:
* Modules/mediastream/RTCPeerConnection.idl:
* Modules/mediastream/RTCSessionDescription.idl:
* Modules/mediastream/RTCSessionDescriptionCallback.idl:
* Modules/mediastream/RTCStatsCallback.idl:
* Modules/mediastream/RTCStatsElement.idl:
* Modules/mediastream/RTCStatsReport.idl:
* Modules/mediastream/RTCStatsResponse.idl:
* Modules/mediastream/SessionDescription.idl:
* Modules/navigatorcontentutils/NavigatorContentUtils.idl:
* Modules/networkinfo/NavigatorNetworkInfoConnection.idl:
* Modules/networkinfo/NetworkInfoConnection.idl:
* Modules/notifications/DOMWindowNotifications.idl:
* Modules/notifications/Notification.idl:
* Modules/notifications/NotificationCenter.idl:
* Modules/notifications/NotificationPermissionCallback.idl:
* Modules/notifications/WorkerContextNotifications.idl:
* Modules/proximity/DeviceProximityEvent.idl:
* Modules/quota/DOMWindowQuota.idl:
* Modules/quota/StorageInfo.idl:
* Modules/quota/StorageInfoErrorCallback.idl:
* Modules/quota/StorageInfoQuotaCallback.idl:
* Modules/quota/StorageInfoUsageCallback.idl:
* Modules/speech/DOMWindowSpeech.idl:
* Modules/speech/SpeechGrammar.idl:
* Modules/speech/SpeechGrammarList.idl:
* Modules/speech/SpeechRecognition.idl:
* Modules/speech/SpeechRecognitionAlternative.idl:
* Modules/speech/SpeechRecognitionError.idl:
* Modules/speech/SpeechRecognitionEvent.idl:
* Modules/speech/SpeechRecognitionResult.idl:
* Modules/speech/SpeechRecognitionResultList.idl:
* Modules/vibration/NavigatorVibration.idl:
* Modules/webaudio/AudioBuffer.idl:
* Modules/webaudio/AudioBufferCallback.idl:
* Modules/webaudio/AudioBufferSourceNode.idl:
* Modules/webaudio/AudioChannelMerger.idl:
* Modules/webaudio/AudioChannelSplitter.idl:
* Modules/webaudio/AudioContext.idl:
* Modules/webaudio/AudioDestinationNode.idl:
* Modules/webaudio/AudioGain.idl:
* Modules/webaudio/AudioGainNode.idl:
* Modules/webaudio/AudioListener.idl:
* Modules/webaudio/AudioNode.idl:
* Modules/webaudio/AudioPannerNode.idl:
* Modules/webaudio/AudioParam.idl:
* Modules/webaudio/AudioProcessingEvent.idl:
* Modules/webaudio/AudioSourceNode.idl:
* Modules/webaudio/BiquadFilterNode.idl:
* Modules/webaudio/ConvolverNode.idl:
* Modules/webaudio/DOMWindowWebAudio.idl:
* Modules/webaudio/DelayNode.idl:
* Modules/webaudio/DynamicsCompressorNode.idl:
* Modules/webaudio/JavaScriptAudioNode.idl:
* Modules/webaudio/MediaElementAudioSourceNode.idl:
* Modules/webaudio/MediaStreamAudioSourceNode.idl:
* Modules/webaudio/OfflineAudioCompletionEvent.idl:
* Modules/webaudio/Oscillator.idl:
* Modules/webaudio/RealtimeAnalyserNode.idl:
* Modules/webaudio/WaveShaperNode.idl:
* Modules/webaudio/WaveTable.idl:
* Modules/webdatabase/DOMWindowWebDatabase.idl:
* Modules/webdatabase/Database.idl:
* Modules/webdatabase/DatabaseCallback.idl:
* Modules/webdatabase/DatabaseSync.idl:
* Modules/webdatabase/SQLError.idl:
* Modules/webdatabase/SQLException.idl:
* Modules/webdatabase/SQLResultSet.idl:
* Modules/webdatabase/SQLResultSetRowList.idl:
* Modules/webdatabase/SQLStatementCallback.idl:
* Modules/webdatabase/SQLStatementErrorCallback.idl:
* Modules/webdatabase/SQLTransaction.idl:
* Modules/webdatabase/SQLTransactionCallback.idl:
* Modules/webdatabase/SQLTransactionErrorCallback.idl:
* Modules/webdatabase/SQLTransactionSync.idl:
* Modules/webdatabase/SQLTransactionSyncCallback.idl:
* Modules/webdatabase/WorkerContextWebDatabase.idl:
* Modules/websockets/CloseEvent.idl:
* Modules/websockets/DOMWindowWebSocket.idl:
* Modules/websockets/WebSocket.idl:
* Modules/websockets/WorkerContextWebSocket.idl:
* bindings/scripts/test/TestCallback.idl:
* bindings/scripts/test/TestCustomNamedGetter.idl:
* bindings/scripts/test/TestDomainSecurity.idl:
* bindings/scripts/test/TestEventConstructor.idl:
* bindings/scripts/test/TestEventTarget.idl:
* bindings/scripts/test/TestInterface.idl:
* bindings/scripts/test/TestNamedConstructor.idl:
* bindings/scripts/test/TestNode.idl:
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/TestSerializedScriptValueInterface.idl:
* bindings/scripts/test/TestSupplemental.idl:
* bindings/scripts/test/TestTypedArray.idl:
* css/CSSCharsetRule.idl:
* css/CSSImportRule.idl:
* css/CSSPageRule.idl:
* css/CSSRule.idl:
* css/CSSRuleList.idl:
* css/CSSStyleDeclaration.idl:
* css/CSSStyleRule.idl:
* css/CSSStyleSheet.idl:
* css/CSSUnknownRule.idl:
* css/CSSValue.idl:
* css/CSSValueList.idl:
* css/MediaList.idl:
* css/MediaQueryListListener.idl:
* css/StyleMedia.idl:
* css/StyleSheet.idl:
* css/StyleSheetList.idl:
* css/WebKitCSSFilterValue.idl:
* css/WebKitCSSKeyframesRule.idl:
* css/WebKitCSSMatrix.idl:
* css/WebKitCSSRegionRule.idl:
* css/WebKitCSSTransformValue.idl:
* dom/Attr.idl:
* dom/BeforeLoadEvent.idl:
* dom/CharacterData.idl:
* dom/ClientRectList.idl:
* dom/Clipboard.idl:
* dom/CustomEvent.idl:
* dom/DOMCoreException.idl:
* dom/DOMImplementation.idl:
* dom/DOMNamedFlowCollection.idl:
* dom/DOMStringList.idl:
* dom/DOMStringMap.idl:
* dom/DataTransferItem.idl:
* dom/DataTransferItemList.idl:
* dom/DeviceMotionEvent.idl:
* dom/DeviceOrientationEvent.idl:
* dom/Document.idl:
* dom/DocumentType.idl:
* dom/Element.idl:
* dom/Entity.idl:
* dom/ErrorEvent.idl:
* dom/Event.idl:
* dom/EventException.idl:
* dom/EventListener.idl:
* dom/EventTarget.idl:
* dom/HashChangeEvent.idl:
* dom/MessageChannel.idl:
* dom/MessageEvent.idl:
* dom/MessagePort.idl:
* dom/MouseEvent.idl:
* dom/MutationCallback.idl:
* dom/MutationObserver.idl:
* dom/MutationRecord.idl:
* dom/NamedNodeMap.idl:
* dom/Node.idl:
* dom/NodeFilter.idl:
* dom/NodeIterator.idl:
* dom/NodeList.idl:
* dom/Notation.idl:
* dom/OverflowEvent.idl:
* dom/PageTransitionEvent.idl:
* dom/PopStateEvent.idl:
* dom/ProcessingInstruction.idl:
* dom/ProgressEvent.idl:
* dom/PropertyNodeList.idl:
* dom/RangeException.idl:
* dom/RequestAnimationFrameCallback.idl:
* dom/ShadowRoot.idl:
* dom/StringCallback.idl:
* dom/Touch.idl:
* dom/TouchEvent.idl:
* dom/TouchList.idl:
* dom/TreeWalker.idl:
* dom/WebKitAnimationEvent.idl:
* dom/WebKitNamedFlow.idl:
* dom/WebKitTransitionEvent.idl:
* editing/DOMTransaction.idl:
* editing/UndoManager.idl:
* fileapi/Blob.idl:
* fileapi/File.idl:
* fileapi/FileError.idl:
* fileapi/FileException.idl:
* fileapi/FileList.idl:
* fileapi/FileReader.idl:
* fileapi/FileReaderSync.idl:
* html/DOMFormData.idl:
* html/DOMSettableTokenList.idl:
* html/DOMTokenList.idl:
* html/DOMURL.idl:
* html/HTMLAllCollection.idl:
* html/HTMLAnchorElement.idl:
* html/HTMLAppletElement.idl:
* html/HTMLAreaElement.idl:
* html/HTMLAudioElement.idl:
* html/HTMLBRElement.idl:
* html/HTMLBaseElement.idl:
* html/HTMLBaseFontElement.idl:
* html/HTMLBodyElement.idl:
* html/HTMLButtonElement.idl:
* html/HTMLCanvasElement.idl:
* html/HTMLCollection.idl:
* html/HTMLDListElement.idl:
* html/HTMLDataListElement.idl:
* html/HTMLDetailsElement.idl:
* html/HTMLDialogElement.idl:
* html/HTMLDirectoryElement.idl:
* html/HTMLDivElement.idl:
* html/HTMLDocument.idl:
* html/HTMLElement.idl:
* html/HTMLEmbedElement.idl:
* html/HTMLFieldSetElement.idl:
* html/HTMLFontElement.idl:
* html/HTMLFormElement.idl:
* html/HTMLFrameElement.idl:
* html/HTMLFrameSetElement.idl:
* html/HTMLHRElement.idl:
* html/HTMLHeadElement.idl:
* html/HTMLHeadingElement.idl:
* html/HTMLHtmlElement.idl:
* html/HTMLIFrameElement.idl:
* html/HTMLImageElement.idl:
* html/HTMLInputElement.idl:
* html/HTMLIntentElement.idl:
* html/HTMLKeygenElement.idl:
* html/HTMLLIElement.idl:
* html/HTMLLabelElement.idl:
* html/HTMLLegendElement.idl:
* html/HTMLLinkElement.idl:
* html/HTMLMapElement.idl:
* html/HTMLMarqueeElement.idl:
* html/HTMLMediaElement.idl:
* html/HTMLMenuElement.idl:
* html/HTMLMetaElement.idl:
* html/HTMLMeterElement.idl:
* html/HTMLModElement.idl:
* html/HTMLOListElement.idl:
* html/HTMLObjectElement.idl:
* html/HTMLOptGroupElement.idl:
* html/HTMLOptionElement.idl:
* html/HTMLOptionsCollection.idl:
* html/HTMLOutputElement.idl:
* html/HTMLParagraphElement.idl:
* html/HTMLParamElement.idl:
* html/HTMLPreElement.idl:
* html/HTMLProgressElement.idl:
* html/HTMLPropertiesCollection.idl:
* html/HTMLQuoteElement.idl:
* html/HTMLScriptElement.idl:
* html/HTMLSelectElement.idl:
* html/HTMLSourceElement.idl:
* html/HTMLStyleElement.idl:
* html/HTMLTableCaptionElement.idl:
* html/HTMLTableCellElement.idl:
* html/HTMLTableColElement.idl:
* html/HTMLTableElement.idl:
* html/HTMLTableRowElement.idl:
* html/HTMLTableSectionElement.idl:
* html/HTMLTextAreaElement.idl:
* html/HTMLTitleElement.idl:
* html/HTMLTrackElement.idl:
* html/HTMLUListElement.idl:
* html/HTMLVideoElement.idl:
* html/ImageData.idl:
* html/MediaController.idl:
* html/MediaError.idl:
* html/MediaKeyError.idl:
* html/MediaKeyEvent.idl:
* html/MicroDataItemValue.idl:
* html/RadioNodeList.idl:
* html/TimeRanges.idl:
* html/ValidityState.idl:
* html/VoidCallback.idl:
* html/canvas/ArrayBuffer.idl:
* html/canvas/ArrayBufferView.idl:
* html/canvas/CanvasRenderingContext.idl:
* html/canvas/CanvasRenderingContext2D.idl:
* html/canvas/DataView.idl:
* html/canvas/EXTTextureFilterAnisotropic.idl:
* html/canvas/Float32Array.idl:
* html/canvas/Float64Array.idl:
* html/canvas/Int16Array.idl:
* html/canvas/Int32Array.idl:
* html/canvas/Int8Array.idl:
* html/canvas/OESStandardDerivatives.idl:
* html/canvas/OESTextureFloat.idl:
* html/canvas/OESVertexArrayObject.idl:
* html/canvas/Uint16Array.idl:
* html/canvas/Uint32Array.idl:
* html/canvas/Uint8Array.idl:
* html/canvas/Uint8ClampedArray.idl:
* html/canvas/WebGLActiveInfo.idl:
* html/canvas/WebGLBuffer.idl:
* html/canvas/WebGLCompressedTextureS3TC.idl:
* html/canvas/WebGLContextAttributes.idl:
* html/canvas/WebGLContextEvent.idl:
* html/canvas/WebGLDebugRendererInfo.idl:
* html/canvas/WebGLDebugShaders.idl:
* html/canvas/WebGLDepthTexture.idl:
* html/canvas/WebGLFramebuffer.idl:
* html/canvas/WebGLLoseContext.idl:
* html/canvas/WebGLProgram.idl:
* html/canvas/WebGLRenderbuffer.idl:
* html/canvas/WebGLRenderingContext.idl:
* html/canvas/WebGLShader.idl:
* html/canvas/WebGLShaderPrecisionFormat.idl:
* html/canvas/WebGLTexture.idl:
* html/canvas/WebGLUniformLocation.idl:
* html/canvas/WebGLVertexArrayObjectOES.idl:
* html/shadow/HTMLContentElement.idl:
* html/shadow/HTMLShadowElement.idl:
* html/track/TextTrack.idl:
* html/track/TextTrackCue.idl:
* html/track/TextTrackCueList.idl:
* html/track/TextTrackList.idl:
* html/track/TrackEvent.idl:
* inspector/InjectedScriptHost.idl:
* inspector/InspectorFrontendHost.idl:
* inspector/JavaScriptCallFrame.idl:
* inspector/ScriptProfile.idl:
* inspector/ScriptProfileNode.idl:
* loader/appcache/DOMApplicationCache.idl:
* page/AbstractView.idl:
* page/BarInfo.idl:
* page/Console.idl:
* page/Coordinates.idl:
* page/Crypto.idl:
* page/DOMSecurityPolicy.idl:
* page/DOMSelection.idl:
* page/DOMWindow.idl:
* page/DOMWindowPagePopup.idl:
* page/EventSource.idl:
* page/History.idl:
* page/Location.idl:
* page/MemoryInfo.idl:
* page/Navigator.idl:
* page/PagePopupController.idl:
* page/Performance.idl:
* page/PerformanceEntry.idl:
* page/PerformanceEntryList.idl:
* page/PerformanceNavigation.idl:
* page/PerformanceResourceTiming.idl:
* page/PerformanceTiming.idl:
* page/Screen.idl:
* page/SpeechInputEvent.idl:
* page/SpeechInputResult.idl:
* page/SpeechInputResultList.idl:
* page/WebKitAnimation.idl:
* page/WebKitAnimationList.idl:
* page/WebKitPoint.idl:
* page/WorkerNavigator.idl:
* plugins/DOMMimeType.idl:
* plugins/DOMMimeTypeArray.idl:
* plugins/DOMPlugin.idl:
* plugins/DOMPluginArray.idl:
* storage/Storage.idl:
* storage/StorageEvent.idl:
* svg/ElementTimeControl.idl:
* svg/SVGAElement.idl:
* svg/SVGAltGlyphDefElement.idl:
* svg/SVGAltGlyphElement.idl:
* svg/SVGAltGlyphItemElement.idl:
* svg/SVGAngle.idl:
* svg/SVGAnimateColorElement.idl:
* svg/SVGAnimateElement.idl:
* svg/SVGAnimateMotionElement.idl:
* svg/SVGAnimateTransformElement.idl:
* svg/SVGAnimatedAngle.idl:
* svg/SVGAnimatedBoolean.idl:
* svg/SVGAnimatedEnumeration.idl:
* svg/SVGAnimatedInteger.idl:
* svg/SVGAnimatedLength.idl:
* svg/SVGAnimatedLengthList.idl:
* svg/SVGAnimatedNumber.idl:
* svg/SVGAnimatedNumberList.idl:
* svg/SVGAnimatedPreserveAspectRatio.idl:
* svg/SVGAnimatedRect.idl:
* svg/SVGAnimatedString.idl:
* svg/SVGAnimatedTransformList.idl:
* svg/SVGAnimationElement.idl:
* svg/SVGCircleElement.idl:
* svg/SVGClipPathElement.idl:
* svg/SVGColor.idl:
* svg/SVGComponentTransferFunctionElement.idl:
* svg/SVGCursorElement.idl:
* svg/SVGDefsElement.idl:
* svg/SVGDescElement.idl:
* svg/SVGDocument.idl:
* svg/SVGElement.idl:
* svg/SVGElementInstance.idl:
* svg/SVGElementInstanceList.idl:
* svg/SVGEllipseElement.idl:
* svg/SVGException.idl:
* svg/SVGExternalResourcesRequired.idl:
* svg/SVGFEBlendElement.idl:
* svg/SVGFEColorMatrixElement.idl:
* svg/SVGFEComponentTransferElement.idl:
* svg/SVGFECompositeElement.idl:
* svg/SVGFEConvolveMatrixElement.idl:
* svg/SVGFEDiffuseLightingElement.idl:
* svg/SVGFEDisplacementMapElement.idl:
* svg/SVGFEDistantLightElement.idl:
* svg/SVGFEDropShadowElement.idl:
* svg/SVGFEFloodElement.idl:
* svg/SVGFEFuncAElement.idl:
* svg/SVGFEFuncBElement.idl:
* svg/SVGFEFuncGElement.idl:
* svg/SVGFEFuncRElement.idl:
* svg/SVGFEGaussianBlurElement.idl:
* svg/SVGFEImageElement.idl:
* svg/SVGFEMergeElement.idl:
* svg/SVGFEMergeNodeElement.idl:
* svg/SVGFEMorphologyElement.idl:
* svg/SVGFEOffsetElement.idl:
* svg/SVGFEPointLightElement.idl:
* svg/SVGFESpecularLightingElement.idl:
* svg/SVGFESpotLightElement.idl:
* svg/SVGFETileElement.idl:
* svg/SVGFETurbulenceElement.idl:
* svg/SVGFilterElement.idl:
* svg/SVGFilterPrimitiveStandardAttributes.idl:
* svg/SVGFitToViewBox.idl:
* svg/SVGFontElement.idl:
* svg/SVGFontFaceElement.idl:
* svg/SVGFontFaceFormatElement.idl:
* svg/SVGFontFaceNameElement.idl:
* svg/SVGFontFaceSrcElement.idl:
* svg/SVGFontFaceUriElement.idl:
* svg/SVGForeignObjectElement.idl:
* svg/SVGGElement.idl:
* svg/SVGGlyphElement.idl:
* svg/SVGGlyphRefElement.idl:
* svg/SVGGradientElement.idl:
* svg/SVGHKernElement.idl:
* svg/SVGImageElement.idl:
* svg/SVGLangSpace.idl:
* svg/SVGLength.idl:
* svg/SVGLengthList.idl:
* svg/SVGLineElement.idl:
* svg/SVGLinearGradientElement.idl:
* svg/SVGLocatable.idl:
* svg/SVGMPathElement.idl:
* svg/SVGMarkerElement.idl:
* svg/SVGMaskElement.idl:
* svg/SVGMatrix.idl:
* svg/SVGMetadataElement.idl:
* svg/SVGMissingGlyphElement.idl:
* svg/SVGNumber.idl:
* svg/SVGNumberList.idl:
* svg/SVGPaint.idl:
* svg/SVGPathElement.idl:
* svg/SVGPathSeg.idl:
* svg/SVGPathSegArcAbs.idl:
* svg/SVGPathSegArcRel.idl:
* svg/SVGPathSegClosePath.idl:
* svg/SVGPathSegCurvetoCubicAbs.idl:
* svg/SVGPathSegCurvetoCubicRel.idl:
* svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
* svg/SVGPathSegCurvetoCubicSmoothRel.idl:
* svg/SVGPathSegCurvetoQuadraticAbs.idl:
* svg/SVGPathSegCurvetoQuadraticRel.idl:
* svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
* svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
* svg/SVGPathSegLinetoAbs.idl:
* svg/SVGPathSegLinetoHorizontalAbs.idl:
* svg/SVGPathSegLinetoHorizontalRel.idl:
* svg/SVGPathSegLinetoRel.idl:
* svg/SVGPathSegLinetoVerticalAbs.idl:
* svg/SVGPathSegLinetoVerticalRel.idl:
* svg/SVGPathSegList.idl:
* svg/SVGPathSegMovetoAbs.idl:
* svg/SVGPathSegMovetoRel.idl:
* svg/SVGPatternElement.idl:
* svg/SVGPoint.idl:
* svg/SVGPointList.idl:
* svg/SVGPolygonElement.idl:
* svg/SVGPolylineElement.idl:
* svg/SVGPreserveAspectRatio.idl:
* svg/SVGRadialGradientElement.idl:
* svg/SVGRect.idl:
* svg/SVGRectElement.idl:
* svg/SVGRenderingIntent.idl:
* svg/SVGSVGElement.idl:
* svg/SVGScriptElement.idl:
* svg/SVGSetElement.idl:
* svg/SVGStopElement.idl:
* svg/SVGStringList.idl:
* svg/SVGStylable.idl:
* svg/SVGStyleElement.idl:
* svg/SVGSwitchElement.idl:
* svg/SVGSymbolElement.idl:
* svg/SVGTRefElement.idl:
* svg/SVGTSpanElement.idl:
* svg/SVGTests.idl:
* svg/SVGTextContentElement.idl:
* svg/SVGTextElement.idl:
* svg/SVGTextPathElement.idl:
* svg/SVGTextPositioningElement.idl:
* svg/SVGTitleElement.idl:
* svg/SVGTransform.idl:
* svg/SVGTransformList.idl:
* svg/SVGTransformable.idl:
* svg/SVGURIReference.idl:
* svg/SVGUnitTypes.idl:
* svg/SVGUseElement.idl:
* svg/SVGVKernElement.idl:
* svg/SVGViewElement.idl:
* svg/SVGViewSpec.idl:
* svg/SVGZoomAndPan.idl:
* svg/SVGZoomEvent.idl:
* testing/InternalSettings.idl:
* testing/Internals.idl:
* testing/MallocStatistics.idl:
* workers/AbstractWorker.idl:
* workers/DedicatedWorkerContext.idl:
* workers/SharedWorker.idl:
* workers/SharedWorkerContext.idl:
* workers/Worker.idl:
* workers/WorkerContext.idl:
* workers/WorkerLocation.idl:
* xml/DOMParser.idl:
* xml/XMLHttpRequest.idl:
* xml/XMLHttpRequestException.idl:
* xml/XMLHttpRequestProgressEvent.idl:
* xml/XMLHttpRequestUpload.idl:
* xml/XMLSerializer.idl:
* xml/XPathEvaluator.idl:
* xml/XPathException.idl:
* xml/XPathNSResolver.idl:
* xml/XPathResult.idl:
* xml/XSLTProcessor.idl:
Moved extended attributes.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131172 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 2f45a8e..69b9588 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,618 @@
+2012-10-12  Takashi Sakamoto  <tasak@google.com>
+
+        [WebKit IDL] move extended attributes to left of interface, exception...
+        https://bugs.webkit.org/show_bug.cgi?id=99012
+
+        Reviewed by Kentaro Hara.
+
+        According to WebIDL spec, moved all extended attributes to the left
+        of interface / attribute / readonly attribute / exception.
+
+        No new tests. I ran run-bindings-tests and all tests passed.
+
+        * Modules/battery/BatteryManager.idl:
+        * Modules/battery/NavigatorBattery.idl:
+        * Modules/filesystem/DOMFileSystem.idl:
+        * Modules/filesystem/DOMFileSystemSync.idl:
+        * Modules/filesystem/DOMWindowFileSystem.idl:
+        * Modules/filesystem/DataTransferItemFileSystem.idl:
+        * Modules/filesystem/DirectoryEntry.idl:
+        * Modules/filesystem/DirectoryEntrySync.idl:
+        * Modules/filesystem/DirectoryReader.idl:
+        * Modules/filesystem/DirectoryReaderSync.idl:
+        * Modules/filesystem/EntriesCallback.idl:
+        * Modules/filesystem/Entry.idl:
+        * Modules/filesystem/EntryArray.idl:
+        * Modules/filesystem/EntryArraySync.idl:
+        * Modules/filesystem/EntryCallback.idl:
+        * Modules/filesystem/EntrySync.idl:
+        * Modules/filesystem/ErrorCallback.idl:
+        * Modules/filesystem/FileCallback.idl:
+        * Modules/filesystem/FileEntry.idl:
+        * Modules/filesystem/FileEntrySync.idl:
+        * Modules/filesystem/FileSystemCallback.idl:
+        * Modules/filesystem/FileWriter.idl:
+        * Modules/filesystem/FileWriterCallback.idl:
+        * Modules/filesystem/FileWriterSync.idl:
+        * Modules/filesystem/HTMLInputElementFileSystem.idl:
+        * Modules/filesystem/Metadata.idl:
+        * Modules/filesystem/MetadataCallback.idl:
+        * Modules/filesystem/WorkerContextFileSystem.idl:
+        * Modules/gamepad/Gamepad.idl:
+        * Modules/gamepad/GamepadList.idl:
+        * Modules/gamepad/NavigatorGamepad.idl:
+        * Modules/geolocation/Geolocation.idl:
+        * Modules/geolocation/Geoposition.idl:
+        * Modules/geolocation/NavigatorGeolocation.idl:
+        * Modules/geolocation/PositionCallback.idl:
+        * Modules/geolocation/PositionError.idl:
+        * Modules/geolocation/PositionErrorCallback.idl:
+        * Modules/indexeddb/DOMWindowIndexedDatabase.idl:
+        * Modules/indexeddb/IDBAny.idl:
+        * Modules/indexeddb/IDBCursor.idl:
+        * Modules/indexeddb/IDBCursorWithValue.idl:
+        * Modules/indexeddb/IDBDatabase.idl:
+        * Modules/indexeddb/IDBDatabaseException.idl:
+        * Modules/indexeddb/IDBFactory.idl:
+        * Modules/indexeddb/IDBIndex.idl:
+        * Modules/indexeddb/IDBKey.idl:
+        * Modules/indexeddb/IDBKeyRange.idl:
+        * Modules/indexeddb/IDBObjectStore.idl:
+        * Modules/indexeddb/IDBOpenDBRequest.idl:
+        * Modules/indexeddb/IDBRequest.idl:
+        * Modules/indexeddb/IDBTransaction.idl:
+        * Modules/indexeddb/IDBUpgradeNeededEvent.idl:
+        * Modules/indexeddb/IDBVersionChangeEvent.idl:
+        * Modules/indexeddb/IDBVersionChangeRequest.idl:
+        * Modules/indexeddb/WorkerContextIndexedDatabase.idl:
+        * Modules/intents/DOMWindowIntents.idl:
+        * Modules/intents/DeliveredIntent.idl:
+        * Modules/intents/NavigatorIntents.idl:
+        * Modules/mediasource/MediaSource.idl:
+        * Modules/mediasource/SourceBuffer.idl:
+        * Modules/mediasource/SourceBufferList.idl:
+        * Modules/mediastream/DOMWindowMediaStream.idl:
+        * Modules/mediastream/IceCallback.idl:
+        * Modules/mediastream/IceCandidate.idl:
+        * Modules/mediastream/LocalMediaStream.idl:
+        * Modules/mediastream/MediaStream.idl:
+        * Modules/mediastream/MediaStreamEvent.idl:
+        * Modules/mediastream/MediaStreamList.idl:
+        * Modules/mediastream/MediaStreamTrack.idl:
+        * Modules/mediastream/MediaStreamTrackEvent.idl:
+        * Modules/mediastream/MediaStreamTrackList.idl:
+        * Modules/mediastream/NavigatorMediaStream.idl:
+        * Modules/mediastream/NavigatorUserMediaError.idl:
+        * Modules/mediastream/NavigatorUserMediaErrorCallback.idl:
+        * Modules/mediastream/NavigatorUserMediaSuccessCallback.idl:
+        * Modules/mediastream/PeerConnection00.idl:
+        * Modules/mediastream/RTCErrorCallback.idl:
+        * Modules/mediastream/RTCIceCandidate.idl:
+        * Modules/mediastream/RTCIceCandidateEvent.idl:
+        * Modules/mediastream/RTCPeerConnection.idl:
+        * Modules/mediastream/RTCSessionDescription.idl:
+        * Modules/mediastream/RTCSessionDescriptionCallback.idl:
+        * Modules/mediastream/RTCStatsCallback.idl:
+        * Modules/mediastream/RTCStatsElement.idl:
+        * Modules/mediastream/RTCStatsReport.idl:
+        * Modules/mediastream/RTCStatsResponse.idl:
+        * Modules/mediastream/SessionDescription.idl:
+        * Modules/navigatorcontentutils/NavigatorContentUtils.idl:
+        * Modules/networkinfo/NavigatorNetworkInfoConnection.idl:
+        * Modules/networkinfo/NetworkInfoConnection.idl:
+        * Modules/notifications/DOMWindowNotifications.idl:
+        * Modules/notifications/Notification.idl:
+        * Modules/notifications/NotificationCenter.idl:
+        * Modules/notifications/NotificationPermissionCallback.idl:
+        * Modules/notifications/WorkerContextNotifications.idl:
+        * Modules/proximity/DeviceProximityEvent.idl:
+        * Modules/quota/DOMWindowQuota.idl:
+        * Modules/quota/StorageInfo.idl:
+        * Modules/quota/StorageInfoErrorCallback.idl:
+        * Modules/quota/StorageInfoQuotaCallback.idl:
+        * Modules/quota/StorageInfoUsageCallback.idl:
+        * Modules/speech/DOMWindowSpeech.idl:
+        * Modules/speech/SpeechGrammar.idl:
+        * Modules/speech/SpeechGrammarList.idl:
+        * Modules/speech/SpeechRecognition.idl:
+        * Modules/speech/SpeechRecognitionAlternative.idl:
+        * Modules/speech/SpeechRecognitionError.idl:
+        * Modules/speech/SpeechRecognitionEvent.idl:
+        * Modules/speech/SpeechRecognitionResult.idl:
+        * Modules/speech/SpeechRecognitionResultList.idl:
+        * Modules/vibration/NavigatorVibration.idl:
+        * Modules/webaudio/AudioBuffer.idl:
+        * Modules/webaudio/AudioBufferCallback.idl:
+        * Modules/webaudio/AudioBufferSourceNode.idl:
+        * Modules/webaudio/AudioChannelMerger.idl:
+        * Modules/webaudio/AudioChannelSplitter.idl:
+        * Modules/webaudio/AudioContext.idl:
+        * Modules/webaudio/AudioDestinationNode.idl:
+        * Modules/webaudio/AudioGain.idl:
+        * Modules/webaudio/AudioGainNode.idl:
+        * Modules/webaudio/AudioListener.idl:
+        * Modules/webaudio/AudioNode.idl:
+        * Modules/webaudio/AudioPannerNode.idl:
+        * Modules/webaudio/AudioParam.idl:
+        * Modules/webaudio/AudioProcessingEvent.idl:
+        * Modules/webaudio/AudioSourceNode.idl:
+        * Modules/webaudio/BiquadFilterNode.idl:
+        * Modules/webaudio/ConvolverNode.idl:
+        * Modules/webaudio/DOMWindowWebAudio.idl:
+        * Modules/webaudio/DelayNode.idl:
+        * Modules/webaudio/DynamicsCompressorNode.idl:
+        * Modules/webaudio/JavaScriptAudioNode.idl:
+        * Modules/webaudio/MediaElementAudioSourceNode.idl:
+        * Modules/webaudio/MediaStreamAudioSourceNode.idl:
+        * Modules/webaudio/OfflineAudioCompletionEvent.idl:
+        * Modules/webaudio/Oscillator.idl:
+        * Modules/webaudio/RealtimeAnalyserNode.idl:
+        * Modules/webaudio/WaveShaperNode.idl:
+        * Modules/webaudio/WaveTable.idl:
+        * Modules/webdatabase/DOMWindowWebDatabase.idl:
+        * Modules/webdatabase/Database.idl:
+        * Modules/webdatabase/DatabaseCallback.idl:
+        * Modules/webdatabase/DatabaseSync.idl:
+        * Modules/webdatabase/SQLError.idl:
+        * Modules/webdatabase/SQLException.idl:
+        * Modules/webdatabase/SQLResultSet.idl:
+        * Modules/webdatabase/SQLResultSetRowList.idl:
+        * Modules/webdatabase/SQLStatementCallback.idl:
+        * Modules/webdatabase/SQLStatementErrorCallback.idl:
+        * Modules/webdatabase/SQLTransaction.idl:
+        * Modules/webdatabase/SQLTransactionCallback.idl:
+        * Modules/webdatabase/SQLTransactionErrorCallback.idl:
+        * Modules/webdatabase/SQLTransactionSync.idl:
+        * Modules/webdatabase/SQLTransactionSyncCallback.idl:
+        * Modules/webdatabase/WorkerContextWebDatabase.idl:
+        * Modules/websockets/CloseEvent.idl:
+        * Modules/websockets/DOMWindowWebSocket.idl:
+        * Modules/websockets/WebSocket.idl:
+        * Modules/websockets/WorkerContextWebSocket.idl:
+        * bindings/scripts/test/TestCallback.idl:
+        * bindings/scripts/test/TestCustomNamedGetter.idl:
+        * bindings/scripts/test/TestDomainSecurity.idl:
+        * bindings/scripts/test/TestEventConstructor.idl:
+        * bindings/scripts/test/TestEventTarget.idl:
+        * bindings/scripts/test/TestInterface.idl:
+        * bindings/scripts/test/TestNamedConstructor.idl:
+        * bindings/scripts/test/TestNode.idl:
+        * bindings/scripts/test/TestObj.idl:
+        * bindings/scripts/test/TestSerializedScriptValueInterface.idl:
+        * bindings/scripts/test/TestSupplemental.idl:
+        * bindings/scripts/test/TestTypedArray.idl:
+        * css/CSSCharsetRule.idl:
+        * css/CSSImportRule.idl:
+        * css/CSSPageRule.idl:
+        * css/CSSRule.idl:
+        * css/CSSRuleList.idl:
+        * css/CSSStyleDeclaration.idl:
+        * css/CSSStyleRule.idl:
+        * css/CSSStyleSheet.idl:
+        * css/CSSUnknownRule.idl:
+        * css/CSSValue.idl:
+        * css/CSSValueList.idl:
+        * css/MediaList.idl:
+        * css/MediaQueryListListener.idl:
+        * css/StyleMedia.idl:
+        * css/StyleSheet.idl:
+        * css/StyleSheetList.idl:
+        * css/WebKitCSSFilterValue.idl:
+        * css/WebKitCSSKeyframesRule.idl:
+        * css/WebKitCSSMatrix.idl:
+        * css/WebKitCSSRegionRule.idl:
+        * css/WebKitCSSTransformValue.idl:
+        * dom/Attr.idl:
+        * dom/BeforeLoadEvent.idl:
+        * dom/CharacterData.idl:
+        * dom/ClientRectList.idl:
+        * dom/Clipboard.idl:
+        * dom/CustomEvent.idl:
+        * dom/DOMCoreException.idl:
+        * dom/DOMImplementation.idl:
+        * dom/DOMNamedFlowCollection.idl:
+        * dom/DOMStringList.idl:
+        * dom/DOMStringMap.idl:
+        * dom/DataTransferItem.idl:
+        * dom/DataTransferItemList.idl:
+        * dom/DeviceMotionEvent.idl:
+        * dom/DeviceOrientationEvent.idl:
+        * dom/Document.idl:
+        * dom/DocumentType.idl:
+        * dom/Element.idl:
+        * dom/Entity.idl:
+        * dom/ErrorEvent.idl:
+        * dom/Event.idl:
+        * dom/EventException.idl:
+        * dom/EventListener.idl:
+        * dom/EventTarget.idl:
+        * dom/HashChangeEvent.idl:
+        * dom/MessageChannel.idl:
+        * dom/MessageEvent.idl:
+        * dom/MessagePort.idl:
+        * dom/MouseEvent.idl:
+        * dom/MutationCallback.idl:
+        * dom/MutationObserver.idl:
+        * dom/MutationRecord.idl:
+        * dom/NamedNodeMap.idl:
+        * dom/Node.idl:
+        * dom/NodeFilter.idl:
+        * dom/NodeIterator.idl:
+        * dom/NodeList.idl:
+        * dom/Notation.idl:
+        * dom/OverflowEvent.idl:
+        * dom/PageTransitionEvent.idl:
+        * dom/PopStateEvent.idl:
+        * dom/ProcessingInstruction.idl:
+        * dom/ProgressEvent.idl:
+        * dom/PropertyNodeList.idl:
+        * dom/RangeException.idl:
+        * dom/RequestAnimationFrameCallback.idl:
+        * dom/ShadowRoot.idl:
+        * dom/StringCallback.idl:
+        * dom/Touch.idl:
+        * dom/TouchEvent.idl:
+        * dom/TouchList.idl:
+        * dom/TreeWalker.idl:
+        * dom/WebKitAnimationEvent.idl:
+        * dom/WebKitNamedFlow.idl:
+        * dom/WebKitTransitionEvent.idl:
+        * editing/DOMTransaction.idl:
+        * editing/UndoManager.idl:
+        * fileapi/Blob.idl:
+        * fileapi/File.idl:
+        * fileapi/FileError.idl:
+        * fileapi/FileException.idl:
+        * fileapi/FileList.idl:
+        * fileapi/FileReader.idl:
+        * fileapi/FileReaderSync.idl:
+        * html/DOMFormData.idl:
+        * html/DOMSettableTokenList.idl:
+        * html/DOMTokenList.idl:
+        * html/DOMURL.idl:
+        * html/HTMLAllCollection.idl:
+        * html/HTMLAnchorElement.idl:
+        * html/HTMLAppletElement.idl:
+        * html/HTMLAreaElement.idl:
+        * html/HTMLAudioElement.idl:
+        * html/HTMLBRElement.idl:
+        * html/HTMLBaseElement.idl:
+        * html/HTMLBaseFontElement.idl:
+        * html/HTMLBodyElement.idl:
+        * html/HTMLButtonElement.idl:
+        * html/HTMLCanvasElement.idl:
+        * html/HTMLCollection.idl:
+        * html/HTMLDListElement.idl:
+        * html/HTMLDataListElement.idl:
+        * html/HTMLDetailsElement.idl:
+        * html/HTMLDialogElement.idl:
+        * html/HTMLDirectoryElement.idl:
+        * html/HTMLDivElement.idl:
+        * html/HTMLDocument.idl:
+        * html/HTMLElement.idl:
+        * html/HTMLEmbedElement.idl:
+        * html/HTMLFieldSetElement.idl:
+        * html/HTMLFontElement.idl:
+        * html/HTMLFormElement.idl:
+        * html/HTMLFrameElement.idl:
+        * html/HTMLFrameSetElement.idl:
+        * html/HTMLHRElement.idl:
+        * html/HTMLHeadElement.idl:
+        * html/HTMLHeadingElement.idl:
+        * html/HTMLHtmlElement.idl:
+        * html/HTMLIFrameElement.idl:
+        * html/HTMLImageElement.idl:
+        * html/HTMLInputElement.idl:
+        * html/HTMLIntentElement.idl:
+        * html/HTMLKeygenElement.idl:
+        * html/HTMLLIElement.idl:
+        * html/HTMLLabelElement.idl:
+        * html/HTMLLegendElement.idl:
+        * html/HTMLLinkElement.idl:
+        * html/HTMLMapElement.idl:
+        * html/HTMLMarqueeElement.idl:
+        * html/HTMLMediaElement.idl:
+        * html/HTMLMenuElement.idl:
+        * html/HTMLMetaElement.idl:
+        * html/HTMLMeterElement.idl:
+        * html/HTMLModElement.idl:
+        * html/HTMLOListElement.idl:
+        * html/HTMLObjectElement.idl:
+        * html/HTMLOptGroupElement.idl:
+        * html/HTMLOptionElement.idl:
+        * html/HTMLOptionsCollection.idl:
+        * html/HTMLOutputElement.idl:
+        * html/HTMLParagraphElement.idl:
+        * html/HTMLParamElement.idl:
+        * html/HTMLPreElement.idl:
+        * html/HTMLProgressElement.idl:
+        * html/HTMLPropertiesCollection.idl:
+        * html/HTMLQuoteElement.idl:
+        * html/HTMLScriptElement.idl:
+        * html/HTMLSelectElement.idl:
+        * html/HTMLSourceElement.idl:
+        * html/HTMLStyleElement.idl:
+        * html/HTMLTableCaptionElement.idl:
+        * html/HTMLTableCellElement.idl:
+        * html/HTMLTableColElement.idl:
+        * html/HTMLTableElement.idl:
+        * html/HTMLTableRowElement.idl:
+        * html/HTMLTableSectionElement.idl:
+        * html/HTMLTextAreaElement.idl:
+        * html/HTMLTitleElement.idl:
+        * html/HTMLTrackElement.idl:
+        * html/HTMLUListElement.idl:
+        * html/HTMLVideoElement.idl:
+        * html/ImageData.idl:
+        * html/MediaController.idl:
+        * html/MediaError.idl:
+        * html/MediaKeyError.idl:
+        * html/MediaKeyEvent.idl:
+        * html/MicroDataItemValue.idl:
+        * html/RadioNodeList.idl:
+        * html/TimeRanges.idl:
+        * html/ValidityState.idl:
+        * html/VoidCallback.idl:
+        * html/canvas/ArrayBuffer.idl:
+        * html/canvas/ArrayBufferView.idl:
+        * html/canvas/CanvasRenderingContext.idl:
+        * html/canvas/CanvasRenderingContext2D.idl:
+        * html/canvas/DataView.idl:
+        * html/canvas/EXTTextureFilterAnisotropic.idl:
+        * html/canvas/Float32Array.idl:
+        * html/canvas/Float64Array.idl:
+        * html/canvas/Int16Array.idl:
+        * html/canvas/Int32Array.idl:
+        * html/canvas/Int8Array.idl:
+        * html/canvas/OESStandardDerivatives.idl:
+        * html/canvas/OESTextureFloat.idl:
+        * html/canvas/OESVertexArrayObject.idl:
+        * html/canvas/Uint16Array.idl:
+        * html/canvas/Uint32Array.idl:
+        * html/canvas/Uint8Array.idl:
+        * html/canvas/Uint8ClampedArray.idl:
+        * html/canvas/WebGLActiveInfo.idl:
+        * html/canvas/WebGLBuffer.idl:
+        * html/canvas/WebGLCompressedTextureS3TC.idl:
+        * html/canvas/WebGLContextAttributes.idl:
+        * html/canvas/WebGLContextEvent.idl:
+        * html/canvas/WebGLDebugRendererInfo.idl:
+        * html/canvas/WebGLDebugShaders.idl:
+        * html/canvas/WebGLDepthTexture.idl:
+        * html/canvas/WebGLFramebuffer.idl:
+        * html/canvas/WebGLLoseContext.idl:
+        * html/canvas/WebGLProgram.idl:
+        * html/canvas/WebGLRenderbuffer.idl:
+        * html/canvas/WebGLRenderingContext.idl:
+        * html/canvas/WebGLShader.idl:
+        * html/canvas/WebGLShaderPrecisionFormat.idl:
+        * html/canvas/WebGLTexture.idl:
+        * html/canvas/WebGLUniformLocation.idl:
+        * html/canvas/WebGLVertexArrayObjectOES.idl:
+        * html/shadow/HTMLContentElement.idl:
+        * html/shadow/HTMLShadowElement.idl:
+        * html/track/TextTrack.idl:
+        * html/track/TextTrackCue.idl:
+        * html/track/TextTrackCueList.idl:
+        * html/track/TextTrackList.idl:
+        * html/track/TrackEvent.idl:
+        * inspector/InjectedScriptHost.idl:
+        * inspector/InspectorFrontendHost.idl:
+        * inspector/JavaScriptCallFrame.idl:
+        * inspector/ScriptProfile.idl:
+        * inspector/ScriptProfileNode.idl:
+        * loader/appcache/DOMApplicationCache.idl:
+        * page/AbstractView.idl:
+        * page/BarInfo.idl:
+        * page/Console.idl:
+        * page/Coordinates.idl:
+        * page/Crypto.idl:
+        * page/DOMSecurityPolicy.idl:
+        * page/DOMSelection.idl:
+        * page/DOMWindow.idl:
+        * page/DOMWindowPagePopup.idl:
+        * page/EventSource.idl:
+        * page/History.idl:
+        * page/Location.idl:
+        * page/MemoryInfo.idl:
+        * page/Navigator.idl:
+        * page/PagePopupController.idl:
+        * page/Performance.idl:
+        * page/PerformanceEntry.idl:
+        * page/PerformanceEntryList.idl:
+        * page/PerformanceNavigation.idl:
+        * page/PerformanceResourceTiming.idl:
+        * page/PerformanceTiming.idl:
+        * page/Screen.idl:
+        * page/SpeechInputEvent.idl:
+        * page/SpeechInputResult.idl:
+        * page/SpeechInputResultList.idl:
+        * page/WebKitAnimation.idl:
+        * page/WebKitAnimationList.idl:
+        * page/WebKitPoint.idl:
+        * page/WorkerNavigator.idl:
+        * plugins/DOMMimeType.idl:
+        * plugins/DOMMimeTypeArray.idl:
+        * plugins/DOMPlugin.idl:
+        * plugins/DOMPluginArray.idl:
+        * storage/Storage.idl:
+        * storage/StorageEvent.idl:
+        * svg/ElementTimeControl.idl:
+        * svg/SVGAElement.idl:
+        * svg/SVGAltGlyphDefElement.idl:
+        * svg/SVGAltGlyphElement.idl:
+        * svg/SVGAltGlyphItemElement.idl:
+        * svg/SVGAngle.idl:
+        * svg/SVGAnimateColorElement.idl:
+        * svg/SVGAnimateElement.idl:
+        * svg/SVGAnimateMotionElement.idl:
+        * svg/SVGAnimateTransformElement.idl:
+        * svg/SVGAnimatedAngle.idl:
+        * svg/SVGAnimatedBoolean.idl:
+        * svg/SVGAnimatedEnumeration.idl:
+        * svg/SVGAnimatedInteger.idl:
+        * svg/SVGAnimatedLength.idl:
+        * svg/SVGAnimatedLengthList.idl:
+        * svg/SVGAnimatedNumber.idl:
+        * svg/SVGAnimatedNumberList.idl:
+        * svg/SVGAnimatedPreserveAspectRatio.idl:
+        * svg/SVGAnimatedRect.idl:
+        * svg/SVGAnimatedString.idl:
+        * svg/SVGAnimatedTransformList.idl:
+        * svg/SVGAnimationElement.idl:
+        * svg/SVGCircleElement.idl:
+        * svg/SVGClipPathElement.idl:
+        * svg/SVGColor.idl:
+        * svg/SVGComponentTransferFunctionElement.idl:
+        * svg/SVGCursorElement.idl:
+        * svg/SVGDefsElement.idl:
+        * svg/SVGDescElement.idl:
+        * svg/SVGDocument.idl:
+        * svg/SVGElement.idl:
+        * svg/SVGElementInstance.idl:
+        * svg/SVGElementInstanceList.idl:
+        * svg/SVGEllipseElement.idl:
+        * svg/SVGException.idl:
+        * svg/SVGExternalResourcesRequired.idl:
+        * svg/SVGFEBlendElement.idl:
+        * svg/SVGFEColorMatrixElement.idl:
+        * svg/SVGFEComponentTransferElement.idl:
+        * svg/SVGFECompositeElement.idl:
+        * svg/SVGFEConvolveMatrixElement.idl:
+        * svg/SVGFEDiffuseLightingElement.idl:
+        * svg/SVGFEDisplacementMapElement.idl:
+        * svg/SVGFEDistantLightElement.idl:
+        * svg/SVGFEDropShadowElement.idl:
+        * svg/SVGFEFloodElement.idl:
+        * svg/SVGFEFuncAElement.idl:
+        * svg/SVGFEFuncBElement.idl:
+        * svg/SVGFEFuncGElement.idl:
+        * svg/SVGFEFuncRElement.idl:
+        * svg/SVGFEGaussianBlurElement.idl:
+        * svg/SVGFEImageElement.idl:
+        * svg/SVGFEMergeElement.idl:
+        * svg/SVGFEMergeNodeElement.idl:
+        * svg/SVGFEMorphologyElement.idl:
+        * svg/SVGFEOffsetElement.idl:
+        * svg/SVGFEPointLightElement.idl:
+        * svg/SVGFESpecularLightingElement.idl:
+        * svg/SVGFESpotLightElement.idl:
+        * svg/SVGFETileElement.idl:
+        * svg/SVGFETurbulenceElement.idl:
+        * svg/SVGFilterElement.idl:
+        * svg/SVGFilterPrimitiveStandardAttributes.idl:
+        * svg/SVGFitToViewBox.idl:
+        * svg/SVGFontElement.idl:
+        * svg/SVGFontFaceElement.idl:
+        * svg/SVGFontFaceFormatElement.idl:
+        * svg/SVGFontFaceNameElement.idl:
+        * svg/SVGFontFaceSrcElement.idl:
+        * svg/SVGFontFaceUriElement.idl:
+        * svg/SVGForeignObjectElement.idl:
+        * svg/SVGGElement.idl:
+        * svg/SVGGlyphElement.idl:
+        * svg/SVGGlyphRefElement.idl:
+        * svg/SVGGradientElement.idl:
+        * svg/SVGHKernElement.idl:
+        * svg/SVGImageElement.idl:
+        * svg/SVGLangSpace.idl:
+        * svg/SVGLength.idl:
+        * svg/SVGLengthList.idl:
+        * svg/SVGLineElement.idl:
+        * svg/SVGLinearGradientElement.idl:
+        * svg/SVGLocatable.idl:
+        * svg/SVGMPathElement.idl:
+        * svg/SVGMarkerElement.idl:
+        * svg/SVGMaskElement.idl:
+        * svg/SVGMatrix.idl:
+        * svg/SVGMetadataElement.idl:
+        * svg/SVGMissingGlyphElement.idl:
+        * svg/SVGNumber.idl:
+        * svg/SVGNumberList.idl:
+        * svg/SVGPaint.idl:
+        * svg/SVGPathElement.idl:
+        * svg/SVGPathSeg.idl:
+        * svg/SVGPathSegArcAbs.idl:
+        * svg/SVGPathSegArcRel.idl:
+        * svg/SVGPathSegClosePath.idl:
+        * svg/SVGPathSegCurvetoCubicAbs.idl:
+        * svg/SVGPathSegCurvetoCubicRel.idl:
+        * svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
+        * svg/SVGPathSegCurvetoCubicSmoothRel.idl:
+        * svg/SVGPathSegCurvetoQuadraticAbs.idl:
+        * svg/SVGPathSegCurvetoQuadraticRel.idl:
+        * svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
+        * svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
+        * svg/SVGPathSegLinetoAbs.idl:
+        * svg/SVGPathSegLinetoHorizontalAbs.idl:
+        * svg/SVGPathSegLinetoHorizontalRel.idl:
+        * svg/SVGPathSegLinetoRel.idl:
+        * svg/SVGPathSegLinetoVerticalAbs.idl:
+        * svg/SVGPathSegLinetoVerticalRel.idl:
+        * svg/SVGPathSegList.idl:
+        * svg/SVGPathSegMovetoAbs.idl:
+        * svg/SVGPathSegMovetoRel.idl:
+        * svg/SVGPatternElement.idl:
+        * svg/SVGPoint.idl:
+        * svg/SVGPointList.idl:
+        * svg/SVGPolygonElement.idl:
+        * svg/SVGPolylineElement.idl:
+        * svg/SVGPreserveAspectRatio.idl:
+        * svg/SVGRadialGradientElement.idl:
+        * svg/SVGRect.idl:
+        * svg/SVGRectElement.idl:
+        * svg/SVGRenderingIntent.idl:
+        * svg/SVGSVGElement.idl:
+        * svg/SVGScriptElement.idl:
+        * svg/SVGSetElement.idl:
+        * svg/SVGStopElement.idl:
+        * svg/SVGStringList.idl:
+        * svg/SVGStylable.idl:
+        * svg/SVGStyleElement.idl:
+        * svg/SVGSwitchElement.idl:
+        * svg/SVGSymbolElement.idl:
+        * svg/SVGTRefElement.idl:
+        * svg/SVGTSpanElement.idl:
+        * svg/SVGTests.idl:
+        * svg/SVGTextContentElement.idl:
+        * svg/SVGTextElement.idl:
+        * svg/SVGTextPathElement.idl:
+        * svg/SVGTextPositioningElement.idl:
+        * svg/SVGTitleElement.idl:
+        * svg/SVGTransform.idl:
+        * svg/SVGTransformList.idl:
+        * svg/SVGTransformable.idl:
+        * svg/SVGURIReference.idl:
+        * svg/SVGUnitTypes.idl:
+        * svg/SVGUseElement.idl:
+        * svg/SVGVKernElement.idl:
+        * svg/SVGViewElement.idl:
+        * svg/SVGViewSpec.idl:
+        * svg/SVGZoomAndPan.idl:
+        * svg/SVGZoomEvent.idl:
+        * testing/InternalSettings.idl:
+        * testing/Internals.idl:
+        * testing/MallocStatistics.idl:
+        * workers/AbstractWorker.idl:
+        * workers/DedicatedWorkerContext.idl:
+        * workers/SharedWorker.idl:
+        * workers/SharedWorkerContext.idl:
+        * workers/Worker.idl:
+        * workers/WorkerContext.idl:
+        * workers/WorkerLocation.idl:
+        * xml/DOMParser.idl:
+        * xml/XMLHttpRequest.idl:
+        * xml/XMLHttpRequestException.idl:
+        * xml/XMLHttpRequestProgressEvent.idl:
+        * xml/XMLHttpRequestUpload.idl:
+        * xml/XMLSerializer.idl:
+        * xml/XPathEvaluator.idl:
+        * xml/XPathException.idl:
+        * xml/XPathNSResolver.idl:
+        * xml/XPathResult.idl:
+        * xml/XSLTProcessor.idl:
+        Moved extended attributes.
+
 2012-10-12  Pavel Feldman  <pfeldman@chromium.org>
 
         Web Inspector: never expand global scope automatically
diff --git a/Source/WebCore/Modules/battery/BatteryManager.idl b/Source/WebCore/Modules/battery/BatteryManager.idl
index 1c1d01e..ab2de39 100644
--- a/Source/WebCore/Modules/battery/BatteryManager.idl
+++ b/Source/WebCore/Modules/battery/BatteryManager.idl
@@ -18,11 +18,11 @@
  */
 
 // http://dev.w3.org/2009/dap/system-info/battery-status.html
-interface [
+[
     Conditional=BATTERY_STATUS,
     ActiveDOMObject,
     EventTarget
- ] BatteryManager {
+ ] interface BatteryManager {
     readonly attribute boolean charging;
     readonly attribute double chargingTime;
     readonly attribute double dischargingTime;
diff --git a/Source/WebCore/Modules/battery/NavigatorBattery.idl b/Source/WebCore/Modules/battery/NavigatorBattery.idl
index 7c41618..a1da4c7 100644
--- a/Source/WebCore/Modules/battery/NavigatorBattery.idl
+++ b/Source/WebCore/Modules/battery/NavigatorBattery.idl
@@ -17,10 +17,10 @@
  *  Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=BATTERY_STATUS,
     Supplemental=Navigator
-] NavigatorBattery {
+] interface NavigatorBattery {
     readonly attribute BatteryManager webkitBattery;
 };
 
diff --git a/Source/WebCore/Modules/filesystem/DOMFileSystem.idl b/Source/WebCore/Modules/filesystem/DOMFileSystem.idl
index 55037a4..0d3594e 100644
--- a/Source/WebCore/Modules/filesystem/DOMFileSystem.idl
+++ b/Source/WebCore/Modules/filesystem/DOMFileSystem.idl
@@ -29,11 +29,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     ActiveDOMObject,
     JSNoStaticTables
-] DOMFileSystem {
+] interface DOMFileSystem {
     readonly attribute DOMString name;
     readonly attribute DirectoryEntry root;
 };
diff --git a/Source/WebCore/Modules/filesystem/DOMFileSystemSync.idl b/Source/WebCore/Modules/filesystem/DOMFileSystemSync.idl
index 3a5e812..06db9e9 100644
--- a/Source/WebCore/Modules/filesystem/DOMFileSystemSync.idl
+++ b/Source/WebCore/Modules/filesystem/DOMFileSystemSync.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSNoStaticTables
-] DOMFileSystemSync {
+] interface DOMFileSystemSync {
     readonly attribute DOMString name;
     readonly attribute DirectoryEntrySync root;
 };
diff --git a/Source/WebCore/Modules/filesystem/DOMWindowFileSystem.idl b/Source/WebCore/Modules/filesystem/DOMWindowFileSystem.idl
index 9ba9a05..35ca800 100644
--- a/Source/WebCore/Modules/filesystem/DOMWindowFileSystem.idl
+++ b/Source/WebCore/Modules/filesystem/DOMWindowFileSystem.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Supplemental=DOMWindow
-] DOMWindowFileSystem {
+] interface DOMWindowFileSystem {
     const unsigned short TEMPORARY = 0;
     const unsigned short PERSISTENT = 1;
 
diff --git a/Source/WebCore/Modules/filesystem/DataTransferItemFileSystem.idl b/Source/WebCore/Modules/filesystem/DataTransferItemFileSystem.idl
index b3d78a0..86def72 100644
--- a/Source/WebCore/Modules/filesystem/DataTransferItemFileSystem.idl
+++ b/Source/WebCore/Modules/filesystem/DataTransferItemFileSystem.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=DATA_TRANSFER_ITEMS&FILE_SYSTEM,
     Supplemental=DataTransferItem
-] DataTransferItemFileSystem {
+] interface DataTransferItemFileSystem {
     [CallWith=ScriptExecutionContext] Entry webkitGetAsEntry();
 };
 
diff --git a/Source/WebCore/Modules/filesystem/DirectoryEntry.idl b/Source/WebCore/Modules/filesystem/DirectoryEntry.idl
index 0a41b02..63b427a 100644
--- a/Source/WebCore/Modules/filesystem/DirectoryEntry.idl
+++ b/Source/WebCore/Modules/filesystem/DirectoryEntry.idl
@@ -28,12 +28,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSGenerateToNativeObject,
     JSGenerateToJSObject,
     JSNoStaticTables
-] DirectoryEntry : Entry {
+] interface DirectoryEntry : Entry {
     DirectoryReader createReader();
     void getFile(in [TreatNullAs=NullString, TreatUndefinedAs=NullString] DOMString path, in [Optional] Dictionary options, in [Optional, Callback] EntryCallback successCallback, in [Optional, Callback] ErrorCallback errorCallback);
     void getDirectory(in [TreatNullAs=NullString, TreatUndefinedAs=NullString] DOMString path, in [Optional] Dictionary options, in [Optional, Callback] EntryCallback successCallback, in [Optional, Callback] ErrorCallback errorCallback);
diff --git a/Source/WebCore/Modules/filesystem/DirectoryEntrySync.idl b/Source/WebCore/Modules/filesystem/DirectoryEntrySync.idl
index 4fc9923..5f53a9d 100644
--- a/Source/WebCore/Modules/filesystem/DirectoryEntrySync.idl
+++ b/Source/WebCore/Modules/filesystem/DirectoryEntrySync.idl
@@ -28,12 +28,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSGenerateToNativeObject,
     JSGenerateToJSObject,
     JSNoStaticTables
-] DirectoryEntrySync : EntrySync {
+] interface DirectoryEntrySync : EntrySync {
     DirectoryReaderSync createReader() raises (FileException);
     FileEntrySync getFile(in [TreatNullAs=NullString, TreatUndefinedAs=NullString] DOMString path, in Dictionary flags) raises (FileException);
     DirectoryEntrySync getDirectory(in [TreatNullAs=NullString, TreatUndefinedAs=NullString] DOMString path, in Dictionary flags) raises (FileException);
diff --git a/Source/WebCore/Modules/filesystem/DirectoryReader.idl b/Source/WebCore/Modules/filesystem/DirectoryReader.idl
index a7baa50..3e34544 100644
--- a/Source/WebCore/Modules/filesystem/DirectoryReader.idl
+++ b/Source/WebCore/Modules/filesystem/DirectoryReader.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSNoStaticTables
-] DirectoryReader {
+] interface DirectoryReader {
     void readEntries(in [Callback] EntriesCallback successCallback, in [Optional, Callback] ErrorCallback errorCallback);
 };
diff --git a/Source/WebCore/Modules/filesystem/DirectoryReaderSync.idl b/Source/WebCore/Modules/filesystem/DirectoryReaderSync.idl
index 2e71772..acfba52 100644
--- a/Source/WebCore/Modules/filesystem/DirectoryReaderSync.idl
+++ b/Source/WebCore/Modules/filesystem/DirectoryReaderSync.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSNoStaticTables
-] DirectoryReaderSync {
+] interface DirectoryReaderSync {
     EntryArraySync readEntries() raises (FileException);
 };
diff --git a/Source/WebCore/Modules/filesystem/EntriesCallback.idl b/Source/WebCore/Modules/filesystem/EntriesCallback.idl
index 9726a55..26f1a21 100644
--- a/Source/WebCore/Modules/filesystem/EntriesCallback.idl
+++ b/Source/WebCore/Modules/filesystem/EntriesCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Callback
-] EntriesCallback {
+] interface EntriesCallback {
     boolean handleEvent(in EntryArray entries);
 };
diff --git a/Source/WebCore/Modules/filesystem/Entry.idl b/Source/WebCore/Modules/filesystem/Entry.idl
index a068f3f..c43def4 100644
--- a/Source/WebCore/Modules/filesystem/Entry.idl
+++ b/Source/WebCore/Modules/filesystem/Entry.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     CustomToJSObject,
     JSNoStaticTables
-] Entry {
+] interface Entry {
     readonly attribute boolean isFile;
     readonly attribute boolean isDirectory;
     readonly attribute DOMString name;
diff --git a/Source/WebCore/Modules/filesystem/EntryArray.idl b/Source/WebCore/Modules/filesystem/EntryArray.idl
index 8d9ad19..66a834b 100644
--- a/Source/WebCore/Modules/filesystem/EntryArray.idl
+++ b/Source/WebCore/Modules/filesystem/EntryArray.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     IndexedGetter,
     JSNoStaticTables
-] EntryArray {
+] interface EntryArray {
     readonly attribute unsigned long length;
     Entry item(in [IsIndex] unsigned long index);
 };
diff --git a/Source/WebCore/Modules/filesystem/EntryArraySync.idl b/Source/WebCore/Modules/filesystem/EntryArraySync.idl
index 072a2ab..0760c0b 100644
--- a/Source/WebCore/Modules/filesystem/EntryArraySync.idl
+++ b/Source/WebCore/Modules/filesystem/EntryArraySync.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     IndexedGetter,
     JSNoStaticTables
-] EntryArraySync {
+] interface EntryArraySync {
     readonly attribute unsigned long length;
     EntrySync item(in [IsIndex] unsigned long index);
 };
diff --git a/Source/WebCore/Modules/filesystem/EntryCallback.idl b/Source/WebCore/Modules/filesystem/EntryCallback.idl
index cf3d578..b4db4db 100644
--- a/Source/WebCore/Modules/filesystem/EntryCallback.idl
+++ b/Source/WebCore/Modules/filesystem/EntryCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Callback
-] EntryCallback {
+] interface EntryCallback {
     boolean handleEvent(in Entry entry);
 };
diff --git a/Source/WebCore/Modules/filesystem/EntrySync.idl b/Source/WebCore/Modules/filesystem/EntrySync.idl
index 9e3088c..20b43b3 100644
--- a/Source/WebCore/Modules/filesystem/EntrySync.idl
+++ b/Source/WebCore/Modules/filesystem/EntrySync.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     CustomToJSObject,
     JSNoStaticTables
-] EntrySync {
+] interface EntrySync {
     readonly attribute boolean isFile;
     readonly attribute boolean isDirectory;
     readonly attribute DOMString name;
diff --git a/Source/WebCore/Modules/filesystem/ErrorCallback.idl b/Source/WebCore/Modules/filesystem/ErrorCallback.idl
index a763274..f840a50 100644
--- a/Source/WebCore/Modules/filesystem/ErrorCallback.idl
+++ b/Source/WebCore/Modules/filesystem/ErrorCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Callback
-] ErrorCallback {
+] interface ErrorCallback {
     boolean handleEvent(in FileError error);
 };
diff --git a/Source/WebCore/Modules/filesystem/FileCallback.idl b/Source/WebCore/Modules/filesystem/FileCallback.idl
index ddbae31..00beba8 100644
--- a/Source/WebCore/Modules/filesystem/FileCallback.idl
+++ b/Source/WebCore/Modules/filesystem/FileCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Callback
-] FileCallback {
+] interface FileCallback {
     boolean handleEvent(in File file);
 };
diff --git a/Source/WebCore/Modules/filesystem/FileEntry.idl b/Source/WebCore/Modules/filesystem/FileEntry.idl
index d83f5d2..9bad551 100644
--- a/Source/WebCore/Modules/filesystem/FileEntry.idl
+++ b/Source/WebCore/Modules/filesystem/FileEntry.idl
@@ -28,12 +28,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSGenerateToNativeObject,
     JSGenerateToJSObject,
     JSNoStaticTables
-] FileEntry : Entry {
+] interface FileEntry : Entry {
     void createWriter(in [Callback] FileWriterCallback successCallback, in [Optional, Callback] ErrorCallback errorCallback);
     void file(in [Callback] FileCallback successCallback, in [Optional, Callback] ErrorCallback errorCallback);
 };
diff --git a/Source/WebCore/Modules/filesystem/FileEntrySync.idl b/Source/WebCore/Modules/filesystem/FileEntrySync.idl
index 53052c6..8876400 100644
--- a/Source/WebCore/Modules/filesystem/FileEntrySync.idl
+++ b/Source/WebCore/Modules/filesystem/FileEntrySync.idl
@@ -28,12 +28,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSGenerateToNativeObject,
     JSGenerateToJSObject,
     JSNoStaticTables
-] FileEntrySync : EntrySync {
+] interface FileEntrySync : EntrySync {
     File file() raises (FileException);
     FileWriterSync createWriter() raises (FileException);
 };
diff --git a/Source/WebCore/Modules/filesystem/FileSystemCallback.idl b/Source/WebCore/Modules/filesystem/FileSystemCallback.idl
index 940e238..c8006b2 100644
--- a/Source/WebCore/Modules/filesystem/FileSystemCallback.idl
+++ b/Source/WebCore/Modules/filesystem/FileSystemCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Callback
-] FileSystemCallback {
+] interface FileSystemCallback {
     boolean handleEvent(in DOMFileSystem fileSystem);
 };
diff --git a/Source/WebCore/Modules/filesystem/FileWriter.idl b/Source/WebCore/Modules/filesystem/FileWriter.idl
index e95764d..f4b2e91 100644
--- a/Source/WebCore/Modules/filesystem/FileWriter.idl
+++ b/Source/WebCore/Modules/filesystem/FileWriter.idl
@@ -29,13 +29,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     ActiveDOMObject,
     CallWith=ScriptExecutionContext,
     EventTarget,
     JSNoStaticTables
-] FileWriter {
+] interface FileWriter {
     // ready states
     const unsigned short INIT = 0;
     const unsigned short WRITING = 1;
diff --git a/Source/WebCore/Modules/filesystem/FileWriterCallback.idl b/Source/WebCore/Modules/filesystem/FileWriterCallback.idl
index b4d1b50..9c920a4 100644
--- a/Source/WebCore/Modules/filesystem/FileWriterCallback.idl
+++ b/Source/WebCore/Modules/filesystem/FileWriterCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Callback
-] FileWriterCallback {
+] interface FileWriterCallback {
     boolean handleEvent(in FileWriter fileWriter);
 };
diff --git a/Source/WebCore/Modules/filesystem/FileWriterSync.idl b/Source/WebCore/Modules/filesystem/FileWriterSync.idl
index 264bb95..13301da 100644
--- a/Source/WebCore/Modules/filesystem/FileWriterSync.idl
+++ b/Source/WebCore/Modules/filesystem/FileWriterSync.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSNoStaticTables
-] FileWriterSync {
+] interface FileWriterSync {
     // synchronous write/modify methods
     void write(in Blob data) raises (FileException);
     void seek(in long long position) raises (FileException);
diff --git a/Source/WebCore/Modules/filesystem/HTMLInputElementFileSystem.idl b/Source/WebCore/Modules/filesystem/HTMLInputElementFileSystem.idl
index 3222c2b..8fa2629 100644
--- a/Source/WebCore/Modules/filesystem/HTMLInputElementFileSystem.idl
+++ b/Source/WebCore/Modules/filesystem/HTMLInputElementFileSystem.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Supplemental=HTMLInputElement
-] HTMLInputElementFileSystem {
-    readonly attribute [V8EnabledAtRuntime=FileSystem,CallWith=ScriptExecutionContext] EntryArray webkitEntries;
+] interface HTMLInputElementFileSystem {
+    [V8EnabledAtRuntime=FileSystem,CallWith=ScriptExecutionContext] readonly attribute EntryArray webkitEntries;
 };
 
diff --git a/Source/WebCore/Modules/filesystem/Metadata.idl b/Source/WebCore/Modules/filesystem/Metadata.idl
index 2a46741..38e09df 100644
--- a/Source/WebCore/Modules/filesystem/Metadata.idl
+++ b/Source/WebCore/Modules/filesystem/Metadata.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     JSNoStaticTables
-] Metadata {
+] interface Metadata {
     readonly attribute Date modificationTime;
     readonly attribute unsigned long long size;
 };
diff --git a/Source/WebCore/Modules/filesystem/MetadataCallback.idl b/Source/WebCore/Modules/filesystem/MetadataCallback.idl
index 3981a1c..86c5cc6 100644
--- a/Source/WebCore/Modules/filesystem/MetadataCallback.idl
+++ b/Source/WebCore/Modules/filesystem/MetadataCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Callback
-] MetadataCallback {
+] interface MetadataCallback {
     boolean handleEvent(in Metadata metadata);
 };
diff --git a/Source/WebCore/Modules/filesystem/WorkerContextFileSystem.idl b/Source/WebCore/Modules/filesystem/WorkerContextFileSystem.idl
index 6636167..645e347 100644
--- a/Source/WebCore/Modules/filesystem/WorkerContextFileSystem.idl
+++ b/Source/WebCore/Modules/filesystem/WorkerContextFileSystem.idl
@@ -24,10 +24,10 @@
  *
  */
 
-interface [
+[
     Conditional=FILE_SYSTEM,
     Supplemental=WorkerContext
-] WorkerContextFileSystem {
+] interface WorkerContextFileSystem {
     const unsigned short TEMPORARY = 0;
     const unsigned short PERSISTENT = 1;
 
@@ -36,7 +36,7 @@
     [V8EnabledAtRuntime=FileSystem] void webkitResolveLocalFileSystemURL(in DOMString url, in [Callback] EntryCallback successCallback, in [Callback, Optional] ErrorCallback errorCallback);
     [V8EnabledAtRuntime=FileSystem] EntrySync webkitResolveLocalFileSystemSyncURL(in DOMString url) raises (FileException);
 
-    attribute [V8EnabledAtRuntime=FileSystem] FileErrorConstructor FileError;
-    attribute [V8EnabledAtRuntime=FileSystem] FileExceptionConstructor FileException;
+    [V8EnabledAtRuntime=FileSystem] attribute FileErrorConstructor FileError;
+    [V8EnabledAtRuntime=FileSystem] attribute FileExceptionConstructor FileException;
 };
 
diff --git a/Source/WebCore/Modules/gamepad/Gamepad.idl b/Source/WebCore/Modules/gamepad/Gamepad.idl
index e2b0006..656d7da 100644
--- a/Source/WebCore/Modules/gamepad/Gamepad.idl
+++ b/Source/WebCore/Modules/gamepad/Gamepad.idl
@@ -23,9 +23,9 @@
  * DAMAGE.
  */
 
-interface [
+[
     Conditional=GAMEPAD
-] Gamepad {
+] interface Gamepad {
     readonly attribute DOMString id;
     readonly attribute unsigned long index;
     readonly attribute unsigned long long timestamp;
diff --git a/Source/WebCore/Modules/gamepad/GamepadList.idl b/Source/WebCore/Modules/gamepad/GamepadList.idl
index 4fea9a9..8008687 100644
--- a/Source/WebCore/Modules/gamepad/GamepadList.idl
+++ b/Source/WebCore/Modules/gamepad/GamepadList.idl
@@ -23,10 +23,10 @@
  * DAMAGE.
  */
 
-interface [
+[
     Conditional=GAMEPAD,
     IndexedGetter
-] GamepadList {
+] interface GamepadList {
     readonly attribute unsigned long length;
     Gamepad item(in [Optional=DefaultIsUndefined] unsigned long index);
 };
diff --git a/Source/WebCore/Modules/gamepad/NavigatorGamepad.idl b/Source/WebCore/Modules/gamepad/NavigatorGamepad.idl
index 9554b8f..fdf17b7 100644
--- a/Source/WebCore/Modules/gamepad/NavigatorGamepad.idl
+++ b/Source/WebCore/Modules/gamepad/NavigatorGamepad.idl
@@ -17,10 +17,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=GAMEPAD,
     Supplemental=Navigator
-] NavigatorGamepad {
+] interface NavigatorGamepad {
     [V8EnabledAtRuntime] GamepadList webkitGetGamepads();
 };
 
diff --git a/Source/WebCore/Modules/geolocation/Geolocation.idl b/Source/WebCore/Modules/geolocation/Geolocation.idl
index f27be58..5ad3c7b 100644
--- a/Source/WebCore/Modules/geolocation/Geolocation.idl
+++ b/Source/WebCore/Modules/geolocation/Geolocation.idl
@@ -24,11 +24,11 @@
  */
 
 // http://www.w3.org/TR/geolocation-API/#geolocation_interface
-interface [
+[
     Conditional=GEOLOCATION, 
     JSGenerateIsReachable=ImplFrame,
     OmitConstructor
-] Geolocation {
+] interface Geolocation {
     [Custom] void getCurrentPosition(in PositionCallback successCallback,
                                      in [Optional] PositionErrorCallback errorCallback,
                                      in [Optional] PositionOptions options);
diff --git a/Source/WebCore/Modules/geolocation/Geoposition.idl b/Source/WebCore/Modules/geolocation/Geoposition.idl
index 00d9ddb..f4d296a 100644
--- a/Source/WebCore/Modules/geolocation/Geoposition.idl
+++ b/Source/WebCore/Modules/geolocation/Geoposition.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=GEOLOCATION,
     OmitConstructor
-] Geoposition {
+] interface Geoposition {
     readonly attribute Coordinates coords;
     readonly attribute DOMTimeStamp timestamp;
 };
diff --git a/Source/WebCore/Modules/geolocation/NavigatorGeolocation.idl b/Source/WebCore/Modules/geolocation/NavigatorGeolocation.idl
index 00a4034..c8c5cb2 100644
--- a/Source/WebCore/Modules/geolocation/NavigatorGeolocation.idl
+++ b/Source/WebCore/Modules/geolocation/NavigatorGeolocation.idl
@@ -17,10 +17,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=GEOLOCATION,
     Supplemental=Navigator
-] NavigatorGeolocation {
-    readonly attribute [V8EnabledAtRuntime] Geolocation geolocation;
+] interface NavigatorGeolocation {
+    [V8EnabledAtRuntime] readonly attribute Geolocation geolocation;
 };
 
diff --git a/Source/WebCore/Modules/geolocation/PositionCallback.idl b/Source/WebCore/Modules/geolocation/PositionCallback.idl
index 96b8313..de2eeb3 100644
--- a/Source/WebCore/Modules/geolocation/PositionCallback.idl
+++ b/Source/WebCore/Modules/geolocation/PositionCallback.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=GEOLOCATION,
     Callback
-] PositionCallback {
+] interface PositionCallback {
     boolean handleEvent(in Geoposition position);
 };
diff --git a/Source/WebCore/Modules/geolocation/PositionError.idl b/Source/WebCore/Modules/geolocation/PositionError.idl
index e1f23d6..7fbe987 100644
--- a/Source/WebCore/Modules/geolocation/PositionError.idl
+++ b/Source/WebCore/Modules/geolocation/PositionError.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=GEOLOCATION
-] PositionError {
+] interface PositionError {
     readonly attribute unsigned short code;
     readonly attribute DOMString message;
 
diff --git a/Source/WebCore/Modules/geolocation/PositionErrorCallback.idl b/Source/WebCore/Modules/geolocation/PositionErrorCallback.idl
index cd4fa31..8d78488 100644
--- a/Source/WebCore/Modules/geolocation/PositionErrorCallback.idl
+++ b/Source/WebCore/Modules/geolocation/PositionErrorCallback.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=GEOLOCATION,
     Callback
-] PositionErrorCallback {
+] interface PositionErrorCallback {
     boolean handleEvent(in PositionError error);
 };
diff --git a/Source/WebCore/Modules/indexeddb/DOMWindowIndexedDatabase.idl b/Source/WebCore/Modules/indexeddb/DOMWindowIndexedDatabase.idl
index 5f3d656..fe93255 100644
--- a/Source/WebCore/Modules/indexeddb/DOMWindowIndexedDatabase.idl
+++ b/Source/WebCore/Modules/indexeddb/DOMWindowIndexedDatabase.idl
@@ -24,11 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     Supplemental=DOMWindow
-] DOMWindowIndexedDatabase {
-    readonly attribute [ImplementedAs=indexedDB,V8MeasureAs=PrefixedIndexedDB] IDBFactory webkitIndexedDB;
+] interface DOMWindowIndexedDatabase {
+    [ImplementedAs=indexedDB,V8MeasureAs=PrefixedIndexedDB] readonly attribute IDBFactory webkitIndexedDB;
 
     attribute IDBCursorConstructor webkitIDBCursor;
     attribute IDBDatabaseConstructor webkitIDBDatabase;
@@ -40,7 +40,7 @@
     attribute IDBRequestConstructor webkitIDBRequest;
     attribute IDBTransactionConstructor webkitIDBTransaction;
 
-    readonly attribute [V8MeasureAs=UnprefixedIndexedDB] IDBFactory indexedDB;
+    [V8MeasureAs=UnprefixedIndexedDB] readonly attribute IDBFactory indexedDB;
 
     attribute IDBCursorConstructor IDBCursor;
     attribute IDBCursorWithValueConstructor IDBCursorWithValue;
diff --git a/Source/WebCore/Modules/indexeddb/IDBAny.idl b/Source/WebCore/Modules/indexeddb/IDBAny.idl
index de1897f..59618ad 100644
--- a/Source/WebCore/Modules/indexeddb/IDBAny.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBAny.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     CustomToJSObject
-] IDBAny {
+] interface IDBAny {
     // This space is intentionally left blank.
 };
diff --git a/Source/WebCore/Modules/indexeddb/IDBCursor.idl b/Source/WebCore/Modules/indexeddb/IDBCursor.idl
index afe761d..375479b 100644
--- a/Source/WebCore/Modules/indexeddb/IDBCursor.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBCursor.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
-] IDBCursor {
+] interface IDBCursor {
     // FIXME: Eventually remove legacy enum constants, see https://bugs.webkit.org/show_bug.cgi?id=85315
     const unsigned short NEXT = 0;
     const unsigned short NEXT_NO_DUPLICATE = 1;
diff --git a/Source/WebCore/Modules/indexeddb/IDBCursorWithValue.idl b/Source/WebCore/Modules/indexeddb/IDBCursorWithValue.idl
index 7291f97..98cc65b 100644
--- a/Source/WebCore/Modules/indexeddb/IDBCursorWithValue.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBCursorWithValue.idl
@@ -23,8 +23,8 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE
-] IDBCursorWithValue : IDBCursor {
-    readonly attribute [V8CustomGetter] IDBAny value;
+] interface IDBCursorWithValue : IDBCursor {
+    [V8CustomGetter] readonly attribute IDBAny value;
 };
diff --git a/Source/WebCore/Modules/indexeddb/IDBDatabase.idl b/Source/WebCore/Modules/indexeddb/IDBDatabase.idl
index cb9af4e..91ef1d8 100644
--- a/Source/WebCore/Modules/indexeddb/IDBDatabase.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBDatabase.idl
@@ -24,11 +24,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     ActiveDOMObject,
     EventTarget
-] IDBDatabase {
+] interface IDBDatabase {
     readonly attribute DOMString name;
     readonly attribute IDBAny version;
     readonly attribute DOMStringList objectStoreNames;
diff --git a/Source/WebCore/Modules/indexeddb/IDBDatabaseException.idl b/Source/WebCore/Modules/indexeddb/IDBDatabaseException.idl
index 7baa6a2..bb215bd 100644
--- a/Source/WebCore/Modules/indexeddb/IDBDatabaseException.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBDatabaseException.idl
@@ -23,10 +23,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-exception [
+[
     Conditional=INDEXED_DATABASE,
     DoNotCheckConstants
-] IDBDatabaseException {
+] exception IDBDatabaseException {
 
     readonly attribute unsigned short   code;
     readonly attribute DOMString        name;
diff --git a/Source/WebCore/Modules/indexeddb/IDBFactory.idl b/Source/WebCore/Modules/indexeddb/IDBFactory.idl
index 6430e82d..dfb2768 100644
--- a/Source/WebCore/Modules/indexeddb/IDBFactory.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBFactory.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE
-] IDBFactory {
+] interface IDBFactory {
     [CallWith=ScriptExecutionContext, ImplementedAs=getDatabaseNames] IDBRequest webkitGetDatabaseNames();
 
     [CallWith=ScriptExecutionContext] IDBOpenDBRequest open(in DOMString name, in [Optional] unsigned long long version)
diff --git a/Source/WebCore/Modules/indexeddb/IDBIndex.idl b/Source/WebCore/Modules/indexeddb/IDBIndex.idl
index d097e8f..effa9cf4 100644
--- a/Source/WebCore/Modules/indexeddb/IDBIndex.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBIndex.idl
@@ -23,12 +23,12 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE
-] IDBIndex {
+] interface IDBIndex {
     readonly attribute DOMString name;
     readonly attribute IDBObjectStore objectStore;
-    readonly attribute [ImplementedAs=keyPathAny] IDBAny keyPath;
+    [ImplementedAs=keyPathAny] readonly attribute IDBAny keyPath;
     readonly attribute boolean unique;
     readonly attribute boolean multiEntry;
 
diff --git a/Source/WebCore/Modules/indexeddb/IDBKey.idl b/Source/WebCore/Modules/indexeddb/IDBKey.idl
index 7c09874..3b96fc1 100644
--- a/Source/WebCore/Modules/indexeddb/IDBKey.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBKey.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     CustomToJSObject
-] IDBKey {
+] interface IDBKey {
     // This space is intentionally left blank.
 };
diff --git a/Source/WebCore/Modules/indexeddb/IDBKeyRange.idl b/Source/WebCore/Modules/indexeddb/IDBKeyRange.idl
index 56deefb..820628a 100644
--- a/Source/WebCore/Modules/indexeddb/IDBKeyRange.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBKeyRange.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE
-] IDBKeyRange {
+] interface IDBKeyRange {
     readonly attribute IDBKey lower;
     readonly attribute IDBKey upper;
     readonly attribute boolean lowerOpen;
diff --git a/Source/WebCore/Modules/indexeddb/IDBObjectStore.idl b/Source/WebCore/Modules/indexeddb/IDBObjectStore.idl
index 6e939de..1320434 100644
--- a/Source/WebCore/Modules/indexeddb/IDBObjectStore.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBObjectStore.idl
@@ -23,11 +23,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE
-] IDBObjectStore {
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString name;
-    readonly attribute [ImplementedAs=keyPathAny] IDBAny keyPath;
+] interface IDBObjectStore {
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString name;
+    [ImplementedAs=keyPathAny] readonly attribute IDBAny keyPath;
     readonly attribute DOMStringList indexNames;
     readonly attribute IDBTransaction transaction;
     readonly attribute boolean autoIncrement;
diff --git a/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.idl b/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.idl
index f21d023..bbde9bc 100644
--- a/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBOpenDBRequest.idl
@@ -23,11 +23,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     ActiveDOMObject,
     EventTarget
-] IDBOpenDBRequest : IDBRequest {
+] interface IDBOpenDBRequest : IDBRequest {
     attribute EventListener onblocked;
     attribute EventListener onupgradeneeded;
 };
diff --git a/Source/WebCore/Modules/indexeddb/IDBRequest.idl b/Source/WebCore/Modules/indexeddb/IDBRequest.idl
index 84c746f..4e8ff09 100644
--- a/Source/WebCore/Modules/indexeddb/IDBRequest.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBRequest.idl
@@ -27,18 +27,18 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     ActiveDOMObject,
     EventTarget
-] IDBRequest {
+] interface IDBRequest {
     readonly attribute IDBAny result
         getter raises (IDBDatabaseException);
     readonly attribute unsigned short errorCode
         getter raises (IDBDatabaseException);
     readonly attribute DOMError error
         getter raises (IDBDatabaseException);
-    readonly attribute [TreatReturnedNullStringAs=Undefined] DOMString webkitErrorMessage
+    [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString webkitErrorMessage
         getter raises (IDBDatabaseException);
 
     readonly attribute IDBAny source;
diff --git a/Source/WebCore/Modules/indexeddb/IDBTransaction.idl b/Source/WebCore/Modules/indexeddb/IDBTransaction.idl
index 342cd65..72faa8d 100644
--- a/Source/WebCore/Modules/indexeddb/IDBTransaction.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBTransaction.idl
@@ -24,11 +24,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     ActiveDOMObject,
     EventTarget
-] IDBTransaction {
+] interface IDBTransaction {
     // FIXME: Eventually remove legacy enum constants, see https://bugs.webkit.org/show_bug.cgi?id=85315
     const unsigned short READ_ONLY = 0;
     const unsigned short READ_WRITE = 1;
diff --git a/Source/WebCore/Modules/indexeddb/IDBUpgradeNeededEvent.idl b/Source/WebCore/Modules/indexeddb/IDBUpgradeNeededEvent.idl
index e6ba93c..0810dd2 100644
--- a/Source/WebCore/Modules/indexeddb/IDBUpgradeNeededEvent.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBUpgradeNeededEvent.idl
@@ -23,10 +23,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     InterfaceName=IDBVersionChangeEvent
-] IDBUpgradeNeededEvent : Event {
+] interface IDBUpgradeNeededEvent : Event {
     readonly attribute unsigned long long oldVersion;
     readonly attribute unsigned long long newVersion;
 };
diff --git a/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.idl b/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.idl
index f879ece..f92ef53 100644
--- a/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBVersionChangeEvent.idl
@@ -23,8 +23,8 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE
-] IDBVersionChangeEvent : Event {
+] interface IDBVersionChangeEvent : Event {
     readonly attribute DOMString version;
 };
diff --git a/Source/WebCore/Modules/indexeddb/IDBVersionChangeRequest.idl b/Source/WebCore/Modules/indexeddb/IDBVersionChangeRequest.idl
index fe2a05f..497b57b 100644
--- a/Source/WebCore/Modules/indexeddb/IDBVersionChangeRequest.idl
+++ b/Source/WebCore/Modules/indexeddb/IDBVersionChangeRequest.idl
@@ -23,10 +23,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     ActiveDOMObject,
     EventTarget
-] IDBVersionChangeRequest : IDBRequest {
+] interface IDBVersionChangeRequest : IDBRequest {
     attribute EventListener onblocked;
 };
diff --git a/Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.idl b/Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.idl
index 24fd5e4..9c8b144 100644
--- a/Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.idl
+++ b/Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.idl
@@ -24,11 +24,11 @@
  *
  */
 
-interface [
+[
     Conditional=INDEXED_DATABASE,
     Supplemental=WorkerContext
-] WorkerContextIndexedDatabase {
-    readonly attribute [ImplementedAs=indexedDB,V8EnabledAtRuntime] IDBFactory webkitIndexedDB;
+] interface WorkerContextIndexedDatabase {
+    [ImplementedAs=indexedDB,V8EnabledAtRuntime] readonly attribute IDBFactory webkitIndexedDB;
 
     attribute IDBCursorConstructor webkitIDBCursor;
     attribute IDBDatabaseConstructor webkitIDBDatabase;
@@ -40,7 +40,7 @@
     attribute IDBRequestConstructor webkitIDBRequest;
     attribute IDBTransactionConstructor webkitIDBTransaction;
 
-    readonly attribute [V8EnabledAtRuntime] IDBFactory indexedDB;
+    [V8EnabledAtRuntime] readonly attribute IDBFactory indexedDB;
 
     attribute IDBCursorConstructor IDBCursor;
     attribute IDBCursorWithValueConstructor IDBCursorWithValue;
diff --git a/Source/WebCore/Modules/intents/DOMWindowIntents.idl b/Source/WebCore/Modules/intents/DOMWindowIntents.idl
index 7a9594c..766f5f9 100644
--- a/Source/WebCore/Modules/intents/DOMWindowIntents.idl
+++ b/Source/WebCore/Modules/intents/DOMWindowIntents.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_INTENTS,
     Supplemental=DOMWindow
-] DOMWindowIntents {
+] interface DOMWindowIntents {
     attribute IntentConstructor WebKitIntent;
 
-    attribute [Replaceable] DeliveredIntent webkitIntent;
+    [Replaceable] attribute DeliveredIntent webkitIntent;
 };
 
diff --git a/Source/WebCore/Modules/intents/DeliveredIntent.idl b/Source/WebCore/Modules/intents/DeliveredIntent.idl
index 783cb79..39a0f17 100644
--- a/Source/WebCore/Modules/intents/DeliveredIntent.idl
+++ b/Source/WebCore/Modules/intents/DeliveredIntent.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_INTENTS,
-] DeliveredIntent : Intent {
+] interface DeliveredIntent : Intent {
     readonly attribute MessagePortArray ports;
 
     [TreatReturnedNullStringAs=Null] DOMString getExtra(in DOMString key);
diff --git a/Source/WebCore/Modules/intents/NavigatorIntents.idl b/Source/WebCore/Modules/intents/NavigatorIntents.idl
index 210666e..73e31eb 100644
--- a/Source/WebCore/Modules/intents/NavigatorIntents.idl
+++ b/Source/WebCore/Modules/intents/NavigatorIntents.idl
@@ -17,10 +17,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=WEB_INTENTS,
     Supplemental=Navigator
-] NavigatorIntents {
+] interface NavigatorIntents {
     void webkitStartActivity(in Intent intent,
                              in [Callback, Optional] IntentResultCallback successCallback,
                              in [Callback, Optional] IntentResultCallback failureCallback)
diff --git a/Source/WebCore/Modules/mediasource/MediaSource.idl b/Source/WebCore/Modules/mediasource/MediaSource.idl
index aadd290..bc0f6c9 100644
--- a/Source/WebCore/Modules/mediasource/MediaSource.idl
+++ b/Source/WebCore/Modules/mediasource/MediaSource.idl
@@ -28,13 +28,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  
-interface [
+[
     Conditional=MEDIA_SOURCE,
     V8EnabledAtRuntime=mediaSource,
     EventTarget,
     Constructor,
     CallWith=ScriptExecutionContext
-] MediaSource {
+] interface MediaSource {
     // All the source buffers created by this object.
     readonly attribute SourceBufferList sourceBuffers;
 
diff --git a/Source/WebCore/Modules/mediasource/SourceBuffer.idl b/Source/WebCore/Modules/mediasource/SourceBuffer.idl
index 3bb4236..c24b8fa 100644
--- a/Source/WebCore/Modules/mediasource/SourceBuffer.idl
+++ b/Source/WebCore/Modules/mediasource/SourceBuffer.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  
-interface [
+[
     Conditional=MEDIA_SOURCE,
     V8EnabledAtRuntime=mediaSource
-] SourceBuffer {
+] interface SourceBuffer {
 
     // Returns the time ranges buffered.
     readonly attribute TimeRanges buffered
diff --git a/Source/WebCore/Modules/mediasource/SourceBufferList.idl b/Source/WebCore/Modules/mediasource/SourceBufferList.idl
index 787da09..588a922 100644
--- a/Source/WebCore/Modules/mediasource/SourceBufferList.idl
+++ b/Source/WebCore/Modules/mediasource/SourceBufferList.idl
@@ -28,13 +28,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
  
-interface [
+[
     Conditional=MEDIA_SOURCE,
     V8EnabledAtRuntime=mediaSource,
     IndexedGetter,
     EventTarget,
     CallWith=ScriptExecutionContext
-] SourceBufferList {
+] interface SourceBufferList {
     readonly attribute unsigned long length;
     SourceBuffer item(in unsigned long index);
 
diff --git a/Source/WebCore/Modules/mediastream/DOMWindowMediaStream.idl b/Source/WebCore/Modules/mediastream/DOMWindowMediaStream.idl
index 84a4da4..8eb99d5 100644
--- a/Source/WebCore/Modules/mediastream/DOMWindowMediaStream.idl
+++ b/Source/WebCore/Modules/mediastream/DOMWindowMediaStream.idl
@@ -24,13 +24,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Supplemental=DOMWindow
-] DOMWindowMediaStream {
-    attribute [V8EnabledAtRuntime] MediaStreamConstructor webkitMediaStream;
-    attribute [V8EnabledAtRuntime] PeerConnection00Constructor webkitPeerConnection00;
-    attribute [V8EnabledAtRuntime] RTCPeerConnectionConstructor webkitRTCPeerConnection;
+] interface DOMWindowMediaStream {
+    [V8EnabledAtRuntime] attribute MediaStreamConstructor webkitMediaStream;
+    [V8EnabledAtRuntime] attribute PeerConnection00Constructor webkitPeerConnection00;
+    [V8EnabledAtRuntime] attribute RTCPeerConnectionConstructor webkitRTCPeerConnection;
     attribute SessionDescriptionConstructor SessionDescription;
     attribute RTCSessionDescriptionConstructor RTCSessionDescription;
     attribute IceCandidateConstructor IceCandidate;
diff --git a/Source/WebCore/Modules/mediastream/IceCallback.idl b/Source/WebCore/Modules/mediastream/IceCallback.idl
index a37e6a5..5b32d7e 100644
--- a/Source/WebCore/Modules/mediastream/IceCallback.idl
+++ b/Source/WebCore/Modules/mediastream/IceCallback.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Callback
-] IceCallback {
+] interface IceCallback {
     boolean handleEvent(in IceCandidate candidate, in boolean moreToFollow, in PeerConnection00 source);
 };
 
diff --git a/Source/WebCore/Modules/mediastream/IceCandidate.idl b/Source/WebCore/Modules/mediastream/IceCandidate.idl
index 8cf8097..91ea4d7 100644
--- a/Source/WebCore/Modules/mediastream/IceCandidate.idl
+++ b/Source/WebCore/Modules/mediastream/IceCandidate.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Constructor(in DOMString label, in DOMString candidateLine)
-] IceCandidate {
+] interface IceCandidate {
     readonly attribute DOMString label;
 
     DOMString toSdp();
diff --git a/Source/WebCore/Modules/mediastream/LocalMediaStream.idl b/Source/WebCore/Modules/mediastream/LocalMediaStream.idl
index c19d32e..c4b480f 100644
--- a/Source/WebCore/Modules/mediastream/LocalMediaStream.idl
+++ b/Source/WebCore/Modules/mediastream/LocalMediaStream.idl
@@ -22,12 +22,12 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     EventTarget,
     JSGenerateToNativeObject,
     JSGenerateToJSObject
-] LocalMediaStream : MediaStream {
+] interface LocalMediaStream : MediaStream {
     void stop();
 };
 
diff --git a/Source/WebCore/Modules/mediastream/MediaStream.idl b/Source/WebCore/Modules/mediastream/MediaStream.idl
index d7d0e31..83fd7da 100644
--- a/Source/WebCore/Modules/mediastream/MediaStream.idl
+++ b/Source/WebCore/Modules/mediastream/MediaStream.idl
@@ -22,13 +22,13 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     EventTarget,
     Constructor(in MediaStreamTrackList audioTracks, in MediaStreamTrackList videoTracks),
     CallWith=ScriptExecutionContext,
     ConstructorRaisesException
-   ] MediaStream {
+   ] interface MediaStream {
     readonly attribute DOMString label;
     readonly attribute MediaStreamTrackList audioTracks;
     readonly attribute MediaStreamTrackList videoTracks;
diff --git a/Source/WebCore/Modules/mediastream/MediaStreamEvent.idl b/Source/WebCore/Modules/mediastream/MediaStreamEvent.idl
index 67083ae..b67156b 100644
--- a/Source/WebCore/Modules/mediastream/MediaStreamEvent.idl
+++ b/Source/WebCore/Modules/mediastream/MediaStreamEvent.idl
@@ -24,9 +24,9 @@
 
 // According to the WHATWG specification:
 // http://www.whatwg.org/specs/web-apps/current-work/multipage/video-conferencing-and-peer-to-peer-communication.html#mediastreamevent
-interface [
+[
     Conditional=MEDIA_STREAM,
-] MediaStreamEvent : Event {
+] interface MediaStreamEvent : Event {
    readonly attribute MediaStream stream;
 };
 
diff --git a/Source/WebCore/Modules/mediastream/MediaStreamList.idl b/Source/WebCore/Modules/mediastream/MediaStreamList.idl
index e1c1c1e..c21e6ee 100644
--- a/Source/WebCore/Modules/mediastream/MediaStreamList.idl
+++ b/Source/WebCore/Modules/mediastream/MediaStreamList.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     IndexedGetter
-] MediaStreamList {
+] interface MediaStreamList {
     MediaStream item(in [IsIndex] unsigned long index);
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl b/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl
index ff8bf5d..8d8c0fa 100644
--- a/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl
+++ b/Source/WebCore/Modules/mediastream/MediaStreamTrack.idl
@@ -22,11 +22,11 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     EventTarget,
     ActiveDOMObject
-] MediaStreamTrack {
+] interface MediaStreamTrack {
     readonly attribute DOMString kind;
     readonly attribute DOMString label;
              attribute boolean enabled;
diff --git a/Source/WebCore/Modules/mediastream/MediaStreamTrackEvent.idl b/Source/WebCore/Modules/mediastream/MediaStreamTrackEvent.idl
index 960065d..640a2af 100644
--- a/Source/WebCore/Modules/mediastream/MediaStreamTrackEvent.idl
+++ b/Source/WebCore/Modules/mediastream/MediaStreamTrackEvent.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
-] MediaStreamTrackEvent : Event {
+] interface MediaStreamTrackEvent : Event {
    readonly attribute MediaStreamTrack track;
 };
 
diff --git a/Source/WebCore/Modules/mediastream/MediaStreamTrackList.idl b/Source/WebCore/Modules/mediastream/MediaStreamTrackList.idl
index 0b13c21..208e2c6 100644
--- a/Source/WebCore/Modules/mediastream/MediaStreamTrackList.idl
+++ b/Source/WebCore/Modules/mediastream/MediaStreamTrackList.idl
@@ -22,11 +22,11 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     IndexedGetter,
     EventTarget
-] MediaStreamTrackList {
+] interface MediaStreamTrackList {
     readonly attribute unsigned long length;
     MediaStreamTrack item(in [IsIndex] unsigned long index);
 
diff --git a/Source/WebCore/Modules/mediastream/NavigatorMediaStream.idl b/Source/WebCore/Modules/mediastream/NavigatorMediaStream.idl
index 2bc748b..9cc3957 100644
--- a/Source/WebCore/Modules/mediastream/NavigatorMediaStream.idl
+++ b/Source/WebCore/Modules/mediastream/NavigatorMediaStream.idl
@@ -17,10 +17,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Supplemental=Navigator
-] NavigatorMediaStream {
+] interface NavigatorMediaStream {
     [V8EnabledAtRuntime] void webkitGetUserMedia(in Dictionary options,
                                                  in [Callback] NavigatorUserMediaSuccessCallback successCallback,
                                                  in [Callback, Optional] NavigatorUserMediaErrorCallback errorCallback)
diff --git a/Source/WebCore/Modules/mediastream/NavigatorUserMediaError.idl b/Source/WebCore/Modules/mediastream/NavigatorUserMediaError.idl
index 7eb6baa..9c6df79 100644
--- a/Source/WebCore/Modules/mediastream/NavigatorUserMediaError.idl
+++ b/Source/WebCore/Modules/mediastream/NavigatorUserMediaError.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM
-] NavigatorUserMediaError {
+] interface NavigatorUserMediaError {
     const unsigned short PERMISSION_DENIED = 1;
     readonly attribute unsigned short code;
 };
diff --git a/Source/WebCore/Modules/mediastream/NavigatorUserMediaErrorCallback.idl b/Source/WebCore/Modules/mediastream/NavigatorUserMediaErrorCallback.idl
index d1ca558..3ab837b 100644
--- a/Source/WebCore/Modules/mediastream/NavigatorUserMediaErrorCallback.idl
+++ b/Source/WebCore/Modules/mediastream/NavigatorUserMediaErrorCallback.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Callback
-] NavigatorUserMediaErrorCallback {
+] interface NavigatorUserMediaErrorCallback {
     boolean handleEvent(in NavigatorUserMediaError error);
 };
 
diff --git a/Source/WebCore/Modules/mediastream/NavigatorUserMediaSuccessCallback.idl b/Source/WebCore/Modules/mediastream/NavigatorUserMediaSuccessCallback.idl
index 18ee4f9..4da4cd5 100644
--- a/Source/WebCore/Modules/mediastream/NavigatorUserMediaSuccessCallback.idl
+++ b/Source/WebCore/Modules/mediastream/NavigatorUserMediaSuccessCallback.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Callback
-] NavigatorUserMediaSuccessCallback {
+] interface NavigatorUserMediaSuccessCallback {
     boolean handleEvent(in LocalMediaStream stream);
 };
 
diff --git a/Source/WebCore/Modules/mediastream/PeerConnection00.idl b/Source/WebCore/Modules/mediastream/PeerConnection00.idl
index 26e2412..68dd1c7 100644
--- a/Source/WebCore/Modules/mediastream/PeerConnection00.idl
+++ b/Source/WebCore/Modules/mediastream/PeerConnection00.idl
@@ -28,14 +28,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     ActiveDOMObject,
     Constructor(in DOMString serverConfiguration, in [Callback] IceCallback iceCallback),
     CallWith=ScriptExecutionContext,
     ConstructorRaisesException,
     EventTarget
-] PeerConnection00 {
+] interface PeerConnection00 {
     SessionDescription createOffer(in [Optional] Dictionary mediaHints)
         raises(DOMException);
     SessionDescription createAnswer(in DOMString offer, in [Optional] Dictionary mediaHints)
diff --git a/Source/WebCore/Modules/mediastream/RTCErrorCallback.idl b/Source/WebCore/Modules/mediastream/RTCErrorCallback.idl
index 8e877b5..b97b702 100644
--- a/Source/WebCore/Modules/mediastream/RTCErrorCallback.idl
+++ b/Source/WebCore/Modules/mediastream/RTCErrorCallback.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Callback
-] RTCErrorCallback {
+] interface RTCErrorCallback {
     boolean handleEvent(in DOMString errorInformation);
 };
 
diff --git a/Source/WebCore/Modules/mediastream/RTCIceCandidate.idl b/Source/WebCore/Modules/mediastream/RTCIceCandidate.idl
index 62c2d40..cd1a493 100644
--- a/Source/WebCore/Modules/mediastream/RTCIceCandidate.idl
+++ b/Source/WebCore/Modules/mediastream/RTCIceCandidate.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Constructor(in Dictionary dictionary),
     ConstructorRaisesException
-] RTCIceCandidate {
+] interface RTCIceCandidate {
     readonly attribute DOMString candidate;
     readonly attribute DOMString sdpMid;
     readonly attribute unsigned short sdpMLineIndex;
diff --git a/Source/WebCore/Modules/mediastream/RTCIceCandidateEvent.idl b/Source/WebCore/Modules/mediastream/RTCIceCandidateEvent.idl
index 6ad52f0..331d3b3 100644
--- a/Source/WebCore/Modules/mediastream/RTCIceCandidateEvent.idl
+++ b/Source/WebCore/Modules/mediastream/RTCIceCandidateEvent.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
-] RTCIceCandidateEvent : Event {
+] interface RTCIceCandidateEvent : Event {
     readonly attribute RTCIceCandidate candidate;
 };
 
diff --git a/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl b/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl
index 31269dd..d0b5633 100644
--- a/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl
+++ b/Source/WebCore/Modules/mediastream/RTCPeerConnection.idl
@@ -28,14 +28,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     ActiveDOMObject,
     Constructor(in Dictionary rtcIceServers, in [Optional=DefaultIsUndefined] Dictionary mediaConstraints),
     ConstructorRaisesException,
     CallWith=ScriptExecutionContext,
     EventTarget
-] RTCPeerConnection {
+] interface RTCPeerConnection {
     void createOffer(in [Callback] RTCSessionDescriptionCallback successCallback, in [Callback,Optional=DefaultIsUndefined] RTCErrorCallback failureCallback, in [Optional=DefaultIsUndefined] Dictionary mediaConstraints)
         raises(DOMException);
 
diff --git a/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl b/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl
index 8167a4c..12e30da 100644
--- a/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl
+++ b/Source/WebCore/Modules/mediastream/RTCSessionDescription.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Constructor(in Dictionary dictionary),
     ConstructorRaisesException
-] RTCSessionDescription {
+] interface RTCSessionDescription {
     attribute DOMString type
         setter raises(DOMException);
     attribute DOMString sdp
diff --git a/Source/WebCore/Modules/mediastream/RTCSessionDescriptionCallback.idl b/Source/WebCore/Modules/mediastream/RTCSessionDescriptionCallback.idl
index 6bcfc78..fec6754 100644
--- a/Source/WebCore/Modules/mediastream/RTCSessionDescriptionCallback.idl
+++ b/Source/WebCore/Modules/mediastream/RTCSessionDescriptionCallback.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Callback
-] RTCSessionDescriptionCallback {
+] interface RTCSessionDescriptionCallback {
     boolean handleEvent(in RTCSessionDescription sdp);
 };
 
diff --git a/Source/WebCore/Modules/mediastream/RTCStatsCallback.idl b/Source/WebCore/Modules/mediastream/RTCStatsCallback.idl
index 87bae9f..15a0d4f 100644
--- a/Source/WebCore/Modules/mediastream/RTCStatsCallback.idl
+++ b/Source/WebCore/Modules/mediastream/RTCStatsCallback.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Callback
-] RTCStatsCallback {
+] interface RTCStatsCallback {
     boolean handleEvent(in RTCStatsResponse response);
 };
 
diff --git a/Source/WebCore/Modules/mediastream/RTCStatsElement.idl b/Source/WebCore/Modules/mediastream/RTCStatsElement.idl
index 2bf11bc..aa4e79f 100644
--- a/Source/WebCore/Modules/mediastream/RTCStatsElement.idl
+++ b/Source/WebCore/Modules/mediastream/RTCStatsElement.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
-] RTCStatsElement {
+] interface RTCStatsElement {
     readonly attribute Date timestamp;
     DOMString stat(in DOMString name);
 };
diff --git a/Source/WebCore/Modules/mediastream/RTCStatsReport.idl b/Source/WebCore/Modules/mediastream/RTCStatsReport.idl
index 2b923a0..551ccef 100644
--- a/Source/WebCore/Modules/mediastream/RTCStatsReport.idl
+++ b/Source/WebCore/Modules/mediastream/RTCStatsReport.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM
-] RTCStatsReport {
+] interface RTCStatsReport {
     readonly attribute RTCStatsElement local;
     readonly attribute RTCStatsElement remote;
 };
diff --git a/Source/WebCore/Modules/mediastream/RTCStatsResponse.idl b/Source/WebCore/Modules/mediastream/RTCStatsResponse.idl
index 88c0a38..abcd198 100644
--- a/Source/WebCore/Modules/mediastream/RTCStatsResponse.idl
+++ b/Source/WebCore/Modules/mediastream/RTCStatsResponse.idl
@@ -22,8 +22,8 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM
-] RTCStatsResponse {
+] interface RTCStatsResponse {
     sequence<RTCStatsReport> result();
 };
diff --git a/Source/WebCore/Modules/mediastream/SessionDescription.idl b/Source/WebCore/Modules/mediastream/SessionDescription.idl
index ae18e36..601d978 100644
--- a/Source/WebCore/Modules/mediastream/SessionDescription.idl
+++ b/Source/WebCore/Modules/mediastream/SessionDescription.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MEDIA_STREAM,
     Constructor(in DOMString sdp)
-] SessionDescription {
+] interface SessionDescription {
     [StrictTypeChecking] void addCandidate(in IceCandidate candidate)
         raises(DOMException);
 
diff --git a/Source/WebCore/Modules/navigatorcontentutils/NavigatorContentUtils.idl b/Source/WebCore/Modules/navigatorcontentutils/NavigatorContentUtils.idl
index 1cb9dbd..b4171a0 100644
--- a/Source/WebCore/Modules/navigatorcontentutils/NavigatorContentUtils.idl
+++ b/Source/WebCore/Modules/navigatorcontentutils/NavigatorContentUtils.idl
@@ -19,9 +19,9 @@
 */
 
 // http://www.w3.org/TR/html5/system-state-and-capabilities.html#custom-handlers
-interface [
+[
     Supplemental=Navigator
-] NavigatorContentUtils {
+] interface NavigatorContentUtils {
     [Conditional=NAVIGATOR_CONTENT_UTILS] void registerProtocolHandler(in DOMString scheme, in DOMString url, in DOMString title)
         raises(DOMException);
     [Conditional=NAVIGATOR_CONTENT_UTILS&CUSTOM_SCHEME_HANDLER] DOMString isProtocolHandlerRegistered(in DOMString scheme, in DOMString url)
diff --git a/Source/WebCore/Modules/networkinfo/NavigatorNetworkInfoConnection.idl b/Source/WebCore/Modules/networkinfo/NavigatorNetworkInfoConnection.idl
index 9614ddc..7cbf556 100644
--- a/Source/WebCore/Modules/networkinfo/NavigatorNetworkInfoConnection.idl
+++ b/Source/WebCore/Modules/networkinfo/NavigatorNetworkInfoConnection.idl
@@ -17,10 +17,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=NETWORK_INFO,
     Supplemental=Navigator
-] NavigatorNetworkInfoConnection {
+] interface NavigatorNetworkInfoConnection {
     readonly attribute NetworkInfoConnection webkitConnection;
 };
 
diff --git a/Source/WebCore/Modules/networkinfo/NetworkInfoConnection.idl b/Source/WebCore/Modules/networkinfo/NetworkInfoConnection.idl
index b2e828d..61edbe2 100644
--- a/Source/WebCore/Modules/networkinfo/NetworkInfoConnection.idl
+++ b/Source/WebCore/Modules/networkinfo/NetworkInfoConnection.idl
@@ -20,11 +20,11 @@
  */
 
 // http://dvcs.w3.org/hg/dap/raw-file/tip/network-api/index.html
-interface [
+[
     Conditional=NETWORK_INFO,
     ActiveDOMObject,
     EventTarget
-] NetworkInfoConnection {
+] interface NetworkInfoConnection {
     readonly attribute double bandwidth;
     readonly attribute boolean metered;
 
diff --git a/Source/WebCore/Modules/notifications/DOMWindowNotifications.idl b/Source/WebCore/Modules/notifications/DOMWindowNotifications.idl
index d7a5b9f..a030866 100644
--- a/Source/WebCore/Modules/notifications/DOMWindowNotifications.idl
+++ b/Source/WebCore/Modules/notifications/DOMWindowNotifications.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=NOTIFICATIONS|LEGACY_NOTIFICATIONS,
     Supplemental=DOMWindow
-] DOMWindowNotifications {
+] interface DOMWindowNotifications {
 #if defined(ENABLE_LEGACY_NOTIFICATIONS) && ENABLE_LEGACY_NOTIFICATIONS
-    readonly attribute [V8EnabledAtRuntime, V8MeasureAs=LegacyNotifications] NotificationCenter webkitNotifications;
+    [V8EnabledAtRuntime, V8MeasureAs=LegacyNotifications] readonly attribute NotificationCenter webkitNotifications;
 #endif
 #if defined(ENABLE_NOTIFICATIONS) && ENABLE_NOTIFICATIONS
     attribute NotificationConstructor Notification;
diff --git a/Source/WebCore/Modules/notifications/Notification.idl b/Source/WebCore/Modules/notifications/Notification.idl
index 9fe91f8..e0a21f9 100644
--- a/Source/WebCore/Modules/notifications/Notification.idl
+++ b/Source/WebCore/Modules/notifications/Notification.idl
@@ -29,7 +29,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=NOTIFICATIONS|LEGACY_NOTIFICATIONS,
     ActiveDOMObject,
     EventTarget,
@@ -39,7 +39,7 @@
 #else
     OmitConstructor
 #endif
-] Notification {
+] interface Notification {
     void show();
 #if defined(ENABLE_LEGACY_NOTIFICATIONS) && ENABLE_LEGACY_NOTIFICATIONS
     void cancel();
diff --git a/Source/WebCore/Modules/notifications/NotificationCenter.idl b/Source/WebCore/Modules/notifications/NotificationCenter.idl
index 0eb1c81..78adfed 100644
--- a/Source/WebCore/Modules/notifications/NotificationCenter.idl
+++ b/Source/WebCore/Modules/notifications/NotificationCenter.idl
@@ -29,11 +29,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=LEGACY_NOTIFICATIONS,
     ActiveDOMObject,
     OmitConstructor
-] NotificationCenter {
+] interface NotificationCenter {
 #if !defined(ENABLE_TEXT_NOTIFICATIONS_ONLY) || !ENABLE_TEXT_NOTIFICATIONS_ONLY
    [V8EnabledPerContext=htmlNotifications, V8MeasureAs=LegacyHTMLNotifications] Notification createHTMLNotification(in DOMString url) raises(DOMException);
 #endif
diff --git a/Source/WebCore/Modules/notifications/NotificationPermissionCallback.idl b/Source/WebCore/Modules/notifications/NotificationPermissionCallback.idl
index d8008fe..bb77716 100644
--- a/Source/WebCore/Modules/notifications/NotificationPermissionCallback.idl
+++ b/Source/WebCore/Modules/notifications/NotificationPermissionCallback.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=NOTIFICATIONS,
     Callback
-] NotificationPermissionCallback {
+] interface NotificationPermissionCallback {
     boolean handleEvent(in DOMString permission);
 };
 
diff --git a/Source/WebCore/Modules/notifications/WorkerContextNotifications.idl b/Source/WebCore/Modules/notifications/WorkerContextNotifications.idl
index 71f4b2d..5e0c3fe 100644
--- a/Source/WebCore/Modules/notifications/WorkerContextNotifications.idl
+++ b/Source/WebCore/Modules/notifications/WorkerContextNotifications.idl
@@ -24,12 +24,12 @@
  *
  */
 
-interface [
+[
     Conditional=NOTIFICATIONS|LEGACY_NOTIFICATIONS,
     Supplemental=WorkerContext
-] WorkerContextNotifications {
+] interface WorkerContextNotifications {
 #if defined(ENABLE_LEGACY_NOTIFICATIONS) && ENABLE_LEGACY_NOTIFICATIONS
-    readonly attribute [V8EnabledAtRuntime] NotificationCenter webkitNotifications;
+    [V8EnabledAtRuntime] readonly attribute NotificationCenter webkitNotifications;
 #endif
 };
 
diff --git a/Source/WebCore/Modules/proximity/DeviceProximityEvent.idl b/Source/WebCore/Modules/proximity/DeviceProximityEvent.idl
index 56c93d0..519a60b 100644
--- a/Source/WebCore/Modules/proximity/DeviceProximityEvent.idl
+++ b/Source/WebCore/Modules/proximity/DeviceProximityEvent.idl
@@ -17,12 +17,12 @@
  *  Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=PROXIMITY_EVENTS,
     ConstructorTemplate=Event
-] DeviceProximityEvent : Event {
-    readonly attribute [InitializedByEventConstructor] double value;
-    readonly attribute [InitializedByEventConstructor] double min;
-    readonly attribute [InitializedByEventConstructor] double max;
+] interface DeviceProximityEvent : Event {
+    [InitializedByEventConstructor] readonly attribute double value;
+    [InitializedByEventConstructor] readonly attribute double min;
+    [InitializedByEventConstructor] readonly attribute double max;
 };
 
diff --git a/Source/WebCore/Modules/quota/DOMWindowQuota.idl b/Source/WebCore/Modules/quota/DOMWindowQuota.idl
index 09363f1..20c7a14 100644
--- a/Source/WebCore/Modules/quota/DOMWindowQuota.idl
+++ b/Source/WebCore/Modules/quota/DOMWindowQuota.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=QUOTA,
     Supplemental=DOMWindow
-] DOMWindowQuota {
+] interface DOMWindowQuota {
     readonly attribute StorageInfo webkitStorageInfo;
 };
 
diff --git a/Source/WebCore/Modules/quota/StorageInfo.idl b/Source/WebCore/Modules/quota/StorageInfo.idl
index 5fa15da..b61d037 100644
--- a/Source/WebCore/Modules/quota/StorageInfo.idl
+++ b/Source/WebCore/Modules/quota/StorageInfo.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=QUOTA,
     OmitConstructor
-] StorageInfo {
+] interface StorageInfo {
     const unsigned short TEMPORARY = 0;
     const unsigned short PERSISTENT = 1;
 
diff --git a/Source/WebCore/Modules/quota/StorageInfoErrorCallback.idl b/Source/WebCore/Modules/quota/StorageInfoErrorCallback.idl
index 33b0e76..02ea7c5 100644
--- a/Source/WebCore/Modules/quota/StorageInfoErrorCallback.idl
+++ b/Source/WebCore/Modules/quota/StorageInfoErrorCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=QUOTA,
     Callback
-] StorageInfoErrorCallback {
+] interface StorageInfoErrorCallback {
     boolean handleEvent(in DOMCoreException error);
 };
diff --git a/Source/WebCore/Modules/quota/StorageInfoQuotaCallback.idl b/Source/WebCore/Modules/quota/StorageInfoQuotaCallback.idl
index fe6e83d..3802e67 100644
--- a/Source/WebCore/Modules/quota/StorageInfoQuotaCallback.idl
+++ b/Source/WebCore/Modules/quota/StorageInfoQuotaCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=QUOTA,
     Callback
-] StorageInfoQuotaCallback {
+] interface StorageInfoQuotaCallback {
     boolean handleEvent(in unsigned long long grantedQuotaInBytes);
 };
diff --git a/Source/WebCore/Modules/quota/StorageInfoUsageCallback.idl b/Source/WebCore/Modules/quota/StorageInfoUsageCallback.idl
index 8407795..fe190cd 100644
--- a/Source/WebCore/Modules/quota/StorageInfoUsageCallback.idl
+++ b/Source/WebCore/Modules/quota/StorageInfoUsageCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=QUOTA,
     Callback
-] StorageInfoUsageCallback {
+] interface StorageInfoUsageCallback {
     boolean handleEvent(in unsigned long long currentUsageInBytes, in unsigned long long currentQuotaInBytes);
 };
diff --git a/Source/WebCore/Modules/speech/DOMWindowSpeech.idl b/Source/WebCore/Modules/speech/DOMWindowSpeech.idl
index c2c54ed..8f737c9 100644
--- a/Source/WebCore/Modules/speech/DOMWindowSpeech.idl
+++ b/Source/WebCore/Modules/speech/DOMWindowSpeech.idl
@@ -23,13 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH,
     Supplemental=DOMWindow
-] DOMWindowSpeech {
-    attribute [V8EnabledAtRuntime] SpeechRecognitionConstructor webkitSpeechRecognition;
-    attribute [V8EnabledAtRuntime] SpeechRecognitionErrorConstructor webkitSpeechRecognitionError;
-    attribute [V8EnabledAtRuntime] SpeechRecognitionEventConstructor webkitSpeechRecognitionEvent;
-    attribute [V8EnabledAtRuntime] SpeechGrammarConstructor webkitSpeechGrammar;
-    attribute [V8EnabledAtRuntime] SpeechGrammarListConstructor webkitSpeechGrammarList;
+] interface DOMWindowSpeech {
+    [V8EnabledAtRuntime] attribute SpeechRecognitionConstructor webkitSpeechRecognition;
+    [V8EnabledAtRuntime] attribute SpeechRecognitionErrorConstructor webkitSpeechRecognitionError;
+    [V8EnabledAtRuntime] attribute SpeechRecognitionEventConstructor webkitSpeechRecognitionEvent;
+    [V8EnabledAtRuntime] attribute SpeechGrammarConstructor webkitSpeechGrammar;
+    [V8EnabledAtRuntime] attribute SpeechGrammarListConstructor webkitSpeechGrammarList;
 };
diff --git a/Source/WebCore/Modules/speech/SpeechGrammar.idl b/Source/WebCore/Modules/speech/SpeechGrammar.idl
index 349fdd0..340cacf 100644
--- a/Source/WebCore/Modules/speech/SpeechGrammar.idl
+++ b/Source/WebCore/Modules/speech/SpeechGrammar.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH,
     Constructor
-] SpeechGrammar {
-    attribute [URL,CallWith=ScriptExecutionContext] DOMString src;
+] interface SpeechGrammar {
+    [URL,CallWith=ScriptExecutionContext] attribute DOMString src;
     attribute float weight;
 };
diff --git a/Source/WebCore/Modules/speech/SpeechGrammarList.idl b/Source/WebCore/Modules/speech/SpeechGrammarList.idl
index 4cf23c6..94941da 100644
--- a/Source/WebCore/Modules/speech/SpeechGrammarList.idl
+++ b/Source/WebCore/Modules/speech/SpeechGrammarList.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH,
     IndexedGetter,
     Constructor,
-] SpeechGrammarList {
+] interface SpeechGrammarList {
     readonly attribute unsigned long length;
     SpeechGrammar item(in [IsIndex] unsigned long index);
     [CallWith=ScriptExecutionContext] void addFromUri(in DOMString src, in [Optional] float weight);
diff --git a/Source/WebCore/Modules/speech/SpeechRecognition.idl b/Source/WebCore/Modules/speech/SpeechRecognition.idl
index b7b3e8a..1f85d35 100644
--- a/Source/WebCore/Modules/speech/SpeechRecognition.idl
+++ b/Source/WebCore/Modules/speech/SpeechRecognition.idl
@@ -23,13 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH,
     ActiveDOMObject,
     Constructor,
     CallWith=ScriptExecutionContext,
     EventTarget,
-] SpeechRecognition {
+] interface SpeechRecognition {
     attribute SpeechGrammarList grammars;
     attribute DOMString lang;
     attribute boolean continuous;
diff --git a/Source/WebCore/Modules/speech/SpeechRecognitionAlternative.idl b/Source/WebCore/Modules/speech/SpeechRecognitionAlternative.idl
index a185a3c..03cec18 100644
--- a/Source/WebCore/Modules/speech/SpeechRecognitionAlternative.idl
+++ b/Source/WebCore/Modules/speech/SpeechRecognitionAlternative.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH
-] SpeechRecognitionAlternative {
+] interface SpeechRecognitionAlternative {
     readonly attribute DOMString transcript;
     readonly attribute float confidence;
 };
diff --git a/Source/WebCore/Modules/speech/SpeechRecognitionError.idl b/Source/WebCore/Modules/speech/SpeechRecognitionError.idl
index 6b3f090..d42b34d 100644
--- a/Source/WebCore/Modules/speech/SpeechRecognitionError.idl
+++ b/Source/WebCore/Modules/speech/SpeechRecognitionError.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH,
     ConstructorTemplate=Event
-] SpeechRecognitionError : Event {
+] interface SpeechRecognitionError : Event {
     const unsigned short OTHER = 0;
     const unsigned short NO_SPEECH = 1;
     const unsigned short ABORTED = 2;
@@ -37,6 +37,6 @@
     const unsigned short BAD_GRAMMAR = 7;
     const unsigned short LANGUAGE_NOT_SUPPORTED = 8;
 
-    readonly attribute [InitializedByEventConstructor] unsigned short code;
-    readonly attribute [InitializedByEventConstructor] DOMString message;
+    [InitializedByEventConstructor] readonly attribute unsigned short code;
+    [InitializedByEventConstructor] readonly attribute DOMString message;
 };
diff --git a/Source/WebCore/Modules/speech/SpeechRecognitionEvent.idl b/Source/WebCore/Modules/speech/SpeechRecognitionEvent.idl
index 4719483..8eb789c 100644
--- a/Source/WebCore/Modules/speech/SpeechRecognitionEvent.idl
+++ b/Source/WebCore/Modules/speech/SpeechRecognitionEvent.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH,
     ConstructorTemplate=Event
-] SpeechRecognitionEvent : Event {
-    readonly attribute [InitializedByEventConstructor] SpeechRecognitionResult result;
-    readonly attribute [InitializedByEventConstructor] short resultIndex;
-    readonly attribute [InitializedByEventConstructor] SpeechRecognitionResultList resultHistory;
+] interface SpeechRecognitionEvent : Event {
+    [InitializedByEventConstructor] readonly attribute SpeechRecognitionResult result;
+    [InitializedByEventConstructor] readonly attribute short resultIndex;
+    [InitializedByEventConstructor] readonly attribute SpeechRecognitionResultList resultHistory;
 };
diff --git a/Source/WebCore/Modules/speech/SpeechRecognitionResult.idl b/Source/WebCore/Modules/speech/SpeechRecognitionResult.idl
index e84b37b..609d6ea 100644
--- a/Source/WebCore/Modules/speech/SpeechRecognitionResult.idl
+++ b/Source/WebCore/Modules/speech/SpeechRecognitionResult.idl
@@ -23,12 +23,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH,
     CustomIsReachable,
     IndexedGetter,
     V8DependentLifetime
-] SpeechRecognitionResult {
+] interface SpeechRecognitionResult {
     readonly attribute unsigned long length;
     SpeechRecognitionAlternative item(in [IsIndex] unsigned long index);
     readonly attribute boolean final;
diff --git a/Source/WebCore/Modules/speech/SpeechRecognitionResultList.idl b/Source/WebCore/Modules/speech/SpeechRecognitionResultList.idl
index 3614e1d..57e3111 100644
--- a/Source/WebCore/Modules/speech/SpeechRecognitionResultList.idl
+++ b/Source/WebCore/Modules/speech/SpeechRecognitionResultList.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SCRIPTED_SPEECH,
     IndexedGetter
-] SpeechRecognitionResultList {
+] interface SpeechRecognitionResultList {
     readonly attribute unsigned long length;
     SpeechRecognitionResult item(in [IsIndex] unsigned long index);
 };
diff --git a/Source/WebCore/Modules/vibration/NavigatorVibration.idl b/Source/WebCore/Modules/vibration/NavigatorVibration.idl
index 31c1358..1faef23 100644
--- a/Source/WebCore/Modules/vibration/NavigatorVibration.idl
+++ b/Source/WebCore/Modules/vibration/NavigatorVibration.idl
@@ -17,10 +17,10 @@
  *  Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=VIBRATION,
     Supplemental=Navigator
-] NavigatorVibration {
+] interface NavigatorVibration {
     void vibrate(in sequence<unsigned long> pattern) raises(DOMException);
     void vibrate(in unsigned long time) raises(DOMException);
 };
diff --git a/Source/WebCore/Modules/webaudio/AudioBuffer.idl b/Source/WebCore/Modules/webaudio/AudioBuffer.idl
index 0659e30..abd916d 100644
--- a/Source/WebCore/Modules/webaudio/AudioBuffer.idl
+++ b/Source/WebCore/Modules/webaudio/AudioBuffer.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO
-] AudioBuffer {
+] interface AudioBuffer {
     readonly attribute long length; // in sample-frames
     readonly attribute float duration; // in seconds
     readonly attribute float sampleRate; // in sample-frames per second
diff --git a/Source/WebCore/Modules/webaudio/AudioBufferCallback.idl b/Source/WebCore/Modules/webaudio/AudioBufferCallback.idl
index 590b6c9..365c8ea 100644
--- a/Source/WebCore/Modules/webaudio/AudioBufferCallback.idl
+++ b/Source/WebCore/Modules/webaudio/AudioBufferCallback.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject,
     Callback
-] AudioBufferCallback {
+] interface AudioBufferCallback {
     boolean handleEvent(in AudioBuffer audioBuffer);
 };
diff --git a/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.idl b/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.idl
index 914faea..a838c791 100644
--- a/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.idl
+++ b/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.idl
@@ -23,11 +23,11 @@
  */
 
 // A cached (non-streamed), memory-resident audio source
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] AudioBufferSourceNode : AudioSourceNode {
-    attribute [CustomSetter] AudioBuffer buffer
+] interface AudioBufferSourceNode : AudioSourceNode {
+    [CustomSetter] attribute AudioBuffer buffer
         setter raises (DOMException);
 
     const unsigned short UNSCHEDULED_STATE = 0;
diff --git a/Source/WebCore/Modules/webaudio/AudioChannelMerger.idl b/Source/WebCore/Modules/webaudio/AudioChannelMerger.idl
index 5d204cc..1035d26 100644
--- a/Source/WebCore/Modules/webaudio/AudioChannelMerger.idl
+++ b/Source/WebCore/Modules/webaudio/AudioChannelMerger.idl
@@ -26,7 +26,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO
-] AudioChannelMerger : AudioNode {
+] interface AudioChannelMerger : AudioNode {
 };
diff --git a/Source/WebCore/Modules/webaudio/AudioChannelSplitter.idl b/Source/WebCore/Modules/webaudio/AudioChannelSplitter.idl
index 5296a7d..87376f9 100644
--- a/Source/WebCore/Modules/webaudio/AudioChannelSplitter.idl
+++ b/Source/WebCore/Modules/webaudio/AudioChannelSplitter.idl
@@ -22,7 +22,7 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO
-] AudioChannelSplitter : AudioNode {
+] interface AudioChannelSplitter : AudioNode {
 };
diff --git a/Source/WebCore/Modules/webaudio/AudioContext.idl b/Source/WebCore/Modules/webaudio/AudioContext.idl
index bf635d3..e7f972e 100644
--- a/Source/WebCore/Modules/webaudio/AudioContext.idl
+++ b/Source/WebCore/Modules/webaudio/AudioContext.idl
@@ -23,14 +23,14 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     ActiveDOMObject,
     CustomConstructor,
     ConstructorParameters=0,
     JSCustomMarkFunction,
     EventTarget
-] AudioContext {
+] interface AudioContext {
     // All rendered audio ultimately connects to destination, which represents the audio hardware.
     readonly attribute AudioDestinationNode destination;
 
diff --git a/Source/WebCore/Modules/webaudio/AudioDestinationNode.idl b/Source/WebCore/Modules/webaudio/AudioDestinationNode.idl
index 36607a3..bf2600b 100644
--- a/Source/WebCore/Modules/webaudio/AudioDestinationNode.idl
+++ b/Source/WebCore/Modules/webaudio/AudioDestinationNode.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] AudioDestinationNode : AudioNode {
+] interface AudioDestinationNode : AudioNode {
     readonly attribute long numberOfChannels;
 };
diff --git a/Source/WebCore/Modules/webaudio/AudioGain.idl b/Source/WebCore/Modules/webaudio/AudioGain.idl
index 52bcafd5..8da7729 100644
--- a/Source/WebCore/Modules/webaudio/AudioGain.idl
+++ b/Source/WebCore/Modules/webaudio/AudioGain.idl
@@ -26,8 +26,8 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] AudioGain : AudioParam {
+] interface AudioGain : AudioParam {
 };
diff --git a/Source/WebCore/Modules/webaudio/AudioGainNode.idl b/Source/WebCore/Modules/webaudio/AudioGainNode.idl
index 8784eec..375936e 100644
--- a/Source/WebCore/Modules/webaudio/AudioGainNode.idl
+++ b/Source/WebCore/Modules/webaudio/AudioGainNode.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] AudioGainNode : AudioNode {
+] interface AudioGainNode : AudioNode {
     // FIXME: eventually it will be interesting to remove the readonly restriction, but need to properly deal with thread safety here.
     readonly attribute AudioGain gain;
 };
diff --git a/Source/WebCore/Modules/webaudio/AudioListener.idl b/Source/WebCore/Modules/webaudio/AudioListener.idl
index a5898b6..8ed8992 100644
--- a/Source/WebCore/Modules/webaudio/AudioListener.idl
+++ b/Source/WebCore/Modules/webaudio/AudioListener.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO
-] AudioListener {
+] interface AudioListener {
     attribute float dopplerFactor;  // same as OpenAL (default 1.0)
     attribute float speedOfSound;   // in meters / second (default 343.3)
 
diff --git a/Source/WebCore/Modules/webaudio/AudioNode.idl b/Source/WebCore/Modules/webaudio/AudioNode.idl
index 254fc90..dd8ec8bb 100644
--- a/Source/WebCore/Modules/webaudio/AudioNode.idl
+++ b/Source/WebCore/Modules/webaudio/AudioNode.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO
-] AudioNode {
+] interface AudioNode {
     readonly attribute AudioContext context;
     readonly attribute unsigned long numberOfInputs;
     readonly attribute unsigned long numberOfOutputs;
diff --git a/Source/WebCore/Modules/webaudio/AudioPannerNode.idl b/Source/WebCore/Modules/webaudio/AudioPannerNode.idl
index 53a6bca..653c6d8 100644
--- a/Source/WebCore/Modules/webaudio/AudioPannerNode.idl
+++ b/Source/WebCore/Modules/webaudio/AudioPannerNode.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] AudioPannerNode : AudioNode {
+] interface AudioPannerNode : AudioNode {
     // Panning model
     const unsigned short EQUALPOWER = 0;
     const unsigned short HRTF = 1;
diff --git a/Source/WebCore/Modules/webaudio/AudioParam.idl b/Source/WebCore/Modules/webaudio/AudioParam.idl
index 0685967..84a952c 100644
--- a/Source/WebCore/Modules/webaudio/AudioParam.idl
+++ b/Source/WebCore/Modules/webaudio/AudioParam.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO
-] AudioParam {
+] interface AudioParam {
     attribute float value;
     readonly attribute float minValue;
     readonly attribute float maxValue;
diff --git a/Source/WebCore/Modules/webaudio/AudioProcessingEvent.idl b/Source/WebCore/Modules/webaudio/AudioProcessingEvent.idl
index 269a566..5b498d2 100644
--- a/Source/WebCore/Modules/webaudio/AudioProcessingEvent.idl
+++ b/Source/WebCore/Modules/webaudio/AudioProcessingEvent.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] AudioProcessingEvent : Event {
+] interface AudioProcessingEvent : Event {
     readonly attribute AudioBuffer inputBuffer;
     readonly attribute AudioBuffer outputBuffer; 
 };
diff --git a/Source/WebCore/Modules/webaudio/AudioSourceNode.idl b/Source/WebCore/Modules/webaudio/AudioSourceNode.idl
index 9ee74b6..e83ac1c 100644
--- a/Source/WebCore/Modules/webaudio/AudioSourceNode.idl
+++ b/Source/WebCore/Modules/webaudio/AudioSourceNode.idl
@@ -26,7 +26,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO
-] AudioSourceNode : AudioNode {
+] interface AudioSourceNode : AudioNode {
 };
diff --git a/Source/WebCore/Modules/webaudio/BiquadFilterNode.idl b/Source/WebCore/Modules/webaudio/BiquadFilterNode.idl
index a0ed062..c976d05 100644
--- a/Source/WebCore/Modules/webaudio/BiquadFilterNode.idl
+++ b/Source/WebCore/Modules/webaudio/BiquadFilterNode.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] BiquadFilterNode : AudioNode {
+] interface BiquadFilterNode : AudioNode {
     // Filter type.
     const unsigned short LOWPASS = 0;
     const unsigned short HIGHPASS = 1;
diff --git a/Source/WebCore/Modules/webaudio/ConvolverNode.idl b/Source/WebCore/Modules/webaudio/ConvolverNode.idl
index ebe9970..5451d4e 100644
--- a/Source/WebCore/Modules/webaudio/ConvolverNode.idl
+++ b/Source/WebCore/Modules/webaudio/ConvolverNode.idl
@@ -23,10 +23,10 @@
  */
 
 // A linear convolution effect
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] ConvolverNode : AudioNode {
+] interface ConvolverNode : AudioNode {
     attribute AudioBuffer buffer;
     attribute boolean normalize;
 };
diff --git a/Source/WebCore/Modules/webaudio/DOMWindowWebAudio.idl b/Source/WebCore/Modules/webaudio/DOMWindowWebAudio.idl
index 718bb22..2737ecf 100644
--- a/Source/WebCore/Modules/webaudio/DOMWindowWebAudio.idl
+++ b/Source/WebCore/Modules/webaudio/DOMWindowWebAudio.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     Supplemental=DOMWindow
-] DOMWindowWebAudio {
+] interface DOMWindowWebAudio {
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
-    attribute [JSCustomGetter, V8EnabledAtRuntime] AudioContextConstructor webkitAudioContext;
+    [JSCustomGetter, V8EnabledAtRuntime] attribute AudioContextConstructor webkitAudioContext;
     attribute AudioPannerNodeConstructor webkitAudioPannerNode;
     attribute AudioProcessingEventConstructor AudioProcessingEvent;
     attribute OfflineAudioCompletionEventConstructor OfflineAudioCompletionEvent;
diff --git a/Source/WebCore/Modules/webaudio/DelayNode.idl b/Source/WebCore/Modules/webaudio/DelayNode.idl
index a1a76f9..699ead4 100644
--- a/Source/WebCore/Modules/webaudio/DelayNode.idl
+++ b/Source/WebCore/Modules/webaudio/DelayNode.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] DelayNode : AudioNode {
+] interface DelayNode : AudioNode {
     readonly attribute AudioParam delayTime;
 };
diff --git a/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.idl b/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.idl
index 3b4c0c2..ad7a47e 100644
--- a/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.idl
+++ b/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] DynamicsCompressorNode : AudioNode {
+] interface DynamicsCompressorNode : AudioNode {
     readonly attribute AudioParam threshold; // in Decibels
     readonly attribute AudioParam knee; // in Decibels
     readonly attribute AudioParam ratio; // unit-less
diff --git a/Source/WebCore/Modules/webaudio/JavaScriptAudioNode.idl b/Source/WebCore/Modules/webaudio/JavaScriptAudioNode.idl
index a5f831f..4326642 100644
--- a/Source/WebCore/Modules/webaudio/JavaScriptAudioNode.idl
+++ b/Source/WebCore/Modules/webaudio/JavaScriptAudioNode.idl
@@ -23,12 +23,12 @@
  */
 
 // For real-time audio stream synthesis/processing in JavaScript 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject,
     JSCustomMarkFunction,
     EventTarget
-] JavaScriptAudioNode : AudioNode {
+] interface JavaScriptAudioNode : AudioNode {
     // Rendering callback
     attribute EventListener onaudioprocess;
     
diff --git a/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.idl b/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.idl
index fd6ef3e..916360b 100644
--- a/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.idl
+++ b/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO&VIDEO,
     JSGenerateToJSObject
-] MediaElementAudioSourceNode : AudioSourceNode {
+] interface MediaElementAudioSourceNode : AudioSourceNode {
     readonly attribute HTMLMediaElement mediaElement;
 };
diff --git a/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.idl b/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.idl
index 44b6b81..d91e5e8 100644
--- a/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.idl
+++ b/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO&MEDIA_STREAM,
     JSGenerateToJSObject
-] MediaStreamAudioSourceNode : AudioSourceNode {
+] interface MediaStreamAudioSourceNode : AudioSourceNode {
     readonly attribute MediaStream mediaStream;
 };
diff --git a/Source/WebCore/Modules/webaudio/OfflineAudioCompletionEvent.idl b/Source/WebCore/Modules/webaudio/OfflineAudioCompletionEvent.idl
index ccad913..10cd0ff 100644
--- a/Source/WebCore/Modules/webaudio/OfflineAudioCompletionEvent.idl
+++ b/Source/WebCore/Modules/webaudio/OfflineAudioCompletionEvent.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] OfflineAudioCompletionEvent : Event {
+] interface OfflineAudioCompletionEvent : Event {
     readonly attribute AudioBuffer renderedBuffer;
 };
diff --git a/Source/WebCore/Modules/webaudio/Oscillator.idl b/Source/WebCore/Modules/webaudio/Oscillator.idl
index a42106e..5490585 100644
--- a/Source/WebCore/Modules/webaudio/Oscillator.idl
+++ b/Source/WebCore/Modules/webaudio/Oscillator.idl
@@ -23,10 +23,10 @@
  */
 
 // Oscillator is an audio generator of periodic waveforms.
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] Oscillator : AudioSourceNode {
+] interface Oscillator : AudioSourceNode {
 
     // Type constants.
     const unsigned short SINE = 0;
diff --git a/Source/WebCore/Modules/webaudio/RealtimeAnalyserNode.idl b/Source/WebCore/Modules/webaudio/RealtimeAnalyserNode.idl
index 180e312..7634783 100644
--- a/Source/WebCore/Modules/webaudio/RealtimeAnalyserNode.idl
+++ b/Source/WebCore/Modules/webaudio/RealtimeAnalyserNode.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] RealtimeAnalyserNode : AudioNode {
+] interface RealtimeAnalyserNode : AudioNode {
     attribute unsigned long fftSize
         setter raises(DOMException);
     readonly attribute unsigned long frequencyBinCount;
diff --git a/Source/WebCore/Modules/webaudio/WaveShaperNode.idl b/Source/WebCore/Modules/webaudio/WaveShaperNode.idl
index b61f187..35740b1 100644
--- a/Source/WebCore/Modules/webaudio/WaveShaperNode.idl
+++ b/Source/WebCore/Modules/webaudio/WaveShaperNode.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_AUDIO,
     JSGenerateToJSObject
-] WaveShaperNode : AudioNode {
+] interface WaveShaperNode : AudioNode {
     attribute Float32Array curve;
 };
diff --git a/Source/WebCore/Modules/webaudio/WaveTable.idl b/Source/WebCore/Modules/webaudio/WaveTable.idl
index 8dbac0a..0174b5e 100644
--- a/Source/WebCore/Modules/webaudio/WaveTable.idl
+++ b/Source/WebCore/Modules/webaudio/WaveTable.idl
@@ -23,8 +23,8 @@
  */
 
 // WaveTable represents a periodic audio waveform given by its Fourier coefficients.
-interface [
+[
     Conditional=WEB_AUDIO
-] WaveTable {
+] interface WaveTable {
 
 };
diff --git a/Source/WebCore/Modules/webdatabase/DOMWindowWebDatabase.idl b/Source/WebCore/Modules/webdatabase/DOMWindowWebDatabase.idl
index d891ae9..299453d 100644
--- a/Source/WebCore/Modules/webdatabase/DOMWindowWebDatabase.idl
+++ b/Source/WebCore/Modules/webdatabase/DOMWindowWebDatabase.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     Supplemental=DOMWindow
-] DOMWindowWebDatabase {
+] interface DOMWindowWebDatabase {
     [V8EnabledAtRuntime, V8MeasureAs=OpenWebDatabase] Database openDatabase(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize, in [Callback, Optional] DatabaseCallback creationCallback)
         raises(DOMException);
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
diff --git a/Source/WebCore/Modules/webdatabase/Database.idl b/Source/WebCore/Modules/webdatabase/Database.idl
index 63c5f73..5f64897 100644
--- a/Source/WebCore/Modules/webdatabase/Database.idl
+++ b/Source/WebCore/Modules/webdatabase/Database.idl
@@ -26,11 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     OmitConstructor,
     JSNoStaticTables
-] Database {
+] interface Database {
     readonly attribute DOMString version;
     void changeVersion(in DOMString oldVersion, in DOMString newVersion, in [Callback, Optional] SQLTransactionCallback callback, in [Callback, Optional] SQLTransactionErrorCallback errorCallback, in [Callback, Optional] VoidCallback successCallback);
     void transaction(in [Callback] SQLTransactionCallback callback, in [Callback, Optional] SQLTransactionErrorCallback errorCallback, in [Callback, Optional] VoidCallback successCallback);
diff --git a/Source/WebCore/Modules/webdatabase/DatabaseCallback.idl b/Source/WebCore/Modules/webdatabase/DatabaseCallback.idl
index 37448fe..1933ff9 100644
--- a/Source/WebCore/Modules/webdatabase/DatabaseCallback.idl
+++ b/Source/WebCore/Modules/webdatabase/DatabaseCallback.idl
@@ -26,10 +26,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     Callback
-] DatabaseCallback {
+] interface DatabaseCallback {
     boolean handleEvent(in Database database);
     boolean handleEvent(in DatabaseSync database);
 };
diff --git a/Source/WebCore/Modules/webdatabase/DatabaseSync.idl b/Source/WebCore/Modules/webdatabase/DatabaseSync.idl
index 89cbcaa..1301eab 100644
--- a/Source/WebCore/Modules/webdatabase/DatabaseSync.idl
+++ b/Source/WebCore/Modules/webdatabase/DatabaseSync.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     OmitConstructor,
     JSNoStaticTables
-] DatabaseSync {
+] interface DatabaseSync {
     readonly attribute DOMString version;
     readonly attribute DOMString lastErrorMessage;
     void changeVersion(in DOMString oldVersion, in DOMString newVersion, in [Callback, Optional] SQLTransactionSyncCallback callback) raises(DOMException);
diff --git a/Source/WebCore/Modules/webdatabase/SQLError.idl b/Source/WebCore/Modules/webdatabase/SQLError.idl
index 16010c5..aa27ebf 100644
--- a/Source/WebCore/Modules/webdatabase/SQLError.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLError.idl
@@ -26,11 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     OmitConstructor,
     JSNoStaticTables
-] SQLError {
+] interface SQLError {
     readonly attribute unsigned long code;
     readonly attribute DOMString message;
 
diff --git a/Source/WebCore/Modules/webdatabase/SQLException.idl b/Source/WebCore/Modules/webdatabase/SQLException.idl
index bbe97aab..5282a96 100644
--- a/Source/WebCore/Modules/webdatabase/SQLException.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLException.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-exception [
+[
     Conditional=SQL_DATABASE,
     JSNoStaticTables,
     DoNotCheckConstants
-] SQLException {
+] exception SQLException {
     readonly attribute unsigned long code;
     readonly attribute DOMString message;
 
diff --git a/Source/WebCore/Modules/webdatabase/SQLResultSet.idl b/Source/WebCore/Modules/webdatabase/SQLResultSet.idl
index d2f4502..8c80bde 100644
--- a/Source/WebCore/Modules/webdatabase/SQLResultSet.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLResultSet.idl
@@ -26,11 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     OmitConstructor,
     JSNoStaticTables
-] SQLResultSet {
+] interface SQLResultSet {
     readonly attribute SQLResultSetRowList rows;
 
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
diff --git a/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.idl b/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.idl
index 6fa4597..a6dddaa 100644
--- a/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.idl
@@ -26,11 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     OmitConstructor,
     JSNoStaticTables
-] SQLResultSetRowList {
+] interface SQLResultSetRowList {
     readonly attribute unsigned long length;
     [Custom] DOMObject item(in unsigned long index);
 };
diff --git a/Source/WebCore/Modules/webdatabase/SQLStatementCallback.idl b/Source/WebCore/Modules/webdatabase/SQLStatementCallback.idl
index 5f5d372..5ce2dd7 100644
--- a/Source/WebCore/Modules/webdatabase/SQLStatementCallback.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLStatementCallback.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     Callback
-] SQLStatementCallback {
+] interface SQLStatementCallback {
     boolean handleEvent(in SQLTransaction transaction, in SQLResultSet resultSet);
 };
diff --git a/Source/WebCore/Modules/webdatabase/SQLStatementErrorCallback.idl b/Source/WebCore/Modules/webdatabase/SQLStatementErrorCallback.idl
index b420241..ddea789 100644
--- a/Source/WebCore/Modules/webdatabase/SQLStatementErrorCallback.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLStatementErrorCallback.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     Callback
-] SQLStatementErrorCallback {
+] interface SQLStatementErrorCallback {
     [Custom] boolean handleEvent(in SQLTransaction transaction, in SQLError error);
 };
diff --git a/Source/WebCore/Modules/webdatabase/SQLTransaction.idl b/Source/WebCore/Modules/webdatabase/SQLTransaction.idl
index 7c1f26b..406fea9 100644
--- a/Source/WebCore/Modules/webdatabase/SQLTransaction.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLTransaction.idl
@@ -26,11 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     OmitConstructor,
     JSNoStaticTables
-] SQLTransaction {
+] interface SQLTransaction {
     [Custom] void executeSql(in DOMString sqlStatement,
                              in ObjectArray arguments,
                              in [Optional, Callback] SQLStatementCallback callback,
diff --git a/Source/WebCore/Modules/webdatabase/SQLTransactionCallback.idl b/Source/WebCore/Modules/webdatabase/SQLTransactionCallback.idl
index 334d21a..d09ae9d 100644
--- a/Source/WebCore/Modules/webdatabase/SQLTransactionCallback.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLTransactionCallback.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     Callback
-] SQLTransactionCallback {
+] interface SQLTransactionCallback {
     boolean handleEvent(in SQLTransaction transaction);
 };
diff --git a/Source/WebCore/Modules/webdatabase/SQLTransactionErrorCallback.idl b/Source/WebCore/Modules/webdatabase/SQLTransactionErrorCallback.idl
index e964209..e8f8dda 100644
--- a/Source/WebCore/Modules/webdatabase/SQLTransactionErrorCallback.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLTransactionErrorCallback.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     Callback
-] SQLTransactionErrorCallback {
+] interface SQLTransactionErrorCallback {
     boolean handleEvent(in SQLError error);
 };
diff --git a/Source/WebCore/Modules/webdatabase/SQLTransactionSync.idl b/Source/WebCore/Modules/webdatabase/SQLTransactionSync.idl
index df4005a..f4072c6 100644
--- a/Source/WebCore/Modules/webdatabase/SQLTransactionSync.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLTransactionSync.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     OmitConstructor,
     JSNoStaticTables
-] SQLTransactionSync {
+] interface SQLTransactionSync {
     [Custom] SQLResultSet executeSql(in DOMString sqlStatement, in ObjectArray arguments);
 };
diff --git a/Source/WebCore/Modules/webdatabase/SQLTransactionSyncCallback.idl b/Source/WebCore/Modules/webdatabase/SQLTransactionSyncCallback.idl
index 7a4a7a6..308c911 100644
--- a/Source/WebCore/Modules/webdatabase/SQLTransactionSyncCallback.idl
+++ b/Source/WebCore/Modules/webdatabase/SQLTransactionSyncCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     Callback
-] SQLTransactionSyncCallback {
+] interface SQLTransactionSyncCallback {
     boolean handleEvent(in SQLTransactionSync transaction);
 };
diff --git a/Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.idl b/Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.idl
index 17c94a3..90bb521 100644
--- a/Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.idl
+++ b/Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.idl
@@ -24,10 +24,10 @@
  *
  */
 
-interface [
+[
     Conditional=SQL_DATABASE,
     Supplemental=WorkerContext
-] WorkerContextWebDatabase {
+] interface WorkerContextWebDatabase {
     [V8EnabledAtRuntime] Database openDatabase(in DOMString name, in DOMString version, in DOMString displayName, in unsigned long estimatedSize, in [Callback, Optional] DatabaseCallback creationCallback)
         raises(DOMException);
 
diff --git a/Source/WebCore/Modules/websockets/CloseEvent.idl b/Source/WebCore/Modules/websockets/CloseEvent.idl
index 6f41f6c..3f29a49 100644
--- a/Source/WebCore/Modules/websockets/CloseEvent.idl
+++ b/Source/WebCore/Modules/websockets/CloseEvent.idl
@@ -28,12 +28,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     JSNoStaticTables,
     ConstructorTemplate=Event
-] CloseEvent : Event {
-    readonly attribute [InitializedByEventConstructor] boolean wasClean;
-    readonly attribute [InitializedByEventConstructor] unsigned short code;
-    readonly attribute [InitializedByEventConstructor] DOMString reason;
+] interface CloseEvent : Event {
+    [InitializedByEventConstructor] readonly attribute boolean wasClean;
+    [InitializedByEventConstructor] readonly attribute unsigned short code;
+    [InitializedByEventConstructor] readonly attribute DOMString reason;
 };
 
diff --git a/Source/WebCore/Modules/websockets/DOMWindowWebSocket.idl b/Source/WebCore/Modules/websockets/DOMWindowWebSocket.idl
index f2fcd79..a70f67e 100644
--- a/Source/WebCore/Modules/websockets/DOMWindowWebSocket.idl
+++ b/Source/WebCore/Modules/websockets/DOMWindowWebSocket.idl
@@ -24,13 +24,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_SOCKETS,
     Supplemental=DOMWindow
-] DOMWindowWebSocket {
+] interface DOMWindowWebSocket {
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
     attribute CloseEventConstructor CloseEvent;
-    attribute [JSCustomGetter, V8EnabledAtRuntime] WebSocketConstructor WebSocket; // Usable with the new operator
+    [JSCustomGetter, V8EnabledAtRuntime] attribute WebSocketConstructor WebSocket; // Usable with the new operator
 #endif
 };
 
diff --git a/Source/WebCore/Modules/websockets/WebSocket.idl b/Source/WebCore/Modules/websockets/WebSocket.idl
index 363971d..72cf5d4 100644
--- a/Source/WebCore/Modules/websockets/WebSocket.idl
+++ b/Source/WebCore/Modules/websockets/WebSocket.idl
@@ -29,14 +29,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_SOCKETS,
     ActiveDOMObject,
     CustomConstructor,
     ConstructorParameters=1,
     EventTarget,
     JSNoStaticTables
-] WebSocket {
+] interface WebSocket {
     readonly attribute DOMString URL; // Lowercased .url is the one in the spec, but leaving .URL for compatibility reasons.
     readonly attribute DOMString url;
 
@@ -55,8 +55,8 @@
     attribute EventListener onerror;
     attribute EventListener onclose;
 
-    readonly attribute [TreatReturnedNullStringAs=Undefined] DOMString protocol;
-    readonly attribute [TreatReturnedNullStringAs=Undefined] DOMString extensions;
+    [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString protocol;
+    [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString extensions;
 
     attribute DOMString binaryType;
 
diff --git a/Source/WebCore/Modules/websockets/WorkerContextWebSocket.idl b/Source/WebCore/Modules/websockets/WorkerContextWebSocket.idl
index ed58063..1f8ae5d 100644
--- a/Source/WebCore/Modules/websockets/WorkerContextWebSocket.idl
+++ b/Source/WebCore/Modules/websockets/WorkerContextWebSocket.idl
@@ -24,10 +24,10 @@
  *
  */
 
-interface [
+[
     Conditional=WEB_SOCKETS,
     Supplemental=WorkerContext
-] WorkerContextWebSocket {
-    attribute [JSCustomGetter,V8EnabledAtRuntime] WebSocketConstructor WebSocket; // Usable with the new operator
+] interface WorkerContextWebSocket {
+    [JSCustomGetter,V8EnabledAtRuntime] attribute WebSocketConstructor WebSocket; // Usable with the new operator
 };
 
diff --git a/Source/WebCore/bindings/scripts/test/TestCallback.idl b/Source/WebCore/bindings/scripts/test/TestCallback.idl
index 390e7ee..ed19447 100644
--- a/Source/WebCore/bindings/scripts/test/TestCallback.idl
+++ b/Source/WebCore/bindings/scripts/test/TestCallback.idl
@@ -28,10 +28,10 @@
 
 // This IDL file is for testing the bindings code generator with an interface
 // that has the "Callback" attribute and for tracking changes in its ouput.
-interface [
+[
     Conditional=SQL_DATABASE,
     Callback
-] TestCallback {
+] interface TestCallback {
   boolean callbackWithNoParam();
   boolean callbackWithClass1Param(in Class1 class1Param);
   boolean callbackWithClass2Param(in Class2 class2Param, in DOMString strArg);
diff --git a/Source/WebCore/bindings/scripts/test/TestCustomNamedGetter.idl b/Source/WebCore/bindings/scripts/test/TestCustomNamedGetter.idl
index 92fc0f1..18f037b 100644
--- a/Source/WebCore/bindings/scripts/test/TestCustomNamedGetter.idl
+++ b/Source/WebCore/bindings/scripts/test/TestCustomNamedGetter.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     CustomNamedGetter
-] TestCustomNamedGetter {
+] interface TestCustomNamedGetter {
     void anotherFunction(in DOMString str);
 };
 
diff --git a/Source/WebCore/bindings/scripts/test/TestDomainSecurity.idl b/Source/WebCore/bindings/scripts/test/TestDomainSecurity.idl
index 02d71a6..9447ed9 100644
--- a/Source/WebCore/bindings/scripts/test/TestDomainSecurity.idl
+++ b/Source/WebCore/bindings/scripts/test/TestDomainSecurity.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     CheckSecurity
-] TestActiveDOMObject {
+] interface TestActiveDOMObject {
     readonly attribute long excitingAttr;
     void excitingFunction(in Node nextChild);
     [DoNotCheckSecurity] void postMessage(in DOMString message);
diff --git a/Source/WebCore/bindings/scripts/test/TestEventConstructor.idl b/Source/WebCore/bindings/scripts/test/TestEventConstructor.idl
index f3cfb61..60e8af0 100644
--- a/Source/WebCore/bindings/scripts/test/TestEventConstructor.idl
+++ b/Source/WebCore/bindings/scripts/test/TestEventConstructor.idl
@@ -28,10 +28,10 @@
 
 // This IDL file is for testing the bindings code generator and for tracking
 // changes in its ouput.
-interface [
+[
     ConstructorTemplate=Event
-] TestEventConstructor {
+] interface TestEventConstructor {
     // Attributes
     readonly attribute DOMString attr1;
-    readonly attribute [InitializedByEventConstructor] DOMString attr2;
+    [InitializedByEventConstructor] readonly attribute DOMString attr2;
 };
diff --git a/Source/WebCore/bindings/scripts/test/TestEventTarget.idl b/Source/WebCore/bindings/scripts/test/TestEventTarget.idl
index 0831aa6..c322601 100644
--- a/Source/WebCore/bindings/scripts/test/TestEventTarget.idl
+++ b/Source/WebCore/bindings/scripts/test/TestEventTarget.idl
@@ -26,12 +26,12 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     EventTarget,
     IndexedGetter,
     NamedGetter,
     MasqueradesAsUndefined
-] TestEventTarget {
+] interface TestEventTarget {
 
     Node item(in [IsIndex] unsigned long index);
 
diff --git a/Source/WebCore/bindings/scripts/test/TestInterface.idl b/Source/WebCore/bindings/scripts/test/TestInterface.idl
index d171ceb..6fa157b 100644
--- a/Source/WebCore/bindings/scripts/test/TestInterface.idl
+++ b/Source/WebCore/bindings/scripts/test/TestInterface.idl
@@ -28,12 +28,12 @@
 
 // This IDL file is for testing the bindings code generator and for tracking
 // changes in its ouput.
-interface [
+[
     ActiveDOMObject,
     CustomNamedSetter,
     Conditional=Condition1|Condition2,
     CallWith=ScriptExecutionContext,
     Constructor(in DOMString str1, in [Optional=DefaultIsUndefined] DOMString str2),
     ConstructorRaisesException
-] TestInterface {
+] interface TestInterface {
 };
diff --git a/Source/WebCore/bindings/scripts/test/TestNamedConstructor.idl b/Source/WebCore/bindings/scripts/test/TestNamedConstructor.idl
index c485e3b..998efb5 100644
--- a/Source/WebCore/bindings/scripts/test/TestNamedConstructor.idl
+++ b/Source/WebCore/bindings/scripts/test/TestNamedConstructor.idl
@@ -28,9 +28,9 @@
 
 // This IDL file is for testing the bindings code generator and for tracking
 // changes in its ouput.
-interface [
+[
     ActiveDOMObject,
     NamedConstructor=Audio(in DOMString str1, in [Optional=DefaultIsUndefined] DOMString str2, in [Optional=DefaultIsNullString] DOMString str3),
     ConstructorRaisesException
-] TestNamedConstructor {
+] interface TestNamedConstructor {
 };
diff --git a/Source/WebCore/bindings/scripts/test/TestNode.idl b/Source/WebCore/bindings/scripts/test/TestNode.idl
index e0d37a3..65b0151 100644
--- a/Source/WebCore/bindings/scripts/test/TestNode.idl
+++ b/Source/WebCore/bindings/scripts/test/TestNode.idl
@@ -18,10 +18,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     EventTarget,
     Constructor,
     V8DependentLifetime
-] TestNode : Node {
+] interface TestNode : Node {
 };
 
diff --git a/Source/WebCore/bindings/scripts/test/TestObj.idl b/Source/WebCore/bindings/scripts/test/TestObj.idl
index 321aa3f..83fe86f 100644
--- a/Source/WebCore/bindings/scripts/test/TestObj.idl
+++ b/Source/WebCore/bindings/scripts/test/TestObj.idl
@@ -29,10 +29,10 @@
 
 // This IDL file is for testing the bindings code generator and for tracking
 // changes in its ouput.
-interface [
+[
     Constructor(in [Callback] TestCallback testCallback),
     InterfaceName=TestObject
-] TestObj {
+] interface TestObj {
     // Attributes
     readonly attribute long            readOnlyLongAttr;
     readonly attribute DOMString       readOnlyStringAttr;
@@ -48,22 +48,22 @@
     attribute long long                longLongAttr;
     attribute unsigned long long       unsignedLongLongAttr;
     attribute DOMString                stringAttr;
-    attribute [V8MeasureAs=TestFeature] TestObj testObjAttr;
+    [V8MeasureAs=TestFeature] attribute TestObj testObjAttr;
 
     // WK_ucfirst, WK_lcfirst exceptional cases.
     attribute TestObj                  XMLObjAttr;
     attribute boolean                  create;
 
     // Reflected DOM attributes
-    attribute [Reflect] DOMString reflectedStringAttr;
-    attribute [Reflect] long reflectedIntegralAttr;
-    attribute [Reflect] unsigned long reflectedUnsignedIntegralAttr;
-    attribute [Reflect] boolean reflectedBooleanAttr;
-    attribute [Reflect, URL] DOMString reflectedURLAttr;
-    attribute [Reflect=customContentStringAttr] DOMString reflectedStringAttr;
-    attribute [Reflect=customContentIntegralAttr] long reflectedCustomIntegralAttr;
-    attribute [Reflect=customContentBooleanAttr] boolean reflectedCustomBooleanAttr;
-    attribute [Reflect=customContentURLAttr, URL] DOMString reflectedCustomURLAttr;
+    [Reflect] attribute DOMString reflectedStringAttr;
+    [Reflect] attribute long reflectedIntegralAttr;
+    [Reflect] attribute unsigned long reflectedUnsignedIntegralAttr;
+    [Reflect] attribute boolean reflectedBooleanAttr;
+    [Reflect, URL] attribute DOMString reflectedURLAttr;
+    [Reflect=customContentStringAttr] attribute DOMString reflectedStringAttr;
+    [Reflect=customContentIntegralAttr] attribute long reflectedCustomIntegralAttr;
+    [Reflect=customContentBooleanAttr] attribute boolean reflectedCustomBooleanAttr;
+    [Reflect=customContentURLAttr, URL] attribute DOMString reflectedCustomURLAttr;
 
     // TypedArray attribute
     attribute Float32Array typedArrayAttr;
@@ -94,7 +94,7 @@
     attribute DOMString stringAttrWithSetterException setter raises(DOMException);
 
     // 'Custom' extended attribute
-    attribute [Custom] long            customAttr;
+    [Custom] attribute long            customAttr;
     [Custom, V8MeasureAs=CustomTestFeature] void customMethod();
     [Custom] void customMethodWithArgs(in long longArg, in DOMString strArg, in TestObj objArg);
 
@@ -119,17 +119,17 @@
     [CallWith=  ScriptExecutionContext  |  ScriptState  ] TestObj withScriptExecutionContextAndScriptStateWithSpaces();
     [CallWith=ScriptArguments|CallStack] void withScriptArgumentsAndCallStack();
 
-    attribute [CallWith=ScriptState] long withScriptStateAttribute;
-    attribute [CallWith=ScriptExecutionContext] TestObj withScriptExecutionContextAttribute;
-    attribute [CallWith=ScriptState] TestObj withScriptStateAttributeRaises
+    [CallWith=ScriptState] attribute long withScriptStateAttribute;
+    [CallWith=ScriptExecutionContext] attribute TestObj withScriptExecutionContextAttribute;
+    [CallWith=ScriptState] attribute TestObj withScriptStateAttributeRaises
         getter raises(DOMException);
-    attribute [CallWith=ScriptExecutionContext] TestObj withScriptExecutionContextAttributeRaises
+    [CallWith=ScriptExecutionContext] attribute TestObj withScriptExecutionContextAttributeRaises
         getter raises(DOMException);
-    attribute [CallWith=ScriptExecutionContext|ScriptState] TestObj withScriptExecutionContextAndScriptStateAttribute;
-    attribute [CallWith=ScriptExecutionContext|ScriptState] TestObj withScriptExecutionContextAndScriptStateAttributeRaises
+    [CallWith=ScriptExecutionContext|ScriptState] attribute TestObj withScriptExecutionContextAndScriptStateAttribute;
+    [CallWith=ScriptExecutionContext|ScriptState] attribute TestObj withScriptExecutionContextAndScriptStateAttributeRaises
         getter raises(DOMException);
-    attribute [CallWith=  ScriptExecutionContext  |  ScriptState  ] TestObj withScriptExecutionContextAndScriptStateWithSpacesAttribute;
-    attribute [CallWith=ScriptArguments|CallStack] TestObj withScriptArgumentsAndCallStackAttribute;
+    [CallWith=  ScriptExecutionContext  |  ScriptState  ] attribute TestObj withScriptExecutionContextAndScriptStateWithSpacesAttribute;
+    [CallWith=ScriptArguments|CallStack] attribute TestObj withScriptArgumentsAndCallStackAttribute;
 
     // 'Optional' extended attribute
     void    methodWithOptionalArg(in [Optional] long opt);
@@ -147,24 +147,24 @@
 #endif
 
     // 'Conditional' extended attribute
-    attribute [Conditional=Condition1] long conditionalAttr1;
-    attribute [Conditional=Condition1&Condition2] long conditionalAttr2;
-    attribute [Conditional=Condition1|Condition2] long conditionalAttr3;
+    [Conditional=Condition1] attribute long conditionalAttr1;
+    [Conditional=Condition1&Condition2] attribute long conditionalAttr2;
+    [Conditional=Condition1|Condition2] attribute long conditionalAttr3;
 
     // 'Conditional' extended method
     [Conditional=Condition1] DOMString conditionalMethod1();
     [Conditional=Condition1&Condition2] void conditionalMethod2();
     [Conditional=Condition1|Condition2] void conditionalMethod3();
 
-    attribute [Conditional=Condition1] TestObjectAConstructor conditionalAttr4;
-    attribute [Conditional=Condition1&Condition2] TestObjectBConstructor conditionalAttr5;
-    attribute [Conditional=Condition1|Condition2] TestObjectCConstructor conditionalAttr6;
+    [Conditional=Condition1] attribute TestObjectAConstructor conditionalAttr4;
+    [Conditional=Condition1&Condition2] attribute TestObjectBConstructor conditionalAttr5;
+    [Conditional=Condition1|Condition2] attribute TestObjectCConstructor conditionalAttr6;
 
     [Conditional=Condition1] const unsigned short CONDITIONAL_CONST = 0;
 
 #if defined(TESTING_V8) || defined(TESTING_JS)
-    readonly attribute [CachedAttribute] any cachedAttribute1;
-    readonly attribute [CachedAttribute] any cachedAttribute2;
+    [CachedAttribute] readonly attribute any cachedAttribute1;
+    [CachedAttribute] readonly attribute any cachedAttribute2;
 #endif
     
     attribute any anyAttribute;
@@ -199,13 +199,13 @@
     // 'V8EnabledAtRuntime' methods and attributes.
     [V8EnabledAtRuntime] void enabledAtRuntimeMethod1(in long longArg);
     [V8EnabledAtRuntime=FeatureName] void enabledAtRuntimeMethod2(in long longArg);
-    attribute [V8EnabledAtRuntime] long enabledAtRuntimeAttr1;
-    attribute [V8EnabledAtRuntime=FeatureName] long enabledAtRuntimeAttr2;
+    [V8EnabledAtRuntime] attribute long enabledAtRuntimeAttr1;
+    [V8EnabledAtRuntime=FeatureName] attribute long enabledAtRuntimeAttr2;
     // 'V8EnabledPerContext' methods and attributes.
     [V8EnabledPerContext] void enabledPerContextMethod1(in long longArg);
     [V8EnabledPerContext=FeatureName] void enabledPerContextMethod2(in long longArg);
-    attribute [V8EnabledPerContext] long enabledPerContextAttr1;
-    attribute [V8EnabledPerContext=FeatureName] long enabledPerContextAttr2;
+    [V8EnabledPerContext] attribute long enabledPerContextAttr1;
+    [V8EnabledPerContext=FeatureName] attribute long enabledPerContextAttr2;
 #endif
 
 
@@ -221,7 +221,7 @@
     DOMString[] stringArrayFunction(in DOMString[] values) raises(DOMException);
 #endif
 
-    readonly attribute [CheckSecurityForNode] Document contentDocument;
+    [CheckSecurityForNode] readonly attribute Document contentDocument;
     [CheckSecurityForNode] SVGDocument getSVGDocument()
         raises(DOMException);
 
@@ -231,14 +231,14 @@
     void convert5(in [TreatNullAs=NullString, TreatUndefinedAs=NullString] e value);
 
     attribute SVGPoint mutablePoint;
-    attribute [Immutable] SVGPoint immutablePoint;
+    [Immutable] attribute SVGPoint immutablePoint;
     SVGPoint mutablePointFunction();
     [Immutable] SVGPoint immutablePointFunction();
 
     [ImplementedAs=banana] void orange();
-    attribute [ImplementedAs=blueberry] long strawberry;
+    [ImplementedAs=blueberry] attribute long strawberry;
 
-    attribute [StrictTypeChecking] float strictFloat;
+    [StrictTypeChecking] attribute float strictFloat;
     [StrictTypeChecking] bool strictFunction(in DOMString str, in float a, in long b)
         raises(DOMException);
 
@@ -261,7 +261,7 @@
     const unsigned short CONST_VALUE_14 = 0x1abc;
     [Reflect=CONST_IMPL] const unsigned short CONST_JAVASCRIPT = 15;
 
-    attribute [Replaceable] long replaceableAttribute;
+    [Replaceable] attribute long replaceableAttribute;
 
     void variadicStringMethod(in DOMString head, in DOMString... tail);
     void variadicDoubleMethod(in double head, in double... tail);
diff --git a/Source/WebCore/bindings/scripts/test/TestSerializedScriptValueInterface.idl b/Source/WebCore/bindings/scripts/test/TestSerializedScriptValueInterface.idl
index 39585e5..c6d493d 100644
--- a/Source/WebCore/bindings/scripts/test/TestSerializedScriptValueInterface.idl
+++ b/Source/WebCore/bindings/scripts/test/TestSerializedScriptValueInterface.idl
@@ -25,16 +25,16 @@
 
 // This IDL file is for testing the bindings code generator and for tracking
 // changes in its ouput.
-interface [
+[
     Conditional=Condition1|Condition2,
     Constructor(in DOMString hello, in SerializedScriptValue value),
     Constructor(in DOMString hello, in [TransferList=transferList] SerializedScriptValue data, in [Optional=DefaultIsUndefined] Array transferList),
-] TestSerializedScriptValueInterface {
+] interface TestSerializedScriptValueInterface {
     attribute SerializedScriptValue value;
     readonly attribute SerializedScriptValue readonlyValue;
-    attribute [CachedAttribute] SerializedScriptValue cachedValue;
+    [CachedAttribute] attribute SerializedScriptValue cachedValue;
     readonly attribute MessagePortArray ports;
-    readonly attribute [CachedAttribute] SerializedScriptValue cachedReadonlyValue;
+    [CachedAttribute] readonly attribute SerializedScriptValue cachedReadonlyValue;
     void acceptTransferList(in [TransferList=transferList] SerializedScriptValue data, in [Optional] Array transferList);
     void multiTransferList(in [Optional, TransferList=tx] SerializedScriptValue first, in [Optional] Array tx, in [Optional, TransferList=txx] SerializedScriptValue second, in [Optional] Array txx);
 };
diff --git a/Source/WebCore/bindings/scripts/test/TestSupplemental.idl b/Source/WebCore/bindings/scripts/test/TestSupplemental.idl
index faa40fa..1ed30dd 100644
--- a/Source/WebCore/bindings/scripts/test/TestSupplemental.idl
+++ b/Source/WebCore/bindings/scripts/test/TestSupplemental.idl
@@ -28,17 +28,17 @@
 
 // This IDL file is for testing the bindings code generator and for tracking
 // changes in its ouput.
-interface [
+[
     Conditional=Condition11|Condition12,
     Supplemental=TestInterface
-] TestSupplemental {
+] interface TestSupplemental {
 #if defined(TESTING_JS) || defined(TESTING_V8)
     static readonly attribute long supplementalStaticReadOnlyAttr;
     static attribute DOMString supplementalStaticAttr;
 #endif
     readonly attribute DOMString supplementalStr1;
     attribute DOMString supplementalStr2;
-    attribute [CustomGetter, CustomSetter] DOMString supplementalStr3;
+    [CustomGetter, CustomSetter] attribute DOMString supplementalStr3;
     attribute Node supplementalNode;
 
     void supplementalMethod1();
diff --git a/Source/WebCore/bindings/scripts/test/TestTypedArray.idl b/Source/WebCore/bindings/scripts/test/TestTypedArray.idl
index f360574..91c6a10 100644
--- a/Source/WebCore/bindings/scripts/test/TestTypedArray.idl
+++ b/Source/WebCore/bindings/scripts/test/TestTypedArray.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=123,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=double
-] Float64Array : ArrayBufferView {
+] interface Float64Array : ArrayBufferView {
     Int32Array foo(in Float32Array array);
     void set();
 };
diff --git a/Source/WebCore/css/CSSCharsetRule.idl b/Source/WebCore/css/CSSCharsetRule.idl
index 7d02e8b..d2386de 100644
--- a/Source/WebCore/css/CSSCharsetRule.idl
+++ b/Source/WebCore/css/CSSCharsetRule.idl
@@ -21,9 +21,9 @@
 // Introduced in DOM Level 2:
 interface CSSCharsetRule : CSSRule {
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString encoding;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString encoding;
 #else
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString encoding
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString encoding
                  setter raises(DOMException);
 #endif
 };
diff --git a/Source/WebCore/css/CSSImportRule.idl b/Source/WebCore/css/CSSImportRule.idl
index a8690b7..d1d76ab 100644
--- a/Source/WebCore/css/CSSImportRule.idl
+++ b/Source/WebCore/css/CSSImportRule.idl
@@ -20,7 +20,7 @@
 
 // Introduced in DOM Level 2:
 interface CSSImportRule : CSSRule {
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString href;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString href;
     readonly attribute MediaList media;
     readonly attribute CSSStyleSheet styleSheet;
 };
diff --git a/Source/WebCore/css/CSSPageRule.idl b/Source/WebCore/css/CSSPageRule.idl
index 84e917c..e9e49d0 100644
--- a/Source/WebCore/css/CSSPageRule.idl
+++ b/Source/WebCore/css/CSSPageRule.idl
@@ -21,7 +21,7 @@
 // Introduced in DOM Level 2:
 interface CSSPageRule : CSSRule {
 
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString selectorText;
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString selectorText;
 
     readonly attribute CSSStyleDeclaration style;
 
diff --git a/Source/WebCore/css/CSSRule.idl b/Source/WebCore/css/CSSRule.idl
index fec0c1b..585adab 100644
--- a/Source/WebCore/css/CSSRule.idl
+++ b/Source/WebCore/css/CSSRule.idl
@@ -19,13 +19,13 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSCustomMarkFunction,
     JSGenerateIsReachable,
     CustomToJSObject,
     ObjCPolymorphic,
     V8DependentLifetime
-] CSSRule {
+] interface CSSRule {
 
     // RuleType
     const unsigned short UNKNOWN_RULE = 0;
@@ -43,7 +43,7 @@
 
     readonly attribute unsigned short   type;
 
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString        cssText
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString        cssText
                  setter raises (DOMException);
 
     readonly attribute CSSStyleSheet    parentStyleSheet;
diff --git a/Source/WebCore/css/CSSRuleList.idl b/Source/WebCore/css/CSSRuleList.idl
index 3eeb9b5..02448c0 100644
--- a/Source/WebCore/css/CSSRuleList.idl
+++ b/Source/WebCore/css/CSSRuleList.idl
@@ -24,11 +24,11 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSCustomIsReachable,
     IndexedGetter,
     V8DependentLifetime
-] CSSRuleList {
+] interface CSSRuleList {
     readonly attribute unsigned long    length;
     CSSRule           item(in [Optional=DefaultIsUndefined] unsigned long index);
 };
diff --git a/Source/WebCore/css/CSSStyleDeclaration.idl b/Source/WebCore/css/CSSStyleDeclaration.idl
index ba3a38d..196bfac 100644
--- a/Source/WebCore/css/CSSStyleDeclaration.idl
+++ b/Source/WebCore/css/CSSStyleDeclaration.idl
@@ -19,7 +19,7 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSCustomMarkFunction,
     JSGenerateIsReachable,
     JSCustomGetOwnPropertySlotAndDescriptor,
@@ -30,8 +30,8 @@
     IndexedGetter,
     CustomEnumerateProperty,
     V8DependentLifetime
-] CSSStyleDeclaration {
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString        cssText
+] interface CSSStyleDeclaration {
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString        cssText
                  setter raises(DOMException);
 
     [TreatReturnedNullStringAs=Null] DOMString          getPropertyValue(in [Optional=DefaultIsUndefined] DOMString propertyName);
diff --git a/Source/WebCore/css/CSSStyleRule.idl b/Source/WebCore/css/CSSStyleRule.idl
index 1fccb4c..23cd73a 100644
--- a/Source/WebCore/css/CSSStyleRule.idl
+++ b/Source/WebCore/css/CSSStyleRule.idl
@@ -21,7 +21,7 @@
 // Introduced in DOM Level 2:
 interface CSSStyleRule : CSSRule {
 
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString selectorText;
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString selectorText;
 
     readonly attribute CSSStyleDeclaration style;
 
diff --git a/Source/WebCore/css/CSSStyleSheet.idl b/Source/WebCore/css/CSSStyleSheet.idl
index caa2849..69843e4 100644
--- a/Source/WebCore/css/CSSStyleSheet.idl
+++ b/Source/WebCore/css/CSSStyleSheet.idl
@@ -19,9 +19,9 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     V8GenerateIsReachable=ImplOwnerNodeRoot
-] CSSStyleSheet : StyleSheet {
+] interface CSSStyleSheet : StyleSheet {
     readonly attribute CSSRule          ownerRule;
     readonly attribute CSSRuleList      cssRules;
 
diff --git a/Source/WebCore/css/CSSUnknownRule.idl b/Source/WebCore/css/CSSUnknownRule.idl
index 641c88f..0b0ca0c 100644
--- a/Source/WebCore/css/CSSUnknownRule.idl
+++ b/Source/WebCore/css/CSSUnknownRule.idl
@@ -19,8 +19,8 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     OmitConstructor
-] CSSUnknownRule : CSSRule {
+] interface CSSUnknownRule : CSSRule {
 };
 
diff --git a/Source/WebCore/css/CSSValue.idl b/Source/WebCore/css/CSSValue.idl
index 4908d34..dec3714a 100644
--- a/Source/WebCore/css/CSSValue.idl
+++ b/Source/WebCore/css/CSSValue.idl
@@ -18,13 +18,13 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     CustomToJSObject,
     JSCustomIsReachable,
     JSCustomFinalize,
     ObjCPolymorphic,
     V8DependentLifetime
-] CSSValue {
+] interface CSSValue {
 
     // UnitTypes
     const unsigned short CSS_INHERIT         = 0;
@@ -32,7 +32,7 @@
     const unsigned short CSS_VALUE_LIST      = 2;
     const unsigned short CSS_CUSTOM          = 3;
 
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString cssText
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString cssText
                  setter raises(DOMException);
 
     readonly attribute unsigned short cssValueType;
diff --git a/Source/WebCore/css/CSSValueList.idl b/Source/WebCore/css/CSSValueList.idl
index ba0090a..e96392b 100644
--- a/Source/WebCore/css/CSSValueList.idl
+++ b/Source/WebCore/css/CSSValueList.idl
@@ -24,9 +24,9 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     IndexedGetter
-] CSSValueList : CSSValue {
+] interface CSSValueList : CSSValue {
     readonly attribute unsigned long    length;
     CSSValue           item(in [Optional=DefaultIsUndefined] unsigned long index);
 };
diff --git a/Source/WebCore/css/MediaList.idl b/Source/WebCore/css/MediaList.idl
index eac9714..308eaf4 100644
--- a/Source/WebCore/css/MediaList.idl
+++ b/Source/WebCore/css/MediaList.idl
@@ -24,12 +24,12 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSGenerateIsReachable,
     IndexedGetter
-] MediaList {
+] interface MediaList {
 
-             attribute [TreatNullAs=NullString, TreatReturnedNullStringAs=Null] DOMString mediaText
+             [TreatNullAs=NullString, TreatReturnedNullStringAs=Null] attribute DOMString mediaText
                  setter raises(DOMException);
     readonly attribute unsigned long length;
 
diff --git a/Source/WebCore/css/MediaQueryListListener.idl b/Source/WebCore/css/MediaQueryListListener.idl
index 6007810..cfcea0b 100644
--- a/Source/WebCore/css/MediaQueryListListener.idl
+++ b/Source/WebCore/css/MediaQueryListListener.idl
@@ -17,11 +17,11 @@
  *  Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSNoStaticTables,
     ObjCProtocol,
     CPPPureInterface,
     OmitConstructor
-] MediaQueryListListener {
+] interface MediaQueryListListener {
     void queryChanged(in [Optional=DefaultIsUndefined] MediaQueryList list);
 };
diff --git a/Source/WebCore/css/StyleMedia.idl b/Source/WebCore/css/StyleMedia.idl
index 2584198..6568a2e 100644
--- a/Source/WebCore/css/StyleMedia.idl
+++ b/Source/WebCore/css/StyleMedia.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     JSGenerateIsReachable=ImplFrame
-] StyleMedia {
+] interface StyleMedia {
     readonly attribute DOMString type;
     boolean matchMedium(in [Optional=DefaultIsUndefined] DOMString mediaquery);
 };
diff --git a/Source/WebCore/css/StyleSheet.idl b/Source/WebCore/css/StyleSheet.idl
index 99c0c4e..b2d3a11 100644
--- a/Source/WebCore/css/StyleSheet.idl
+++ b/Source/WebCore/css/StyleSheet.idl
@@ -19,19 +19,19 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSCustomMarkFunction,
     JSGenerateIsReachable,
     CustomToJSObject,
     ObjCPolymorphic,
     V8GenerateIsReachable=ImplOwnerNodeRoot
-] StyleSheet {
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString        type;
+] interface StyleSheet {
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString        type;
              attribute boolean          disabled;
     readonly attribute Node             ownerNode;
     readonly attribute StyleSheet       parentStyleSheet;
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString        href;
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString        title;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString        href;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString        title;
     readonly attribute MediaList        media;
 
 #if defined(LANGUAGE_CPP) && LANGUAGE_CPP
diff --git a/Source/WebCore/css/StyleSheetList.idl b/Source/WebCore/css/StyleSheetList.idl
index a64fa3b..fc9aea5 100644
--- a/Source/WebCore/css/StyleSheetList.idl
+++ b/Source/WebCore/css/StyleSheetList.idl
@@ -19,12 +19,12 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSGenerateIsReachable=ImplDocument,
     IndexedGetter,
     NamedGetter,
     V8DependentLifetime
-] StyleSheetList {
+] interface StyleSheetList {
     readonly attribute unsigned long    length;
     StyleSheet         item(in [Optional=DefaultIsUndefined] unsigned long index);
 };
diff --git a/Source/WebCore/css/WebKitCSSFilterValue.idl b/Source/WebCore/css/WebKitCSSFilterValue.idl
index cb413c9..e3a2ead 100644
--- a/Source/WebCore/css/WebKitCSSFilterValue.idl
+++ b/Source/WebCore/css/WebKitCSSFilterValue.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
         Conditional=CSS_FILTERS,
         IndexedGetter,
         DoNotCheckConstants
-] WebKitCSSFilterValue : CSSValueList {
+] interface WebKitCSSFilterValue : CSSValueList {
 
     // OperationTypes
 
diff --git a/Source/WebCore/css/WebKitCSSKeyframesRule.idl b/Source/WebCore/css/WebKitCSSKeyframesRule.idl
index fd97180..e1e167d 100644
--- a/Source/WebCore/css/WebKitCSSKeyframesRule.idl
+++ b/Source/WebCore/css/WebKitCSSKeyframesRule.idl
@@ -27,11 +27,11 @@
  */
 
 // Introduced in DOM Level ?:
-interface [
+[
     IndexedGetter
-] WebKitCSSKeyframesRule : CSSRule {
+] interface WebKitCSSKeyframesRule : CSSRule {
 
-    attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString name;
+    [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString name;
     readonly attribute CSSRuleList cssRules;
     
     void insertRule(in [Optional=DefaultIsUndefined] DOMString rule);
diff --git a/Source/WebCore/css/WebKitCSSMatrix.idl b/Source/WebCore/css/WebKitCSSMatrix.idl
index 5a9d946..9bc3f09 100644
--- a/Source/WebCore/css/WebKitCSSMatrix.idl
+++ b/Source/WebCore/css/WebKitCSSMatrix.idl
@@ -24,10 +24,10 @@
  */
 
 // Introduced in DOM Level ?:
-interface [
+[
     Constructor(in [Optional=DefaultIsNullString] DOMString cssValue),
     ConstructorRaisesException,
-] WebKitCSSMatrix {
+] interface WebKitCSSMatrix {
 
     // These attributes are simple aliases for certain elements of the 4x4 matrix
     attribute double a; // alias for m11
diff --git a/Source/WebCore/css/WebKitCSSRegionRule.idl b/Source/WebCore/css/WebKitCSSRegionRule.idl
index ca59ba6..3ea6ef2 100644
--- a/Source/WebCore/css/WebKitCSSRegionRule.idl
+++ b/Source/WebCore/css/WebKitCSSRegionRule.idl
@@ -27,9 +27,9 @@
  * SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=CSS_REGIONS,
-] WebKitCSSRegionRule : CSSRule {
+] interface WebKitCSSRegionRule : CSSRule {
     readonly attribute CSSRuleList cssRules;
 };
 
diff --git a/Source/WebCore/css/WebKitCSSTransformValue.idl b/Source/WebCore/css/WebKitCSSTransformValue.idl
index bdf8f7a..5e7aa79 100644
--- a/Source/WebCore/css/WebKitCSSTransformValue.idl
+++ b/Source/WebCore/css/WebKitCSSTransformValue.idl
@@ -26,10 +26,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
         IndexedGetter,
         DoNotCheckConstants
-] WebKitCSSTransformValue : CSSValueList {
+] interface WebKitCSSTransformValue : CSSValueList {
 
     // OperationTypes
 
diff --git a/Source/WebCore/dom/Attr.idl b/Source/WebCore/dom/Attr.idl
index 6b15216..bd3b50f 100644
--- a/Source/WebCore/dom/Attr.idl
+++ b/Source/WebCore/dom/Attr.idl
@@ -18,18 +18,18 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSCustomMarkFunction,
     JSGenerateToNativeObject
-] Attr : Node {
+] interface Attr : Node {
 
     // DOM Level 1
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString name;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString name;
 
     readonly attribute boolean specified;
 
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString value 
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString value 
                  setter raises(DOMException);
 
     // DOM Level 2
diff --git a/Source/WebCore/dom/BeforeLoadEvent.idl b/Source/WebCore/dom/BeforeLoadEvent.idl
index 3c6363f..54b8501 100644
--- a/Source/WebCore/dom/BeforeLoadEvent.idl
+++ b/Source/WebCore/dom/BeforeLoadEvent.idl
@@ -24,9 +24,9 @@
  *
  */
 
-interface [
+[
     ConstructorTemplate=Event
-] BeforeLoadEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMString url;
+] interface BeforeLoadEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMString url;
 };
 
diff --git a/Source/WebCore/dom/CharacterData.idl b/Source/WebCore/dom/CharacterData.idl
index 4fdc896..bd6265b 100644
--- a/Source/WebCore/dom/CharacterData.idl
+++ b/Source/WebCore/dom/CharacterData.idl
@@ -19,7 +19,7 @@
 
 interface CharacterData : Node {
 
-    attribute [TreatNullAs=NullString] DOMString data
+    [TreatNullAs=NullString] attribute DOMString data
         setter raises(DOMException);
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/dom/ClientRectList.idl b/Source/WebCore/dom/ClientRectList.idl
index 38aa2cc..93513a4 100644
--- a/Source/WebCore/dom/ClientRectList.idl
+++ b/Source/WebCore/dom/ClientRectList.idl
@@ -24,9 +24,9 @@
  *
  */
 
-interface [
+[
     IndexedGetter
-] ClientRectList {
+] interface ClientRectList {
     readonly attribute unsigned long length;
     ClientRect item(in [IsIndex,Optional=DefaultIsUndefined] unsigned long index);
     // FIXME: Fix list behavior to allow custom exceptions to be thrown.
diff --git a/Source/WebCore/dom/Clipboard.idl b/Source/WebCore/dom/Clipboard.idl
index 0e164a3..43f3aaa 100644
--- a/Source/WebCore/dom/Clipboard.idl
+++ b/Source/WebCore/dom/Clipboard.idl
@@ -27,9 +27,9 @@
  */
 
 interface Clipboard {
-             attribute [TreatReturnedNullStringAs=Undefined] DOMString dropEffect;
-             attribute [TreatReturnedNullStringAs=Undefined] DOMString effectAllowed;
-    readonly attribute [CustomGetter] Array types;
+             [TreatReturnedNullStringAs=Undefined] attribute DOMString dropEffect;
+             [TreatReturnedNullStringAs=Undefined] attribute DOMString effectAllowed;
+    [CustomGetter] readonly attribute Array types;
     readonly attribute FileList files;
 
     [Custom] void clearData(in [Optional] DOMString type)
@@ -39,6 +39,6 @@
     [Custom] void setDragImage(in HTMLImageElement image, in long x, in long y)
         raises(DOMException);
 
-    readonly attribute [Conditional=DATA_TRANSFER_ITEMS, V8EnabledAtRuntime=DataTransferItems] DataTransferItemList items;
+    [Conditional=DATA_TRANSFER_ITEMS, V8EnabledAtRuntime=DataTransferItems] readonly attribute DataTransferItemList items;
 };
 
diff --git a/Source/WebCore/dom/CustomEvent.idl b/Source/WebCore/dom/CustomEvent.idl
index d357147..02dc19d 100644
--- a/Source/WebCore/dom/CustomEvent.idl
+++ b/Source/WebCore/dom/CustomEvent.idl
@@ -25,10 +25,10 @@
 
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
 // Introduced in DOM Level 3:
-interface [
+[
     ConstructorTemplate=Event
-] CustomEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMObject detail;
+] interface CustomEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMObject detail;
 
     void initCustomEvent(in [Optional=DefaultIsUndefined] DOMString typeArg, 
                          in [Optional=DefaultIsUndefined] boolean canBubbleArg, 
diff --git a/Source/WebCore/dom/DOMCoreException.idl b/Source/WebCore/dom/DOMCoreException.idl
index 6eb728e..419202c 100644
--- a/Source/WebCore/dom/DOMCoreException.idl
+++ b/Source/WebCore/dom/DOMCoreException.idl
@@ -26,11 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-exception [
+[
     JSNoStaticTables,
     DoNotCheckConstants,
     InterfaceName=DOMException
-] DOMCoreException {
+] exception DOMCoreException {
 
     readonly attribute unsigned short   code;
     readonly attribute DOMString        name;
diff --git a/Source/WebCore/dom/DOMImplementation.idl b/Source/WebCore/dom/DOMImplementation.idl
index b663594..e1ff7b9 100644
--- a/Source/WebCore/dom/DOMImplementation.idl
+++ b/Source/WebCore/dom/DOMImplementation.idl
@@ -18,10 +18,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateIsReachable=ImplDocument,
     V8DependentLifetime
-] DOMImplementation {
+] interface DOMImplementation {
 
     // DOM Level 1
 
diff --git a/Source/WebCore/dom/DOMNamedFlowCollection.idl b/Source/WebCore/dom/DOMNamedFlowCollection.idl
index 9783c5a..0d63a39 100644
--- a/Source/WebCore/dom/DOMNamedFlowCollection.idl
+++ b/Source/WebCore/dom/DOMNamedFlowCollection.idl
@@ -27,13 +27,13 @@
  * SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=CSS_REGIONS,
     InterfaceName=WebKitNamedFlowCollection,
     JSGenerateToJSObject,
     IndexedGetter,
     NamedGetter
-] DOMNamedFlowCollection {
+] interface DOMNamedFlowCollection {
     readonly attribute unsigned long length;
     WebKitNamedFlow item(in unsigned long index);
     WebKitNamedFlow namedItem(in DOMString name);
diff --git a/Source/WebCore/dom/DOMStringList.idl b/Source/WebCore/dom/DOMStringList.idl
index 0482c86..d0eb362 100644
--- a/Source/WebCore/dom/DOMStringList.idl
+++ b/Source/WebCore/dom/DOMStringList.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     IndexedGetter,
     JSCustomToNativeObject
-] DOMStringList {
+] interface DOMStringList {
     readonly attribute unsigned long length;
     [TreatReturnedNullStringAs=Null] DOMString item(in [Optional=DefaultIsUndefined] unsigned long index);
     boolean contains(in [Optional=DefaultIsUndefined] DOMString string);
diff --git a/Source/WebCore/dom/DOMStringMap.idl b/Source/WebCore/dom/DOMStringMap.idl
index 7428288..732ab1c 100644
--- a/Source/WebCore/dom/DOMStringMap.idl
+++ b/Source/WebCore/dom/DOMStringMap.idl
@@ -23,12 +23,12 @@
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     GenerateIsReachable=ImplElementRoot,
     NamedGetter,
     CustomDeleteProperty,
     CustomEnumerateProperty,
     CustomNamedSetter
-] DOMStringMap {
+] interface DOMStringMap {
 };
 
diff --git a/Source/WebCore/dom/DataTransferItem.idl b/Source/WebCore/dom/DataTransferItem.idl
index f8454e5..a66656e 100644
--- a/Source/WebCore/dom/DataTransferItem.idl
+++ b/Source/WebCore/dom/DataTransferItem.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=DATA_TRANSFER_ITEMS,
-] DataTransferItem {
+] interface DataTransferItem {
     readonly attribute DOMString kind;
     readonly attribute DOMString type;
 
diff --git a/Source/WebCore/dom/DataTransferItemList.idl b/Source/WebCore/dom/DataTransferItemList.idl
index f6d02f9..67956a1 100644
--- a/Source/WebCore/dom/DataTransferItemList.idl
+++ b/Source/WebCore/dom/DataTransferItemList.idl
@@ -28,14 +28,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=DATA_TRANSFER_ITEMS,
     IndexedGetter,
     JSGenerateToNativeObject,
 #if defined(V8_BINDING) && V8_BINDING
     CustomDeleteProperty,
 #endif
-] DataTransferItemList {
+] interface DataTransferItemList {
     readonly attribute long length;
     DataTransferItem item(in [Optional=DefaultIsUndefined] unsigned long index);
 
diff --git a/Source/WebCore/dom/DeviceMotionEvent.idl b/Source/WebCore/dom/DeviceMotionEvent.idl
index 5ed964b..7c39c2f 100644
--- a/Source/WebCore/dom/DeviceMotionEvent.idl
+++ b/Source/WebCore/dom/DeviceMotionEvent.idl
@@ -23,13 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=DEVICE_ORIENTATION,
-] DeviceMotionEvent : Event {
-    readonly attribute [Custom] Acceleration acceleration;
-    readonly attribute [Custom] Acceleration accelerationIncludingGravity;
-    readonly attribute [Custom] RotationRate rotationRate;
-    readonly attribute [Custom] double interval;
+] interface DeviceMotionEvent : Event {
+    [Custom] readonly attribute Acceleration acceleration;
+    [Custom] readonly attribute Acceleration accelerationIncludingGravity;
+    [Custom] readonly attribute RotationRate rotationRate;
+    [Custom] readonly attribute double interval;
     [Custom] void initDeviceMotionEvent(in [Optional=DefaultIsUndefined] DOMString type, 
                                         in [Optional=DefaultIsUndefined] boolean bubbles, 
                                         in [Optional=DefaultIsUndefined] boolean cancelable, 
diff --git a/Source/WebCore/dom/DeviceOrientationEvent.idl b/Source/WebCore/dom/DeviceOrientationEvent.idl
index fc9775f..e826503 100644
--- a/Source/WebCore/dom/DeviceOrientationEvent.idl
+++ b/Source/WebCore/dom/DeviceOrientationEvent.idl
@@ -23,13 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=DEVICE_ORIENTATION,
-] DeviceOrientationEvent : Event {
-    readonly attribute [Custom] double alpha;
-    readonly attribute [Custom] double beta;
-    readonly attribute [Custom] double gamma;
-    readonly attribute [Custom] boolean absolute;
+] interface DeviceOrientationEvent : Event {
+    [Custom] readonly attribute double alpha;
+    [Custom] readonly attribute double beta;
+    [Custom] readonly attribute double gamma;
+    [Custom] readonly attribute boolean absolute;
     [Custom] void initDeviceOrientationEvent(in [Optional=DefaultIsUndefined] DOMString type, 
                                              in [Optional=DefaultIsUndefined] boolean bubbles, 
                                              in [Optional=DefaultIsUndefined] boolean cancelable, 
diff --git a/Source/WebCore/dom/Document.idl b/Source/WebCore/dom/Document.idl
index 32d28ce..b827ed7 100644
--- a/Source/WebCore/dom/Document.idl
+++ b/Source/WebCore/dom/Document.idl
@@ -18,11 +18,11 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     CustomToJSObject,
     JSGenerateToNativeObject,
     JSInlineGetOwnPropertySlot
-] Document : Node {
+] interface Document : Node {
 
     // DOM Level 1 Core
     readonly attribute DocumentType doctype;
@@ -62,10 +62,10 @@
 
     // DOM Level 3 Core
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString inputEncoding;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString inputEncoding;
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString xmlEncoding;
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString xmlVersion
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString xmlEncoding;
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString xmlVersion
                 setter raises (DOMException);
              attribute boolean xmlStandalone
                 setter raises (DOMException);
@@ -78,9 +78,9 @@
     // (see http://www.w3.org/TR/2011/WD-dom-20110915/#document). We need to keep
     // the writable version around for Objective C clients, but are moving to
     // read-only for other clients.
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString documentURI;
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString documentURI;
 #else
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString documentURI;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString documentURI;
 #endif
 
     // DOM Level 2 Events (DocumentEvents interface)
@@ -151,17 +151,17 @@
 
     // Moved down from HTMLDocument
 
-             attribute [TreatNullAs=NullString] DOMString title;
+             [TreatNullAs=NullString] attribute DOMString title;
     readonly attribute DOMString referrer;
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
-             attribute [TreatNullAs=NullString] DOMString domain
+             [TreatNullAs=NullString] attribute DOMString domain
                  setter raises (DOMException);
 #else
     readonly attribute DOMString domain;
 #endif
     readonly attribute DOMString URL;
 
-             attribute [TreatNullAs=NullString] DOMString cookie
+             [TreatNullAs=NullString] attribute DOMString cookie
                  setter raises (DOMException),
                  getter raises (DOMException);
 
@@ -183,14 +183,14 @@
 #endif
 
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
-             attribute [Custom] Location location;
+             [Custom] attribute Location location;
 #endif
 
     // IE extensions
 
-             attribute [TreatReturnedNullStringAs=Undefined, TreatNullAs=NullString] DOMString charset;
-    readonly attribute [TreatReturnedNullStringAs=Undefined] DOMString defaultCharset;
-    readonly attribute [TreatReturnedNullStringAs=Undefined] DOMString readyState;
+             [TreatReturnedNullStringAs=Undefined, TreatNullAs=NullString] attribute DOMString charset;
+    [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString defaultCharset;
+    [TreatReturnedNullStringAs=Undefined] readonly attribute DOMString readyState;
 
     Element            elementFromPoint(in [Optional=DefaultIsUndefined] long x, 
                                         in [Optional=DefaultIsUndefined] long y);
@@ -201,19 +201,19 @@
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
     DOMSelection       getSelection();
 #endif
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString characterSet;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString characterSet;
 
     // WebKit extensions
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString preferredStylesheetSet;
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString selectedStylesheetSet;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString preferredStylesheetSet;
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString selectedStylesheetSet;
 
 #if !defined(LANGUAGE_JAVASCRIPT) || !LANGUAGE_JAVASCRIPT
     CSSStyleDeclaration createCSSStyleDeclaration();
 #endif
 
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
-    readonly attribute [Conditional=UNDO_MANAGER] UndoManager undoManager;
+    [Conditional=UNDO_MANAGER] readonly attribute UndoManager undoManager;
 #endif
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
@@ -250,55 +250,55 @@
 
 #if defined(ENABLE_FULLSCREEN_API) && ENABLE_FULLSCREEN_API
     // Mozilla version
-    readonly attribute [V8EnabledAtRuntime] boolean webkitIsFullScreen;
-    readonly attribute [V8EnabledAtRuntime] boolean webkitFullScreenKeyboardInputAllowed;
-    readonly attribute [V8EnabledAtRuntime] Element webkitCurrentFullScreenElement;
+    [V8EnabledAtRuntime] readonly attribute boolean webkitIsFullScreen;
+    [V8EnabledAtRuntime] readonly attribute boolean webkitFullScreenKeyboardInputAllowed;
+    [V8EnabledAtRuntime] readonly attribute Element webkitCurrentFullScreenElement;
     [V8EnabledAtRuntime] void webkitCancelFullScreen();
 
     // W3C version
-    readonly attribute [V8EnabledAtRuntime] boolean webkitFullscreenEnabled;
-    readonly attribute [V8EnabledAtRuntime] Element webkitFullscreenElement;
+    [V8EnabledAtRuntime] readonly attribute boolean webkitFullscreenEnabled;
+    [V8EnabledAtRuntime] readonly attribute Element webkitFullscreenElement;
     [V8EnabledAtRuntime] void webkitExitFullscreen();
 #endif
 
     [Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] void webkitExitPointerLock();
-    readonly attribute [Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] Element webkitPointerLockElement;
+    [Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] readonly attribute Element webkitPointerLockElement;
 
     [Conditional=CSS_REGIONS] DOMNamedFlowCollection webkitGetNamedFlows();
 
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C
     // Event handler DOM attributes
-    attribute [NotEnumerable] EventListener onabort;
-    attribute [NotEnumerable] EventListener onblur;
-    attribute [NotEnumerable] EventListener onchange;
-    attribute [NotEnumerable] EventListener onclick;
-    attribute [NotEnumerable] EventListener oncontextmenu;
-    attribute [NotEnumerable] EventListener ondblclick;
-    attribute [NotEnumerable] EventListener ondrag;
-    attribute [NotEnumerable] EventListener ondragend;
-    attribute [NotEnumerable] EventListener ondragenter;
-    attribute [NotEnumerable] EventListener ondragleave;
-    attribute [NotEnumerable] EventListener ondragover;
-    attribute [NotEnumerable] EventListener ondragstart;
-    attribute [NotEnumerable] EventListener ondrop;
-    attribute [NotEnumerable] EventListener onerror;
-    attribute [NotEnumerable] EventListener onfocus;
-    attribute [NotEnumerable] EventListener oninput;
-    attribute [NotEnumerable] EventListener oninvalid;
-    attribute [NotEnumerable] EventListener onkeydown;
-    attribute [NotEnumerable] EventListener onkeypress;
-    attribute [NotEnumerable] EventListener onkeyup;
-    attribute [NotEnumerable] EventListener onload;
-    attribute [NotEnumerable] EventListener onmousedown;
-    attribute [NotEnumerable] EventListener onmousemove;
-    attribute [NotEnumerable] EventListener onmouseout;
-    attribute [NotEnumerable] EventListener onmouseover;
-    attribute [NotEnumerable] EventListener onmouseup;
-    attribute [NotEnumerable] EventListener onmousewheel;
-    attribute [NotEnumerable] EventListener onreadystatechange;
-    attribute [NotEnumerable] EventListener onscroll;
-    attribute [NotEnumerable] EventListener onselect;
-    attribute [NotEnumerable] EventListener onsubmit;
+    [NotEnumerable] attribute EventListener onabort;
+    [NotEnumerable] attribute EventListener onblur;
+    [NotEnumerable] attribute EventListener onchange;
+    [NotEnumerable] attribute EventListener onclick;
+    [NotEnumerable] attribute EventListener oncontextmenu;
+    [NotEnumerable] attribute EventListener ondblclick;
+    [NotEnumerable] attribute EventListener ondrag;
+    [NotEnumerable] attribute EventListener ondragend;
+    [NotEnumerable] attribute EventListener ondragenter;
+    [NotEnumerable] attribute EventListener ondragleave;
+    [NotEnumerable] attribute EventListener ondragover;
+    [NotEnumerable] attribute EventListener ondragstart;
+    [NotEnumerable] attribute EventListener ondrop;
+    [NotEnumerable] attribute EventListener onerror;
+    [NotEnumerable] attribute EventListener onfocus;
+    [NotEnumerable] attribute EventListener oninput;
+    [NotEnumerable] attribute EventListener oninvalid;
+    [NotEnumerable] attribute EventListener onkeydown;
+    [NotEnumerable] attribute EventListener onkeypress;
+    [NotEnumerable] attribute EventListener onkeyup;
+    [NotEnumerable] attribute EventListener onload;
+    [NotEnumerable] attribute EventListener onmousedown;
+    [NotEnumerable] attribute EventListener onmousemove;
+    [NotEnumerable] attribute EventListener onmouseout;
+    [NotEnumerable] attribute EventListener onmouseover;
+    [NotEnumerable] attribute EventListener onmouseup;
+    [NotEnumerable] attribute EventListener onmousewheel;
+    [NotEnumerable] attribute EventListener onreadystatechange;
+    [NotEnumerable] attribute EventListener onscroll;
+    [NotEnumerable] attribute EventListener onselect;
+    [NotEnumerable] attribute EventListener onsubmit;
 
     // attribute [NotEnumerable] EventListener oncanplay;
     // attribute [NotEnumerable] EventListener oncanplaythrough;
@@ -323,24 +323,24 @@
     // attribute [NotEnumerable] EventListener onwaiting;
 
     // WebKit extensions
-    attribute [NotEnumerable] EventListener onbeforecut;
-    attribute [NotEnumerable] EventListener oncut;
-    attribute [NotEnumerable] EventListener onbeforecopy;
-    attribute [NotEnumerable] EventListener oncopy;
-    attribute [NotEnumerable] EventListener onbeforepaste;
-    attribute [NotEnumerable] EventListener onpaste;
-    attribute [NotEnumerable] EventListener onreset;
-    attribute [NotEnumerable] EventListener onsearch;
-    attribute [NotEnumerable] EventListener onselectstart;
-    attribute [NotEnumerable] EventListener onselectionchange;
-    attribute [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchstart;
-    attribute [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchmove;
-    attribute [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchend;
-    attribute [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchcancel;
-    attribute [NotEnumerable, Conditional=FULLSCREEN_API] EventListener onwebkitfullscreenchange;
-    attribute [NotEnumerable, Conditional=FULLSCREEN_API] EventListener onwebkitfullscreenerror;
-    attribute [NotEnumerable, Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] EventListener onwebkitpointerlockchange;
-    attribute [NotEnumerable, Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] EventListener onwebkitpointerlockerror;
+    [NotEnumerable] attribute EventListener onbeforecut;
+    [NotEnumerable] attribute EventListener oncut;
+    [NotEnumerable] attribute EventListener onbeforecopy;
+    [NotEnumerable] attribute EventListener oncopy;
+    [NotEnumerable] attribute EventListener onbeforepaste;
+    [NotEnumerable] attribute EventListener onpaste;
+    [NotEnumerable] attribute EventListener onreset;
+    [NotEnumerable] attribute EventListener onsearch;
+    [NotEnumerable] attribute EventListener onselectstart;
+    [NotEnumerable] attribute EventListener onselectionchange;
+    [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] attribute EventListener ontouchstart;
+    [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] attribute EventListener ontouchmove;
+    [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] attribute EventListener ontouchend;
+    [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] attribute EventListener ontouchcancel;
+    [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventListener onwebkitfullscreenchange;
+    [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventListener onwebkitfullscreenerror;
+    [NotEnumerable, Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] attribute EventListener onwebkitpointerlockchange;
+    [NotEnumerable, Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] attribute EventListener onwebkitpointerlockerror;
 #endif
 
 #if defined(ENABLE_TOUCH_EVENTS) && ENABLE_TOUCH_EVENTS
@@ -366,11 +366,11 @@
 #endif
 
     // Page visibility API.
-    readonly attribute [Conditional=PAGE_VISIBILITY_API] DOMString webkitVisibilityState;
-    readonly attribute [Conditional=PAGE_VISIBILITY_API] boolean webkitHidden;
+    [Conditional=PAGE_VISIBILITY_API] readonly attribute DOMString webkitVisibilityState;
+    [Conditional=PAGE_VISIBILITY_API] readonly attribute boolean webkitHidden;
 
     // Security Policy API: http://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#script-interfaces
-    readonly attribute [Conditional=CSP_NEXT] DOMSecurityPolicy SecurityPolicy;
+    [Conditional=CSP_NEXT] readonly attribute DOMSecurityPolicy SecurityPolicy;
 
 };
 
diff --git a/Source/WebCore/dom/DocumentType.idl b/Source/WebCore/dom/DocumentType.idl
index 474c3d1..0dbcdb8 100644
--- a/Source/WebCore/dom/DocumentType.idl
+++ b/Source/WebCore/dom/DocumentType.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject
-] DocumentType : Node {
+] interface DocumentType : Node {
 
     // DOM Level 1
 
@@ -29,9 +29,9 @@
 
     // DOM Level 2
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString publicId;
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString systemId;
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString internalSubset;        
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString publicId;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString systemId;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString internalSubset;        
 
     // DOM 4
     void remove()
diff --git a/Source/WebCore/dom/Element.idl b/Source/WebCore/dom/Element.idl
index dd9a51b..7a9241d 100644
--- a/Source/WebCore/dom/Element.idl
+++ b/Source/WebCore/dom/Element.idl
@@ -18,14 +18,14 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject,
     JSInlineGetOwnPropertySlot
-] Element : Node {
+] interface Element : Node {
 
     // DOM Level 1 Core
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString tagName;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString tagName;
 
     [TreatReturnedNullStringAs=Null] DOMString getAttribute(in [Optional=DefaultIsUndefined] DOMString name);
     [ObjCLegacyUnnamedParameters] void setAttribute(in [Optional=DefaultIsUndefined] DOMString name,
@@ -94,7 +94,7 @@
     // HTML 5
     NodeList getElementsByClassName(in [Optional=DefaultIsUndefined] DOMString name);
 
-    attribute [Reflect=class] DOMString className;
+    [Reflect=class] attribute DOMString className;
     readonly attribute DOMTokenList classList;
 
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
@@ -145,41 +145,41 @@
     [Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] void webkitRequestPointerLock();
 
     // CSS Regions API
-    readonly attribute [Conditional=CSS_REGIONS] DOMString webkitRegionOverset;
+    [Conditional=CSS_REGIONS] readonly attribute DOMString webkitRegionOverset;
     [Conditional=CSS_REGIONS] sequence<Range> webkitGetRegionFlowRanges();
 
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C
     // Event handler DOM attributes
-    attribute [NotEnumerable] EventListener onabort;
-    attribute [NotEnumerable] EventListener onblur;
-    attribute [NotEnumerable] EventListener onchange;
-    attribute [NotEnumerable] EventListener onclick;
-    attribute [NotEnumerable] EventListener oncontextmenu;
-    attribute [NotEnumerable] EventListener ondblclick;
-    attribute [NotEnumerable] EventListener ondrag;
-    attribute [NotEnumerable] EventListener ondragend;
-    attribute [NotEnumerable] EventListener ondragenter;
-    attribute [NotEnumerable] EventListener ondragleave;
-    attribute [NotEnumerable] EventListener ondragover;
-    attribute [NotEnumerable] EventListener ondragstart;
-    attribute [NotEnumerable] EventListener ondrop;
-    attribute [NotEnumerable] EventListener onerror;
-    attribute [NotEnumerable] EventListener onfocus;
-    attribute [NotEnumerable] EventListener oninput;
-    attribute [NotEnumerable] EventListener oninvalid;
-    attribute [NotEnumerable] EventListener onkeydown;
-    attribute [NotEnumerable] EventListener onkeypress;
-    attribute [NotEnumerable] EventListener onkeyup;
-    attribute [NotEnumerable] EventListener onload;
-    attribute [NotEnumerable] EventListener onmousedown;
-    attribute [NotEnumerable] EventListener onmousemove;
-    attribute [NotEnumerable] EventListener onmouseout;
-    attribute [NotEnumerable] EventListener onmouseover;
-    attribute [NotEnumerable] EventListener onmouseup;
-    attribute [NotEnumerable] EventListener onmousewheel;
-    attribute [NotEnumerable] EventListener onscroll;
-    attribute [NotEnumerable] EventListener onselect;
-    attribute [NotEnumerable] EventListener onsubmit;
+    [NotEnumerable] attribute EventListener onabort;
+    [NotEnumerable] attribute EventListener onblur;
+    [NotEnumerable] attribute EventListener onchange;
+    [NotEnumerable] attribute EventListener onclick;
+    [NotEnumerable] attribute EventListener oncontextmenu;
+    [NotEnumerable] attribute EventListener ondblclick;
+    [NotEnumerable] attribute EventListener ondrag;
+    [NotEnumerable] attribute EventListener ondragend;
+    [NotEnumerable] attribute EventListener ondragenter;
+    [NotEnumerable] attribute EventListener ondragleave;
+    [NotEnumerable] attribute EventListener ondragover;
+    [NotEnumerable] attribute EventListener ondragstart;
+    [NotEnumerable] attribute EventListener ondrop;
+    [NotEnumerable] attribute EventListener onerror;
+    [NotEnumerable] attribute EventListener onfocus;
+    [NotEnumerable] attribute EventListener oninput;
+    [NotEnumerable] attribute EventListener oninvalid;
+    [NotEnumerable] attribute EventListener onkeydown;
+    [NotEnumerable] attribute EventListener onkeypress;
+    [NotEnumerable] attribute EventListener onkeyup;
+    [NotEnumerable] attribute EventListener onload;
+    [NotEnumerable] attribute EventListener onmousedown;
+    [NotEnumerable] attribute EventListener onmousemove;
+    [NotEnumerable] attribute EventListener onmouseout;
+    [NotEnumerable] attribute EventListener onmouseover;
+    [NotEnumerable] attribute EventListener onmouseup;
+    [NotEnumerable] attribute EventListener onmousewheel;
+    [NotEnumerable] attribute EventListener onscroll;
+    [NotEnumerable] attribute EventListener onselect;
+    [NotEnumerable] attribute EventListener onsubmit;
 
     // attribute [NotEnumerable] EventListener oncanplay;
     // attribute [NotEnumerable] EventListener oncanplaythrough;
@@ -205,21 +205,21 @@
     // attribute [NotEnumerable] EventListener onwaiting;
 
     // WebKit extensions
-    attribute [NotEnumerable] EventListener onbeforecut;
-    attribute [NotEnumerable] EventListener oncut;
-    attribute [NotEnumerable] EventListener onbeforecopy;
-    attribute [NotEnumerable] EventListener oncopy;
-    attribute [NotEnumerable] EventListener onbeforepaste;
-    attribute [NotEnumerable] EventListener onpaste;
-    attribute [NotEnumerable] EventListener onreset;
-    attribute [NotEnumerable] EventListener onsearch;
-    attribute [NotEnumerable] EventListener onselectstart;
-    attribute [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchstart;
-    attribute [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchmove;
-    attribute [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchend;
-    attribute [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] EventListener ontouchcancel;
-    attribute [NotEnumerable, Conditional=FULLSCREEN_API] EventListener onwebkitfullscreenchange;
-    attribute [NotEnumerable, Conditional=FULLSCREEN_API] EventListener onwebkitfullscreenerror;
+    [NotEnumerable] attribute EventListener onbeforecut;
+    [NotEnumerable] attribute EventListener oncut;
+    [NotEnumerable] attribute EventListener onbeforecopy;
+    [NotEnumerable] attribute EventListener oncopy;
+    [NotEnumerable] attribute EventListener onbeforepaste;
+    [NotEnumerable] attribute EventListener onpaste;
+    [NotEnumerable] attribute EventListener onreset;
+    [NotEnumerable] attribute EventListener onsearch;
+    [NotEnumerable] attribute EventListener onselectstart;
+    [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] attribute EventListener ontouchstart;
+    [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] attribute EventListener ontouchmove;
+    [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] attribute EventListener ontouchend;
+    [NotEnumerable,Conditional=TOUCH_EVENTS,V8EnabledAtRuntime] attribute EventListener ontouchcancel;
+    [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventListener onwebkitfullscreenchange;
+    [NotEnumerable, Conditional=FULLSCREEN_API] attribute EventListener onwebkitfullscreenerror;
 #endif
 };
 
diff --git a/Source/WebCore/dom/Entity.idl b/Source/WebCore/dom/Entity.idl
index 083eb28..f6c2247 100644
--- a/Source/WebCore/dom/Entity.idl
+++ b/Source/WebCore/dom/Entity.idl
@@ -18,8 +18,8 @@
  */
 
 interface Entity : Node {
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString publicId;
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString systemId;
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString notationName;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString publicId;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString systemId;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString notationName;
 };
 
diff --git a/Source/WebCore/dom/ErrorEvent.idl b/Source/WebCore/dom/ErrorEvent.idl
index 9c80460..433e8d9 100644
--- a/Source/WebCore/dom/ErrorEvent.idl
+++ b/Source/WebCore/dom/ErrorEvent.idl
@@ -28,12 +28,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     JSNoStaticTables,
     ConstructorTemplate=Event
-] ErrorEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMString message;
-    readonly attribute [InitializedByEventConstructor] DOMString filename;
-    readonly attribute [InitializedByEventConstructor] unsigned long lineno;
+] interface ErrorEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMString message;
+    [InitializedByEventConstructor] readonly attribute DOMString filename;
+    [InitializedByEventConstructor] readonly attribute unsigned long lineno;
 };
 
diff --git a/Source/WebCore/dom/Event.idl b/Source/WebCore/dom/Event.idl
index 58a8fbe..a9af0468 100644
--- a/Source/WebCore/dom/Event.idl
+++ b/Source/WebCore/dom/Event.idl
@@ -19,12 +19,12 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     CustomToJSObject,
     ConstructorTemplate=Event,
     JSNoStaticTables,
     ObjCPolymorphic
-] Event {
+] interface Event {
 
     // DOM PhaseType
     const unsigned short NONE                = 0;
@@ -56,8 +56,8 @@
     readonly attribute EventTarget      target;
     readonly attribute EventTarget      currentTarget;
     readonly attribute unsigned short   eventPhase;
-    readonly attribute [InitializedByEventConstructor] boolean bubbles;
-    readonly attribute [InitializedByEventConstructor] boolean cancelable;
+    [InitializedByEventConstructor] readonly attribute boolean bubbles;
+    [InitializedByEventConstructor] readonly attribute boolean cancelable;
     readonly attribute DOMTimeStamp     timeStamp;
 
     void               stopPropagation();
@@ -76,7 +76,7 @@
              attribute boolean          cancelBubble;
 
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
-    readonly attribute [Custom] Clipboard        clipboardData;
+    [Custom] readonly attribute Clipboard        clipboardData;
 #endif
 
 #if defined(LANGUAGE_CPP) && LANGUAGE_CPP
diff --git a/Source/WebCore/dom/EventException.idl b/Source/WebCore/dom/EventException.idl
index 45a522f..d9438a1 100644
--- a/Source/WebCore/dom/EventException.idl
+++ b/Source/WebCore/dom/EventException.idl
@@ -27,10 +27,10 @@
  */
 
 // Introduced in DOM Level 2:
-exception [
+[
     JSNoStaticTables,
     DoNotCheckConstants
-] EventException {
+] exception EventException {
 
     readonly attribute unsigned short   code;
     readonly attribute DOMString        name;
diff --git a/Source/WebCore/dom/EventListener.idl b/Source/WebCore/dom/EventListener.idl
index c047ce1..3786408 100644
--- a/Source/WebCore/dom/EventListener.idl
+++ b/Source/WebCore/dom/EventListener.idl
@@ -19,12 +19,12 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSNoStaticTables,
     ObjCProtocol,
     CPPPureInterface,
     OmitConstructor
-] EventListener {
+] interface EventListener {
     void               handleEvent(in Event evt);
 };
 
diff --git a/Source/WebCore/dom/EventTarget.idl b/Source/WebCore/dom/EventTarget.idl
index 38959aa..01cd6eb 100644
--- a/Source/WebCore/dom/EventTarget.idl
+++ b/Source/WebCore/dom/EventTarget.idl
@@ -19,13 +19,13 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     ObjCProtocol,
     CPPPureInterface,
     OmitConstructor,
     JSCustomToJSObject,
     JSCustomToNativeObject
-] EventTarget {
+] interface EventTarget {
     [ObjCLegacyUnnamedParameters] void addEventListener(in DOMString type, 
                                          in EventListener listener, 
                                          in [Optional] boolean useCapture);
diff --git a/Source/WebCore/dom/HashChangeEvent.idl b/Source/WebCore/dom/HashChangeEvent.idl
index 2c73a02..da8f71b 100644
--- a/Source/WebCore/dom/HashChangeEvent.idl
+++ b/Source/WebCore/dom/HashChangeEvent.idl
@@ -18,15 +18,15 @@
  */
 
 // Introduced in http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#event-hashchange
-interface [
+[
     ConstructorTemplate=Event
-] HashChangeEvent : Event {
+] interface HashChangeEvent : Event {
     void initHashChangeEvent(in [Optional=DefaultIsUndefined] DOMString type, 
                              in [Optional=DefaultIsUndefined] boolean canBubble, 
                              in [Optional=DefaultIsUndefined] boolean cancelable, 
                              in [Optional=DefaultIsUndefined] DOMString oldURL, 
                              in [Optional=DefaultIsUndefined] DOMString newURL); 
-    readonly attribute [InitializedByEventConstructor] DOMString oldURL;
-    readonly attribute [InitializedByEventConstructor] DOMString newURL;
+    [InitializedByEventConstructor] readonly attribute DOMString oldURL;
+    [InitializedByEventConstructor] readonly attribute DOMString newURL;
 };
 
diff --git a/Source/WebCore/dom/MessageChannel.idl b/Source/WebCore/dom/MessageChannel.idl
index 19677a4..00649f7 100644
--- a/Source/WebCore/dom/MessageChannel.idl
+++ b/Source/WebCore/dom/MessageChannel.idl
@@ -24,13 +24,13 @@
  *
  */
 
-interface [
+[
     Constructor,
     CallWith=ScriptExecutionContext,
     V8CustomConstructor,
     JSCustomMarkFunction,
     JSNoStaticTables
-] MessageChannel {
+] interface MessageChannel {
 
     readonly attribute MessagePort port1;
     readonly attribute MessagePort port2;
diff --git a/Source/WebCore/dom/MessageEvent.idl b/Source/WebCore/dom/MessageEvent.idl
index aebb489..805997c 100644
--- a/Source/WebCore/dom/MessageEvent.idl
+++ b/Source/WebCore/dom/MessageEvent.idl
@@ -25,16 +25,16 @@
  *
  */
 
-interface [
+[
     JSNoStaticTables,
     ConstructorTemplate=Event
-] MessageEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMString origin;
-    readonly attribute [InitializedByEventConstructor] DOMString lastEventId;
-    readonly attribute [InitializedByEventConstructor] DOMWindow source;
+] interface MessageEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMString origin;
+    [InitializedByEventConstructor] readonly attribute DOMString lastEventId;
+    [InitializedByEventConstructor] readonly attribute DOMWindow source;
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
-    readonly attribute [InitializedByEventConstructor, CachedAttribute, CustomGetter] DOMObject data;
-    readonly attribute [InitializedByEventConstructor, CustomGetter] Array ports;
+    [InitializedByEventConstructor, CachedAttribute, CustomGetter] readonly attribute DOMObject data;
+    [InitializedByEventConstructor, CustomGetter] readonly attribute Array ports;
 
     [Custom] void initMessageEvent(in [Optional=DefaultIsUndefined] DOMString typeArg, 
                                    in [Optional=DefaultIsUndefined] boolean canBubbleArg, 
diff --git a/Source/WebCore/dom/MessagePort.idl b/Source/WebCore/dom/MessagePort.idl
index 4d44ea9..ebb0dd6 100644
--- a/Source/WebCore/dom/MessagePort.idl
+++ b/Source/WebCore/dom/MessagePort.idl
@@ -25,13 +25,13 @@
  *
  */
 
-interface [
+[
     JSCustomMarkFunction,
     JSGenerateIsReachable=Impl,
     ActiveDOMObject,
     EventTarget,
     JSNoStaticTables
-] MessagePort {
+] interface MessagePort {
 // We need to have something as an ObjC binding, because MessagePort is used in MessageEvent, which already has one,
 // but we don't want to actually expose the API while it is in flux.
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
diff --git a/Source/WebCore/dom/MouseEvent.idl b/Source/WebCore/dom/MouseEvent.idl
index c540c28..f7dcb41 100644
--- a/Source/WebCore/dom/MouseEvent.idl
+++ b/Source/WebCore/dom/MouseEvent.idl
@@ -23,8 +23,8 @@
     readonly attribute long             screenY;
     readonly attribute long             clientX;
     readonly attribute long             clientY;
-    readonly attribute [Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] long webkitMovementX;
-    readonly attribute [Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] long webkitMovementY;
+    [Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] readonly attribute long webkitMovementX;
+    [Conditional=POINTER_LOCK, V8EnabledAtRuntime=pointerLock] readonly attribute long webkitMovementY;
     readonly attribute boolean          ctrlKey;
     readonly attribute boolean          shiftKey;
     readonly attribute boolean          altKey;
diff --git a/Source/WebCore/dom/MutationCallback.idl b/Source/WebCore/dom/MutationCallback.idl
index 9e1c6d2..9c76e18 100644
--- a/Source/WebCore/dom/MutationCallback.idl
+++ b/Source/WebCore/dom/MutationCallback.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MUTATION_OBSERVERS,
     Callback
-] MutationCallback {
+] interface MutationCallback {
     [Custom] boolean handleEvent(in MutationRecordArray mutations, in MutationObserver observer);
 };
diff --git a/Source/WebCore/dom/MutationObserver.idl b/Source/WebCore/dom/MutationObserver.idl
index 5cb7322..1174f29 100644
--- a/Source/WebCore/dom/MutationObserver.idl
+++ b/Source/WebCore/dom/MutationObserver.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MUTATION_OBSERVERS,
     CustomConstructor,
     ConstructorParameters=1
-] MutationObserver {
+] interface MutationObserver {
     void observe(in Node target, in Dictionary options)
         raises(DOMException);
     sequence<MutationRecord> takeRecords();
diff --git a/Source/WebCore/dom/MutationRecord.idl b/Source/WebCore/dom/MutationRecord.idl
index 8c59868..c19618d 100644
--- a/Source/WebCore/dom/MutationRecord.idl
+++ b/Source/WebCore/dom/MutationRecord.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MUTATION_OBSERVERS
-] MutationRecord {
+] interface MutationRecord {
     readonly attribute DOMString type;
     readonly attribute Node target;
 
@@ -39,8 +39,8 @@
     readonly attribute Node previousSibling;
     readonly attribute Node nextSibling;
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString attributeName;
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString attributeNamespace;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString attributeName;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString attributeNamespace;
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString oldValue;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString oldValue;
 };
diff --git a/Source/WebCore/dom/NamedNodeMap.idl b/Source/WebCore/dom/NamedNodeMap.idl
index 29ea50c..e1791da 100644
--- a/Source/WebCore/dom/NamedNodeMap.idl
+++ b/Source/WebCore/dom/NamedNodeMap.idl
@@ -18,12 +18,12 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     GenerateIsReachable=ImplElementRoot,
     IndexedGetter,
     JSCustomMarkFunction,
     NamedGetter
-] NamedNodeMap {
+] interface NamedNodeMap {
 
     Node getNamedItem(in [Optional=DefaultIsUndefined] DOMString name);
 
diff --git a/Source/WebCore/dom/Node.idl b/Source/WebCore/dom/Node.idl
index 8bb70d6..7753ad5a 100644
--- a/Source/WebCore/dom/Node.idl
+++ b/Source/WebCore/dom/Node.idl
@@ -18,7 +18,7 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSCustomHeader,
     JSCustomMarkFunction,
     JSCustomPushEventHandlerScope,
@@ -30,7 +30,7 @@
     JSInlineGetOwnPropertySlot,
     ObjCPolymorphic,
     V8DependentLifetime
-] Node
+] interface Node
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
     : Object, EventTarget
 #endif /* defined(LANGUAGE_OBJECTIVE_C) */
diff --git a/Source/WebCore/dom/NodeFilter.idl b/Source/WebCore/dom/NodeFilter.idl
index 506cb05..abd5ce4 100644
--- a/Source/WebCore/dom/NodeFilter.idl
+++ b/Source/WebCore/dom/NodeFilter.idl
@@ -19,12 +19,12 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSCustomMarkFunction,
     JSCustomToNativeObject,
     ObjCProtocol,
     CPPPureInterface
-] NodeFilter {
+] interface NodeFilter {
     // Constants returned by acceptNode
     const short               FILTER_ACCEPT                  = 1;
     const short               FILTER_REJECT                  = 2;
diff --git a/Source/WebCore/dom/NodeIterator.idl b/Source/WebCore/dom/NodeIterator.idl
index 57c9c80..b360d05 100644
--- a/Source/WebCore/dom/NodeIterator.idl
+++ b/Source/WebCore/dom/NodeIterator.idl
@@ -19,9 +19,9 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSCustomMarkFunction
-] NodeIterator {
+] interface NodeIterator {
     readonly attribute Node root;
     readonly attribute unsigned long whatToShow;
     readonly attribute NodeFilter filter;
diff --git a/Source/WebCore/dom/NodeList.idl b/Source/WebCore/dom/NodeList.idl
index f49626c..b69ed4d 100644
--- a/Source/WebCore/dom/NodeList.idl
+++ b/Source/WebCore/dom/NodeList.idl
@@ -18,12 +18,12 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     CustomIsReachable,
     IndexedGetter,
     NamedGetter,
     V8DependentLifetime
-] NodeList {
+] interface NodeList {
 
     Node item(in [IsIndex,Optional=DefaultIsUndefined] unsigned long index);
 
diff --git a/Source/WebCore/dom/Notation.idl b/Source/WebCore/dom/Notation.idl
index 6ade439..4ac628f0 100644
--- a/Source/WebCore/dom/Notation.idl
+++ b/Source/WebCore/dom/Notation.idl
@@ -18,7 +18,7 @@
  */
 
 interface Notation : Node {
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString publicId;
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString systemId;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString publicId;
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString systemId;
 };
 
diff --git a/Source/WebCore/dom/OverflowEvent.idl b/Source/WebCore/dom/OverflowEvent.idl
index 81a97b3..cc52f3d 100644
--- a/Source/WebCore/dom/OverflowEvent.idl
+++ b/Source/WebCore/dom/OverflowEvent.idl
@@ -23,16 +23,16 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=Event
-] OverflowEvent : Event {
+] interface OverflowEvent : Event {
     const unsigned short HORIZONTAL = 0;
     const unsigned short VERTICAL   = 1;
     const unsigned short BOTH       = 2;
     
-    readonly attribute [InitializedByEventConstructor] unsigned short orient;
-    readonly attribute [InitializedByEventConstructor] boolean horizontalOverflow;
-    readonly attribute [InitializedByEventConstructor] boolean verticalOverflow;
+    [InitializedByEventConstructor] readonly attribute unsigned short orient;
+    [InitializedByEventConstructor] readonly attribute boolean horizontalOverflow;
+    [InitializedByEventConstructor] readonly attribute boolean verticalOverflow;
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
     void initOverflowEvent(in [Optional=DefaultIsUndefined] unsigned short orient,
diff --git a/Source/WebCore/dom/PageTransitionEvent.idl b/Source/WebCore/dom/PageTransitionEvent.idl
index 2eda8c0..c8cea7f 100644
--- a/Source/WebCore/dom/PageTransitionEvent.idl
+++ b/Source/WebCore/dom/PageTransitionEvent.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=Event
-] PageTransitionEvent : Event {
-    readonly attribute [InitializedByEventConstructor] boolean persisted;
+] interface PageTransitionEvent : Event {
+    [InitializedByEventConstructor] readonly attribute boolean persisted;
 };
 
diff --git a/Source/WebCore/dom/PopStateEvent.idl b/Source/WebCore/dom/PopStateEvent.idl
index fe2dcae..09dc786 100644
--- a/Source/WebCore/dom/PopStateEvent.idl
+++ b/Source/WebCore/dom/PopStateEvent.idl
@@ -25,10 +25,10 @@
  */
 
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
-interface [
+[
     ConstructorTemplate=Event
-] PopStateEvent : Event {
-    readonly attribute [InitializedByEventConstructor, CachedAttribute, CustomGetter] DOMObject state;
+] interface PopStateEvent : Event {
+    [InitializedByEventConstructor, CachedAttribute, CustomGetter] readonly attribute DOMObject state;
 };
 #endif
 
diff --git a/Source/WebCore/dom/ProcessingInstruction.idl b/Source/WebCore/dom/ProcessingInstruction.idl
index 48ffed3..55599de 100644
--- a/Source/WebCore/dom/ProcessingInstruction.idl
+++ b/Source/WebCore/dom/ProcessingInstruction.idl
@@ -22,8 +22,8 @@
 
     // DOM Level 1
 
-    readonly attribute [TreatReturnedNullStringAs=Null] DOMString target;
-             attribute [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] DOMString data
+    [TreatReturnedNullStringAs=Null] readonly attribute DOMString target;
+             [TreatReturnedNullStringAs=Null, TreatNullAs=NullString] attribute DOMString data
                  setter raises(DOMException);
 
     // interface LinkStyle from DOM Level 2 Style Sheets
diff --git a/Source/WebCore/dom/ProgressEvent.idl b/Source/WebCore/dom/ProgressEvent.idl
index 2dfec1a..ae25a95 100644
--- a/Source/WebCore/dom/ProgressEvent.idl
+++ b/Source/WebCore/dom/ProgressEvent.idl
@@ -23,12 +23,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=Event,
     JSNoStaticTables
-] ProgressEvent : Event {
-    readonly attribute [InitializedByEventConstructor] boolean lengthComputable;
-    readonly attribute [InitializedByEventConstructor] unsigned long long loaded;
-    readonly attribute [InitializedByEventConstructor] unsigned long long total;
+] interface ProgressEvent : Event {
+    [InitializedByEventConstructor] readonly attribute boolean lengthComputable;
+    [InitializedByEventConstructor] readonly attribute unsigned long long loaded;
+    [InitializedByEventConstructor] readonly attribute unsigned long long total;
 };
 
diff --git a/Source/WebCore/dom/PropertyNodeList.idl b/Source/WebCore/dom/PropertyNodeList.idl
index ecc253b..5b2b484 100644
--- a/Source/WebCore/dom/PropertyNodeList.idl
+++ b/Source/WebCore/dom/PropertyNodeList.idl
@@ -28,11 +28,11 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MICRODATA,
     IndexedGetter,
     JSGenerateToJSObject
-] PropertyNodeList : NodeList {
+] interface PropertyNodeList : NodeList {
 
     sequence<MicroDataItemValue> getValues();
     Node item(in unsigned long index);
diff --git a/Source/WebCore/dom/RangeException.idl b/Source/WebCore/dom/RangeException.idl
index 20e6317..df92b42 100644
--- a/Source/WebCore/dom/RangeException.idl
+++ b/Source/WebCore/dom/RangeException.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-exception [
+[
     DoNotCheckConstants
-] RangeException {
+] exception RangeException {
 
     readonly attribute unsigned short   code;
     readonly attribute DOMString        name;
diff --git a/Source/WebCore/dom/RequestAnimationFrameCallback.idl b/Source/WebCore/dom/RequestAnimationFrameCallback.idl
index 66087f5..b4347cf 100644
--- a/Source/WebCore/dom/RequestAnimationFrameCallback.idl
+++ b/Source/WebCore/dom/RequestAnimationFrameCallback.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Callback,
     Conditional=REQUEST_ANIMATION_FRAME,
-] RequestAnimationFrameCallback{
+] interface RequestAnimationFrameCallback{
     // highResTime is passed as high resolution timestamp, see
     // http://www.w3.org/TR/hr-time/ for details.
 #if defined(V8_BINDING) && V8_BINDING
diff --git a/Source/WebCore/dom/ShadowRoot.idl b/Source/WebCore/dom/ShadowRoot.idl
index 70384da..ff901e5 100644
--- a/Source/WebCore/dom/ShadowRoot.idl
+++ b/Source/WebCore/dom/ShadowRoot.idl
@@ -24,17 +24,17 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SHADOW_DOM,
     Constructor(in Element host),
     ConstructorRaisesException,
     JSGenerateToJSObject
-] ShadowRoot : DocumentFragment {
+] interface ShadowRoot : DocumentFragment {
     readonly attribute Element activeElement;
     attribute boolean applyAuthorStyles;
     attribute boolean resetStyleInheritance;
 
-    attribute [TreatNullAs=NullString] DOMString innerHTML
+    [TreatNullAs=NullString] attribute DOMString innerHTML
         setter raises(DOMException);
 
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
diff --git a/Source/WebCore/dom/StringCallback.idl b/Source/WebCore/dom/StringCallback.idl
index 57c6373..a26831b 100644
--- a/Source/WebCore/dom/StringCallback.idl
+++ b/Source/WebCore/dom/StringCallback.idl
@@ -28,8 +28,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Callback
-] StringCallback {
+] interface StringCallback {
     boolean handleEvent(in DOMString data);
 };
diff --git a/Source/WebCore/dom/Touch.idl b/Source/WebCore/dom/Touch.idl
index 8477464..3a50e07 100644
--- a/Source/WebCore/dom/Touch.idl
+++ b/Source/WebCore/dom/Touch.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=TOUCH_EVENTS
-] Touch {
+] interface Touch {
     readonly attribute long             clientX;
     readonly attribute long             clientY;
     readonly attribute long             screenX;
diff --git a/Source/WebCore/dom/TouchEvent.idl b/Source/WebCore/dom/TouchEvent.idl
index f9118fd..4712f9e 100644
--- a/Source/WebCore/dom/TouchEvent.idl
+++ b/Source/WebCore/dom/TouchEvent.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=TOUCH_EVENTS
-] TouchEvent : UIEvent {
+] interface TouchEvent : UIEvent {
     readonly attribute TouchList touches;
     readonly attribute TouchList targetTouches;
     readonly attribute TouchList changedTouches;
diff --git a/Source/WebCore/dom/TouchList.idl b/Source/WebCore/dom/TouchList.idl
index cdde109..f66c6cc 100644
--- a/Source/WebCore/dom/TouchList.idl
+++ b/Source/WebCore/dom/TouchList.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=TOUCH_EVENTS,
     IndexedGetter
-] TouchList {
+] interface TouchList {
     readonly attribute unsigned long length;
 
     Touch item(in unsigned long index);
diff --git a/Source/WebCore/dom/TreeWalker.idl b/Source/WebCore/dom/TreeWalker.idl
index bef5d90..52cf98f 100644
--- a/Source/WebCore/dom/TreeWalker.idl
+++ b/Source/WebCore/dom/TreeWalker.idl
@@ -19,9 +19,9 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     JSCustomMarkFunction
-] TreeWalker {
+] interface TreeWalker {
     readonly attribute Node root;
     readonly attribute unsigned long whatToShow;
     readonly attribute NodeFilter filter;
diff --git a/Source/WebCore/dom/WebKitAnimationEvent.idl b/Source/WebCore/dom/WebKitAnimationEvent.idl
index 60ce0fa..6f1844b 100644
--- a/Source/WebCore/dom/WebKitAnimationEvent.idl
+++ b/Source/WebCore/dom/WebKitAnimationEvent.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=Event
-] WebKitAnimationEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMString animationName;
-    readonly attribute [InitializedByEventConstructor] double elapsedTime;
+] interface WebKitAnimationEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMString animationName;
+    [InitializedByEventConstructor] readonly attribute double elapsedTime;
 };
 
diff --git a/Source/WebCore/dom/WebKitNamedFlow.idl b/Source/WebCore/dom/WebKitNamedFlow.idl
index 7bb812b..a46058e 100644
--- a/Source/WebCore/dom/WebKitNamedFlow.idl
+++ b/Source/WebCore/dom/WebKitNamedFlow.idl
@@ -27,11 +27,11 @@
  * SUCH DAMAGE.
  */
 
-interface [
+[
     EventTarget,
     JSGenerateToJSObject,
     GenerateIsReachable=ImplBaseRoot
-] WebKitNamedFlow {
+] interface WebKitNamedFlow {
     readonly attribute DOMString name;
     readonly attribute boolean overset;
     readonly attribute long firstEmptyRegionIndex;
diff --git a/Source/WebCore/dom/WebKitTransitionEvent.idl b/Source/WebCore/dom/WebKitTransitionEvent.idl
index b43bc6f..218ccab 100644
--- a/Source/WebCore/dom/WebKitTransitionEvent.idl
+++ b/Source/WebCore/dom/WebKitTransitionEvent.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=Event
-] WebKitTransitionEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMString propertyName;
-    readonly attribute [InitializedByEventConstructor] double elapsedTime;
+] interface WebKitTransitionEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMString propertyName;
+    [InitializedByEventConstructor] readonly attribute double elapsedTime;
 };
 
diff --git a/Source/WebCore/editing/DOMTransaction.idl b/Source/WebCore/editing/DOMTransaction.idl
index 67148ce..0917b99 100644
--- a/Source/WebCore/editing/DOMTransaction.idl
+++ b/Source/WebCore/editing/DOMTransaction.idl
@@ -22,9 +22,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=UNDO_MANAGER,
     V8CustomIsReachable
-] DOMTransaction {
+] interface DOMTransaction {
 };
 
diff --git a/Source/WebCore/editing/UndoManager.idl b/Source/WebCore/editing/UndoManager.idl
index 10230bd..e7bf91b 100644
--- a/Source/WebCore/editing/UndoManager.idl
+++ b/Source/WebCore/editing/UndoManager.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=UNDO_MANAGER,
     V8GenerateIsReachable=ImplOwnerNodeRoot
-] UndoManager {
+] interface UndoManager {
     [Custom] void transact(in Dictionary transaction, in boolean merge);
 
     void undo()
diff --git a/Source/WebCore/fileapi/Blob.idl b/Source/WebCore/fileapi/Blob.idl
index dc24c2f..15babb7 100644
--- a/Source/WebCore/fileapi/Blob.idl
+++ b/Source/WebCore/fileapi/Blob.idl
@@ -28,13 +28,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     JSGenerateIsReachable=Impl,
     CustomToJSObject,
     JSNoStaticTables,
     CustomConstructor,
     ConstructorParameters=2
-] Blob {
+] interface Blob {
     readonly attribute unsigned long long size;
     readonly attribute DOMString type;
 
diff --git a/Source/WebCore/fileapi/File.idl b/Source/WebCore/fileapi/File.idl
index b1085ac..ddfb9a2 100644
--- a/Source/WebCore/fileapi/File.idl
+++ b/Source/WebCore/fileapi/File.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     JSGenerateToNativeObject,
     JSGenerateToJSObject,
     JSNoStaticTables
-] File : Blob {
+] interface File : Blob {
     readonly attribute DOMString name;
 #if !defined(LANGUAGE_GOBJECT) || !LANGUAGE_GOBJECT
     readonly attribute Date lastModifiedDate;
diff --git a/Source/WebCore/fileapi/FileError.idl b/Source/WebCore/fileapi/FileError.idl
index 6ef654e..70a2768 100644
--- a/Source/WebCore/fileapi/FileError.idl
+++ b/Source/WebCore/fileapi/FileError.idl
@@ -28,10 +28,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=BLOB|FILE_SYSTEM,
     JSNoStaticTables
-] FileError {
+] interface FileError {
 #if !defined(LANGUAGE_OBJECTIVE_C)
     // FIXME: Some of constant names are already defined in DOMException.h for Objective-C binding and we cannot have the same names here (they are translated into a enum in the same namespace).
     const unsigned short NOT_FOUND_ERR = 1;
diff --git a/Source/WebCore/fileapi/FileException.idl b/Source/WebCore/fileapi/FileException.idl
index c2052b0..6059d22 100644
--- a/Source/WebCore/fileapi/FileException.idl
+++ b/Source/WebCore/fileapi/FileException.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-exception [
+[
     Conditional=BLOB|FILE_SYSTEM,
     DoNotCheckConstants,
     JSNoStaticTables
-] FileException {
+] exception FileException {
 
     readonly attribute unsigned short   code;
     readonly attribute DOMString        name;
diff --git a/Source/WebCore/fileapi/FileList.idl b/Source/WebCore/fileapi/FileList.idl
index aa0bdc2..6b790f7 100644
--- a/Source/WebCore/fileapi/FileList.idl
+++ b/Source/WebCore/fileapi/FileList.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     IndexedGetter,
     JSNoStaticTables
-] FileList {
+] interface FileList {
     readonly attribute unsigned long length;
     File item(in unsigned long index);
 };
diff --git a/Source/WebCore/fileapi/FileReader.idl b/Source/WebCore/fileapi/FileReader.idl
index 2357f9d..14baf07 100644
--- a/Source/WebCore/fileapi/FileReader.idl
+++ b/Source/WebCore/fileapi/FileReader.idl
@@ -29,14 +29,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=BLOB,
     ActiveDOMObject,
     Constructor,
     CallWith=ScriptExecutionContext,
     EventTarget,
     JSNoStaticTables
-] FileReader {
+] interface FileReader {
     // ready states
     const unsigned short EMPTY = 0;
     const unsigned short LOADING = 1;
@@ -56,7 +56,7 @@
     void abort();
 
     // file data
-    readonly attribute [Custom] DOMObject result;
+    [Custom] readonly attribute DOMObject result;
 
     readonly attribute FileError error;
 
diff --git a/Source/WebCore/fileapi/FileReaderSync.idl b/Source/WebCore/fileapi/FileReaderSync.idl
index 6015d9e..bc3f86d 100644
--- a/Source/WebCore/fileapi/FileReaderSync.idl
+++ b/Source/WebCore/fileapi/FileReaderSync.idl
@@ -28,11 +28,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=BLOB,
     Constructor,
     JSNoStaticTables
-] FileReaderSync {
+] interface FileReaderSync {
     [CallWith=ScriptExecutionContext] ArrayBuffer readAsArrayBuffer(in Blob blob)
         raises(FileException);
     [CallWith=ScriptExecutionContext] DOMString readAsBinaryString(in Blob blob)
diff --git a/Source/WebCore/html/DOMFormData.idl b/Source/WebCore/html/DOMFormData.idl
index c2c30d7..cf16bab 100644
--- a/Source/WebCore/html/DOMFormData.idl
+++ b/Source/WebCore/html/DOMFormData.idl
@@ -28,13 +28,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     CustomConstructor,
     ConstructorParameters=1,
     JSGenerateToNativeObject,
     JSGenerateToJSObject,
     InterfaceName=FormData
-] DOMFormData {
+] interface DOMFormData {
     // void append(DOMString name, DOMString value);
     // void append(DOMString name, Blob value, optional DOMString filename);
     [Custom] void append(in [Optional=DefaultIsUndefined] DOMString name, 
diff --git a/Source/WebCore/html/DOMSettableTokenList.idl b/Source/WebCore/html/DOMSettableTokenList.idl
index 94b11b7..5b4d108 100644
--- a/Source/WebCore/html/DOMSettableTokenList.idl
+++ b/Source/WebCore/html/DOMSettableTokenList.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     IndexedGetter,
     JSGenerateToJSObject
-] DOMSettableTokenList : DOMTokenList {
+] interface DOMSettableTokenList : DOMTokenList {
     attribute DOMString value;
 };
 
diff --git a/Source/WebCore/html/DOMTokenList.idl b/Source/WebCore/html/DOMTokenList.idl
index a3c221c..49544b7 100644
--- a/Source/WebCore/html/DOMTokenList.idl
+++ b/Source/WebCore/html/DOMTokenList.idl
@@ -22,10 +22,10 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     GenerateIsReachable=ImplElementRoot,
     IndexedGetter
-] DOMTokenList {
+] interface DOMTokenList {
     readonly attribute unsigned long length;
     [TreatReturnedNullStringAs=Null] DOMString item(in unsigned long index);
     boolean contains(in DOMString token) raises(DOMException);
diff --git a/Source/WebCore/html/DOMURL.idl b/Source/WebCore/html/DOMURL.idl
index 1ac7149..a90443f 100644
--- a/Source/WebCore/html/DOMURL.idl
+++ b/Source/WebCore/html/DOMURL.idl
@@ -24,14 +24,14 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=BLOB,
     Constructor,
     JSGenerateToNativeObject,
     JSGenerateToJSObject,
     JSNoStaticTables,
     InterfaceName=URL
-] DOMURL {
+] interface DOMURL {
 #if defined(ENABLE_MEDIA_SOURCE) && ENABLE_MEDIA_SOURCE
     [CallWith=ScriptExecutionContext,TreatReturnedNullStringAs=Null] static DOMString createObjectURL(in MediaSource? source);
 #endif
diff --git a/Source/WebCore/html/HTMLAllCollection.idl b/Source/WebCore/html/HTMLAllCollection.idl
index 1e12cab..c9bc92c 100644
--- a/Source/WebCore/html/HTMLAllCollection.idl
+++ b/Source/WebCore/html/HTMLAllCollection.idl
@@ -23,14 +23,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     IndexedGetter,
     NamedGetter,
     CustomCall,
     MasqueradesAsUndefined,
     GenerateIsReachable=ImplBaseRoot,
     V8DependentLifetime
-] HTMLAllCollection {
+] interface HTMLAllCollection {
     readonly attribute unsigned long length;
     [Custom] Node item(in [Optional=DefaultIsUndefined] unsigned long index);
     [Custom] Node namedItem(in DOMString name);
diff --git a/Source/WebCore/html/HTMLAnchorElement.idl b/Source/WebCore/html/HTMLAnchorElement.idl
index 6c8c73c..df68362 100644
--- a/Source/WebCore/html/HTMLAnchorElement.idl
+++ b/Source/WebCore/html/HTMLAnchorElement.idl
@@ -19,21 +19,21 @@
  */
 
 interface HTMLAnchorElement : HTMLElement {
-    attribute [Reflect] DOMString charset;
-    attribute [Reflect] DOMString coords;
-    attribute [Conditional=DOWNLOAD_ATTRIBUTE, Reflect] DOMString download;
-    attribute [Reflect, URL] DOMString href;
-    attribute [Reflect] DOMString hreflang;
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString ping;
-    attribute [Reflect] DOMString rel;
-    attribute [Reflect] DOMString rev;
-    attribute [Reflect] DOMString shape;
-    attribute [Reflect] DOMString target;
-    attribute [Reflect] DOMString type;
+    [Reflect] attribute DOMString charset;
+    [Reflect] attribute DOMString coords;
+    [Conditional=DOWNLOAD_ATTRIBUTE, Reflect] attribute DOMString download;
+    [Reflect, URL] attribute DOMString href;
+    [Reflect] attribute DOMString hreflang;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString ping;
+    [Reflect] attribute DOMString rel;
+    [Reflect] attribute DOMString rev;
+    [Reflect] attribute DOMString shape;
+    [Reflect] attribute DOMString target;
+    [Reflect] attribute DOMString type;
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [Reflect] DOMString accessKey;
+    [Reflect] attribute DOMString accessKey;
 #endif
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
@@ -45,15 +45,15 @@
     readonly attribute DOMString protocol;
     readonly attribute DOMString search;
 #else
-    attribute [TreatNullAs=NullString] DOMString hash;
-    attribute [TreatNullAs=NullString] DOMString host;
-    attribute [TreatNullAs=NullString] DOMString hostname;
-    attribute [TreatNullAs=NullString] DOMString pathname;
-    attribute [TreatNullAs=NullString] DOMString port;
-    attribute [TreatNullAs=NullString] DOMString protocol;
-    attribute [TreatNullAs=NullString] DOMString search;
+    [TreatNullAs=NullString] attribute DOMString hash;
+    [TreatNullAs=NullString] attribute DOMString host;
+    [TreatNullAs=NullString] attribute DOMString hostname;
+    [TreatNullAs=NullString] attribute DOMString pathname;
+    [TreatNullAs=NullString] attribute DOMString port;
+    [TreatNullAs=NullString] attribute DOMString protocol;
+    [TreatNullAs=NullString] attribute DOMString search;
 
-    readonly attribute [TreatNullAs=NullString] DOMString origin;
+    [TreatNullAs=NullString] readonly attribute DOMString origin;
 #endif
 
     readonly attribute DOMString text;
diff --git a/Source/WebCore/html/HTMLAppletElement.idl b/Source/WebCore/html/HTMLAppletElement.idl
index 94ac325..f80b11a 100644
--- a/Source/WebCore/html/HTMLAppletElement.idl
+++ b/Source/WebCore/html/HTMLAppletElement.idl
@@ -18,29 +18,29 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     CustomNamedSetter,
     JSCustomGetOwnPropertySlotAndDescriptor,
     CustomCall
-] HTMLAppletElement : HTMLElement {
-    attribute [Reflect] DOMString align;
-    attribute [Reflect] DOMString alt;
-    attribute [Reflect] DOMString archive;
-    attribute [Reflect] DOMString code;
-    attribute [Reflect] DOMString codeBase;
-    attribute [Reflect] DOMString height;
+] interface HTMLAppletElement : HTMLElement {
+    [Reflect] attribute DOMString align;
+    [Reflect] attribute DOMString alt;
+    [Reflect] attribute DOMString archive;
+    [Reflect] attribute DOMString code;
+    [Reflect] attribute DOMString codeBase;
+    [Reflect] attribute DOMString height;
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
-    attribute [Reflect] DOMString hspace;
+    [Reflect] attribute DOMString hspace;
 #else
-    attribute [Reflect] long hspace;
+    [Reflect] attribute long hspace;
 #endif
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString object;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString object;
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
-    attribute [Reflect] DOMString vspace;
+    [Reflect] attribute DOMString vspace;
 #else
-    attribute [Reflect] long vspace;
+    [Reflect] attribute long vspace;
 #endif
-    attribute [Reflect] DOMString width;
+    [Reflect] attribute DOMString width;
 };
 
diff --git a/Source/WebCore/html/HTMLAreaElement.idl b/Source/WebCore/html/HTMLAreaElement.idl
index fc07117..d025052 100644
--- a/Source/WebCore/html/HTMLAreaElement.idl
+++ b/Source/WebCore/html/HTMLAreaElement.idl
@@ -19,16 +19,16 @@
  */
 
 interface HTMLAreaElement : HTMLElement {
-    attribute [Reflect] DOMString alt;
-    attribute [Reflect] DOMString coords;
-    attribute [Reflect, URL] DOMString href;
-    attribute [Reflect] boolean noHref;
-    attribute [Reflect] DOMString ping;
-    attribute [Reflect] DOMString shape;
-    attribute [Reflect] DOMString target;
+    [Reflect] attribute DOMString alt;
+    [Reflect] attribute DOMString coords;
+    [Reflect, URL] attribute DOMString href;
+    [Reflect] attribute boolean noHref;
+    [Reflect] attribute DOMString ping;
+    [Reflect] attribute DOMString shape;
+    [Reflect] attribute DOMString target;
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [Reflect] DOMString accessKey;
+    [Reflect] attribute DOMString accessKey;
 #endif
     // IE Extensions
     readonly attribute DOMString hash;
diff --git a/Source/WebCore/html/HTMLAudioElement.idl b/Source/WebCore/html/HTMLAudioElement.idl
index c8ce552..9b3f8c6 100644
--- a/Source/WebCore/html/HTMLAudioElement.idl
+++ b/Source/WebCore/html/HTMLAudioElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ActiveDOMObject,
     Conditional=VIDEO,
     NamedConstructor=Audio(in [Optional=DefaultIsNullString] DOMString src)
-] HTMLAudioElement : HTMLMediaElement {
+] interface HTMLAudioElement : HTMLMediaElement {
 };
diff --git a/Source/WebCore/html/HTMLBRElement.idl b/Source/WebCore/html/HTMLBRElement.idl
index 4c0f51a..c909dc1 100644
--- a/Source/WebCore/html/HTMLBRElement.idl
+++ b/Source/WebCore/html/HTMLBRElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLBRElement : HTMLElement {
-    attribute [Reflect] DOMString clear;
+    [Reflect] attribute DOMString clear;
 };
 
diff --git a/Source/WebCore/html/HTMLBaseElement.idl b/Source/WebCore/html/HTMLBaseElement.idl
index ff4a4e7..0f63ddd 100644
--- a/Source/WebCore/html/HTMLBaseElement.idl
+++ b/Source/WebCore/html/HTMLBaseElement.idl
@@ -18,7 +18,7 @@
  */
 
 interface HTMLBaseElement : HTMLElement {
-    attribute [Reflect, URL] DOMString href;
-    attribute [Reflect] DOMString target;
+    [Reflect, URL] attribute DOMString href;
+    [Reflect] attribute DOMString target;
 };
 
diff --git a/Source/WebCore/html/HTMLBaseFontElement.idl b/Source/WebCore/html/HTMLBaseFontElement.idl
index d9e3b13..99bb330 100644
--- a/Source/WebCore/html/HTMLBaseFontElement.idl
+++ b/Source/WebCore/html/HTMLBaseFontElement.idl
@@ -18,11 +18,11 @@
  */
 
 interface HTMLBaseFontElement : HTMLElement {
-    attribute [Reflect] DOMString color;
-    attribute [Reflect] DOMString face;
+    [Reflect] attribute DOMString color;
+    [Reflect] attribute DOMString face;
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [Reflect] DOMString size; // this changed to a long, but our existing API is a string
+    [Reflect] attribute DOMString size; // this changed to a long, but our existing API is a string
 #else
-    attribute [Reflect] long size;
+    [Reflect] attribute long size;
 #endif
 };
diff --git a/Source/WebCore/html/HTMLBodyElement.idl b/Source/WebCore/html/HTMLBodyElement.idl
index 79bf692..32a7d50 100644
--- a/Source/WebCore/html/HTMLBodyElement.idl
+++ b/Source/WebCore/html/HTMLBodyElement.idl
@@ -19,32 +19,32 @@
  */
 
 interface HTMLBodyElement : HTMLElement {
-    attribute [Reflect] DOMString aLink;
-    attribute [Reflect] DOMString background;
-    attribute [Reflect] DOMString bgColor;
-    attribute [Reflect] DOMString link;
-    attribute [Reflect] DOMString text;
-    attribute [Reflect] DOMString vLink;
+    [Reflect] attribute DOMString aLink;
+    [Reflect] attribute DOMString background;
+    [Reflect] attribute DOMString bgColor;
+    [Reflect] attribute DOMString link;
+    [Reflect] attribute DOMString text;
+    [Reflect] attribute DOMString vLink;
 
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C
     // Event handler attributes
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onbeforeunload;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onhashchange;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onmessage;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onoffline;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener ononline;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onpopstate;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onresize;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onstorage;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onunload;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onbeforeunload;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onhashchange;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onmessage;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onoffline;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener ononline;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onpopstate;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onresize;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onstorage;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onunload;
 
-    attribute [Conditional=ORIENTATION_EVENTS, NotEnumerable, JSWindowEventListener] EventListener onorientationchange;
+    [Conditional=ORIENTATION_EVENTS, NotEnumerable, JSWindowEventListener] attribute EventListener onorientationchange;
 
     // Overrides of Element attributes (with different implementation in bindings).
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onblur;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onerror;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onfocus;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onload;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onblur;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onerror;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onfocus;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onload;
 
     // Not implemented yet.
     // attribute [NotEnumerable, JSWindowEventListener] EventListener onafterprint;
diff --git a/Source/WebCore/html/HTMLButtonElement.idl b/Source/WebCore/html/HTMLButtonElement.idl
index 73d1345..252a422 100644
--- a/Source/WebCore/html/HTMLButtonElement.idl
+++ b/Source/WebCore/html/HTMLButtonElement.idl
@@ -19,17 +19,17 @@
  */
 
 interface HTMLButtonElement : HTMLElement {
-    attribute [Reflect] boolean autofocus;
-    attribute [Reflect] boolean disabled;
+    [Reflect] attribute boolean autofocus;
+    [Reflect] attribute boolean disabled;
     readonly attribute HTMLFormElement form;
-    attribute [Reflect, URL] DOMString formAction;
-    attribute [TreatNullAs=NullString] DOMString formEnctype;
-    attribute [TreatNullAs=NullString] DOMString formMethod;
-    attribute [Reflect] boolean formNoValidate;
-    attribute [Reflect] DOMString formTarget;
-    attribute [Reflect] DOMString name;
-    attribute [TreatNullAs=NullString] DOMString type;
-    attribute [Reflect] DOMString value;
+    [Reflect, URL] attribute DOMString formAction;
+    [TreatNullAs=NullString] attribute DOMString formEnctype;
+    [TreatNullAs=NullString] attribute DOMString formMethod;
+    [Reflect] attribute boolean formNoValidate;
+    [Reflect] attribute DOMString formTarget;
+    [Reflect] attribute DOMString name;
+    [TreatNullAs=NullString] attribute DOMString type;
+    [Reflect] attribute DOMString value;
 
     readonly attribute boolean willValidate;
     readonly attribute ValidityState validity;
@@ -40,7 +40,7 @@
     readonly attribute NodeList labels;
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [Reflect] DOMString accessKey;
+    [Reflect] attribute DOMString accessKey;
 #endif
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
diff --git a/Source/WebCore/html/HTMLCanvasElement.idl b/Source/WebCore/html/HTMLCanvasElement.idl
index 7d89582..9e85dca 100644
--- a/Source/WebCore/html/HTMLCanvasElement.idl
+++ b/Source/WebCore/html/HTMLCanvasElement.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     JSGenerateToNativeObject
-] HTMLCanvasElement : HTMLElement {
+] interface HTMLCanvasElement : HTMLElement {
 
     attribute long width;
     attribute long height;
diff --git a/Source/WebCore/html/HTMLCollection.idl b/Source/WebCore/html/HTMLCollection.idl
index 8149b7d..8650428 100644
--- a/Source/WebCore/html/HTMLCollection.idl
+++ b/Source/WebCore/html/HTMLCollection.idl
@@ -18,14 +18,14 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     IndexedGetter,
     NamedGetter,
     CustomToJSObject,
     GenerateIsReachable=ImplBaseRoot,
     V8DependentLifetime,
     ObjCPolymorphic
-] HTMLCollection {
+] interface HTMLCollection {
     readonly attribute unsigned long length;
     Node item(in [Optional=DefaultIsUndefined] unsigned long index);
     [Custom] Node namedItem(in [Optional=DefaultIsUndefined] DOMString name);
diff --git a/Source/WebCore/html/HTMLDListElement.idl b/Source/WebCore/html/HTMLDListElement.idl
index e9dacab..95a97ff 100644
--- a/Source/WebCore/html/HTMLDListElement.idl
+++ b/Source/WebCore/html/HTMLDListElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLDListElement : HTMLElement {
-    attribute [Reflect] boolean compact;
+    [Reflect] attribute boolean compact;
 };
 
diff --git a/Source/WebCore/html/HTMLDataListElement.idl b/Source/WebCore/html/HTMLDataListElement.idl
index 68c6f8c..13fdaa4 100644
--- a/Source/WebCore/html/HTMLDataListElement.idl
+++ b/Source/WebCore/html/HTMLDataListElement.idl
@@ -28,8 +28,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=DATALIST_ELEMENT,
-] HTMLDataListElement : HTMLElement {
+] interface HTMLDataListElement : HTMLElement {
     readonly attribute HTMLCollection options;
 };
diff --git a/Source/WebCore/html/HTMLDetailsElement.idl b/Source/WebCore/html/HTMLDetailsElement.idl
index 8111a85..ca3894e 100644
--- a/Source/WebCore/html/HTMLDetailsElement.idl
+++ b/Source/WebCore/html/HTMLDetailsElement.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=DETAILS_ELEMENT
-] HTMLDetailsElement : HTMLElement {
-    attribute [Reflect] boolean open;
+] interface HTMLDetailsElement : HTMLElement {
+    [Reflect] attribute boolean open;
 };
 
diff --git a/Source/WebCore/html/HTMLDialogElement.idl b/Source/WebCore/html/HTMLDialogElement.idl
index f0a60f2..a6df0c7 100644
--- a/Source/WebCore/html/HTMLDialogElement.idl
+++ b/Source/WebCore/html/HTMLDialogElement.idl
@@ -23,10 +23,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=DIALOG_ELEMENT
-] HTMLDialogElement : HTMLElement {
-    attribute [Reflect] boolean open;
+] interface HTMLDialogElement : HTMLElement {
+    [Reflect] attribute boolean open;
     void close() raises(DOMException);
     void show();
     void showModal() raises(DOMException);
diff --git a/Source/WebCore/html/HTMLDirectoryElement.idl b/Source/WebCore/html/HTMLDirectoryElement.idl
index 146b3a1..541ae00 100644
--- a/Source/WebCore/html/HTMLDirectoryElement.idl
+++ b/Source/WebCore/html/HTMLDirectoryElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLDirectoryElement : HTMLElement {
-    attribute [Reflect] boolean compact;
+    [Reflect] attribute boolean compact;
 };
 
diff --git a/Source/WebCore/html/HTMLDivElement.idl b/Source/WebCore/html/HTMLDivElement.idl
index b67ca0f..40c8db4 100644
--- a/Source/WebCore/html/HTMLDivElement.idl
+++ b/Source/WebCore/html/HTMLDivElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLDivElement : HTMLElement {
-    attribute [Reflect] DOMString align;
+    [Reflect] attribute DOMString align;
 };
 
diff --git a/Source/WebCore/html/HTMLDocument.idl b/Source/WebCore/html/HTMLDocument.idl
index 94fc04c..717301c 100644
--- a/Source/WebCore/html/HTMLDocument.idl
+++ b/Source/WebCore/html/HTMLDocument.idl
@@ -18,10 +18,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     CustomNamedGetter,
     V8CustomToJSObject
-] HTMLDocument : Document {
+] interface HTMLDocument : Document {
     [JSCustom, V8Custom] void open();
     void close();
     [Custom] void write(in [Optional=DefaultIsUndefined] DOMString text);
@@ -35,7 +35,7 @@
 
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
     // FIXME: This should eventually be available (if they are wanted) for all languages.
-             attribute [Custom, Deletable] HTMLAllCollection all;
+             [Custom, Deletable] attribute HTMLAllCollection all;
 #endif
 
     void clear();
@@ -45,18 +45,18 @@
 
     readonly attribute long width;
     readonly attribute long height;
-             attribute [TreatNullAs=NullString] DOMString dir;
-             attribute [TreatNullAs=NullString] DOMString designMode;
+             [TreatNullAs=NullString] attribute DOMString dir;
+             [TreatNullAs=NullString] attribute DOMString designMode;
     readonly attribute DOMString compatMode;
 
     readonly attribute Element activeElement;
     boolean hasFocus();
 
     // Deprecated attributes
-             attribute [TreatNullAs=NullString] DOMString bgColor;
-             attribute [TreatNullAs=NullString] DOMString fgColor;
-             attribute [TreatNullAs=NullString] DOMString alinkColor;
-             attribute [TreatNullAs=NullString] DOMString linkColor;
-             attribute [TreatNullAs=NullString] DOMString vlinkColor;
+             [TreatNullAs=NullString] attribute DOMString bgColor;
+             [TreatNullAs=NullString] attribute DOMString fgColor;
+             [TreatNullAs=NullString] attribute DOMString alinkColor;
+             [TreatNullAs=NullString] attribute DOMString linkColor;
+             [TreatNullAs=NullString] attribute DOMString vlinkColor;
 };
 
diff --git a/Source/WebCore/html/HTMLElement.idl b/Source/WebCore/html/HTMLElement.idl
index b3adec7..d3206f2 100644
--- a/Source/WebCore/html/HTMLElement.idl
+++ b/Source/WebCore/html/HTMLElement.idl
@@ -18,33 +18,33 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject,
     JSCustomPushEventHandlerScope,
     V8CustomToJSObject
-] HTMLElement : Element {
+] interface HTMLElement : Element {
              // iht.com relies on id returning the empty string when no id is present. 
              // Other browsers do this as well. So we don't convert null to JS null.
-             attribute [Reflect] DOMString id;
-             attribute [Reflect] DOMString title;
-             attribute [Reflect] DOMString lang;
+             [Reflect] attribute DOMString id;
+             [Reflect] attribute DOMString title;
+             [Reflect] attribute DOMString lang;
              attribute boolean             translate;
-             attribute [Reflect] DOMString dir;
+             [Reflect] attribute DOMString dir;
 
              attribute long              tabIndex;
              attribute boolean           draggable;
-             attribute [Reflect] DOMString webkitdropzone;
-             attribute [Reflect] boolean hidden;
-             attribute [Reflect] DOMString accessKey;
+             [Reflect] attribute DOMString webkitdropzone;
+             [Reflect] attribute boolean hidden;
+             [Reflect] attribute DOMString accessKey;
 
     // Extensions
-             attribute [TreatNullAs=NullString] DOMString innerHTML
+             [TreatNullAs=NullString] attribute DOMString innerHTML
                  setter raises(DOMException);
-             attribute [TreatNullAs=NullString] DOMString innerText
+             [TreatNullAs=NullString] attribute DOMString innerText
                  setter raises(DOMException);
-             attribute [TreatNullAs=NullString] DOMString outerHTML
+             [TreatNullAs=NullString] attribute DOMString outerHTML
                  setter raises(DOMException);
-             attribute [TreatNullAs=NullString] DOMString outerText
+             [TreatNullAs=NullString] attribute DOMString outerText
                  setter raises(DOMException);
 
     Element insertAdjacentElement(in [Optional=DefaultIsUndefined] DOMString where,
@@ -59,28 +59,28 @@
 
     readonly attribute HTMLCollection children;
 
-             attribute [TreatNullAs=NullString] DOMString contentEditable
+             [TreatNullAs=NullString] attribute DOMString contentEditable
                  setter raises(DOMException);
     readonly attribute boolean isContentEditable;
 
              attribute boolean spellcheck;
 
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C // No Objective-C bindings yet.
-             attribute [Conditional=MICRODATA, Reflect] boolean itemScope;
-    readonly attribute [Conditional=MICRODATA] DOMSettableTokenList itemType;
-             attribute [Conditional=MICRODATA, Reflect, URL] DOMString itemId;
+             [Conditional=MICRODATA, Reflect] attribute boolean itemScope;
+    [Conditional=MICRODATA] readonly attribute DOMSettableTokenList itemType;
+             [Conditional=MICRODATA, Reflect, URL] attribute DOMString itemId;
 
-    readonly attribute [Conditional=MICRODATA] DOMSettableTokenList itemRef;
-    readonly attribute [Conditional=MICRODATA] DOMSettableTokenList itemProp;
+    [Conditional=MICRODATA] readonly attribute DOMSettableTokenList itemRef;
+    [Conditional=MICRODATA] readonly attribute DOMSettableTokenList itemProp;
 
 #if defined(ENABLE_MICRODATA) && ENABLE_MICRODATA
-    readonly attribute [Conditional=MICRODATA] HTMLPropertiesCollection properties;
+    [Conditional=MICRODATA] readonly attribute HTMLPropertiesCollection properties;
 #endif
 #endif
 
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C
-             attribute [Conditional=MICRODATA, Custom] DOMObject itemValue
+             [Conditional=MICRODATA, Custom] attribute DOMObject itemValue
                  setter raises(DOMException);
 #endif
 #endif
diff --git a/Source/WebCore/html/HTMLEmbedElement.idl b/Source/WebCore/html/HTMLEmbedElement.idl
index 45541de..3716567 100644
--- a/Source/WebCore/html/HTMLEmbedElement.idl
+++ b/Source/WebCore/html/HTMLEmbedElement.idl
@@ -18,11 +18,11 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     CustomNamedSetter,
     JSCustomGetOwnPropertySlotAndDescriptor,
     CustomCall
-] HTMLEmbedElement : HTMLElement {
+] interface HTMLEmbedElement : HTMLElement {
 attribute [Reflect] DOMString align;
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
 attribute [Reflect] DOMString height;
diff --git a/Source/WebCore/html/HTMLFieldSetElement.idl b/Source/WebCore/html/HTMLFieldSetElement.idl
index 2191e57..5f3b4f3 100644
--- a/Source/WebCore/html/HTMLFieldSetElement.idl
+++ b/Source/WebCore/html/HTMLFieldSetElement.idl
@@ -18,9 +18,9 @@
  */
 
 interface HTMLFieldSetElement : HTMLElement {
-    attribute [Reflect] boolean disabled;
+    [Reflect] attribute boolean disabled;
     readonly attribute HTMLFormElement form;
-    attribute [Reflect] DOMString name;
+    [Reflect] attribute DOMString name;
 
     readonly attribute DOMString type;
 
diff --git a/Source/WebCore/html/HTMLFontElement.idl b/Source/WebCore/html/HTMLFontElement.idl
index 511658c..d2da3a9 100644
--- a/Source/WebCore/html/HTMLFontElement.idl
+++ b/Source/WebCore/html/HTMLFontElement.idl
@@ -18,8 +18,8 @@
  */
 
 interface HTMLFontElement : HTMLElement {
-    attribute [Reflect] DOMString color;
-    attribute [Reflect] DOMString face;
-    attribute [Reflect] DOMString size;
+    [Reflect] attribute DOMString color;
+    [Reflect] attribute DOMString face;
+    [Reflect] attribute DOMString size;
 };
 
diff --git a/Source/WebCore/html/HTMLFormElement.idl b/Source/WebCore/html/HTMLFormElement.idl
index bd98835..86a6f74 100644
--- a/Source/WebCore/html/HTMLFormElement.idl
+++ b/Source/WebCore/html/HTMLFormElement.idl
@@ -18,19 +18,19 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     IndexedGetter,
     CustomNamedGetter
-] HTMLFormElement : HTMLElement {
-    attribute [Reflect=accept_charset] DOMString acceptCharset;
-    attribute [Reflect, URL] DOMString action;
-    attribute [Reflect] DOMString autocomplete;
-    attribute [TreatNullAs=NullString] DOMString enctype;
-    attribute [TreatNullAs=NullString] DOMString encoding;
-    attribute [TreatNullAs=NullString] DOMString method;
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] boolean noValidate;
-    attribute [Reflect] DOMString target;
+] interface HTMLFormElement : HTMLElement {
+    [Reflect=accept_charset] attribute DOMString acceptCharset;
+    [Reflect, URL] attribute DOMString action;
+    [Reflect] attribute DOMString autocomplete;
+    [TreatNullAs=NullString] attribute DOMString enctype;
+    [TreatNullAs=NullString] attribute DOMString encoding;
+    [TreatNullAs=NullString] attribute DOMString method;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute boolean noValidate;
+    [Reflect] attribute DOMString target;
 
     readonly attribute HTMLCollection elements;
     readonly attribute long length;
diff --git a/Source/WebCore/html/HTMLFrameElement.idl b/Source/WebCore/html/HTMLFrameElement.idl
index b23783a..e3747da 100644
--- a/Source/WebCore/html/HTMLFrameElement.idl
+++ b/Source/WebCore/html/HTMLFrameElement.idl
@@ -20,17 +20,17 @@
 
 interface HTMLFrameElement : HTMLElement {
 
-    attribute [Reflect] DOMString frameBorder;
-    attribute [Reflect] DOMString longDesc;
-    attribute [Reflect] DOMString marginHeight;
-    attribute [Reflect] DOMString marginWidth;
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] boolean noResize;
-    attribute [Reflect] DOMString scrolling;
-    attribute [Reflect, URL] DOMString src;
+    [Reflect] attribute DOMString frameBorder;
+    [Reflect] attribute DOMString longDesc;
+    [Reflect] attribute DOMString marginHeight;
+    [Reflect] attribute DOMString marginWidth;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute boolean noResize;
+    [Reflect] attribute DOMString scrolling;
+    [Reflect, URL] attribute DOMString src;
 
     // Introduced in DOM Level 2:
-    readonly attribute [CheckSecurityForNode] Document contentDocument;
+    [CheckSecurityForNode] readonly attribute Document contentDocument;
 
     // Extensions
     readonly attribute DOMWindow contentWindow;
@@ -42,7 +42,7 @@
 #endif
 #endif
 
-    attribute [TreatNullAs=NullString, CustomSetter] DOMString location;
+    [TreatNullAs=NullString, CustomSetter] attribute DOMString location;
 
     readonly attribute long width;
     readonly attribute long height;
diff --git a/Source/WebCore/html/HTMLFrameSetElement.idl b/Source/WebCore/html/HTMLFrameSetElement.idl
index 53a2978..b4fa43d 100644
--- a/Source/WebCore/html/HTMLFrameSetElement.idl
+++ b/Source/WebCore/html/HTMLFrameSetElement.idl
@@ -18,31 +18,31 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     CustomNamedGetter
-] HTMLFrameSetElement : HTMLElement {
-    attribute [Reflect] DOMString cols;
-    attribute [Reflect] DOMString rows;
+] interface HTMLFrameSetElement : HTMLElement {
+    [Reflect] attribute DOMString cols;
+    [Reflect] attribute DOMString rows;
 
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C
     // Event handler attributes
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onbeforeunload;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onhashchange;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onmessage;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onoffline;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener ononline;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onpopstate;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onresize;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onstorage;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onunload;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onbeforeunload;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onhashchange;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onmessage;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onoffline;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener ononline;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onpopstate;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onresize;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onstorage;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onunload;
 
-    attribute [Conditional=ORIENTATION_EVENTS, NotEnumerable, JSWindowEventListener] EventListener onorientationchange;
+    [Conditional=ORIENTATION_EVENTS, NotEnumerable, JSWindowEventListener] attribute EventListener onorientationchange;
 
     // Overrides of Element attributes (with different implementation in bindings).
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onblur;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onerror;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onfocus;
-    attribute [NotEnumerable, JSWindowEventListener] EventListener onload;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onblur;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onerror;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onfocus;
+    [NotEnumerable, JSWindowEventListener] attribute EventListener onload;
 
     // Not implemented yet.
     // attribute [NotEnumerable, JSWindowEventListener] EventListener onafterprint;
diff --git a/Source/WebCore/html/HTMLHRElement.idl b/Source/WebCore/html/HTMLHRElement.idl
index 02fe6be..babe467 100644
--- a/Source/WebCore/html/HTMLHRElement.idl
+++ b/Source/WebCore/html/HTMLHRElement.idl
@@ -18,9 +18,9 @@
  */
 
 interface HTMLHRElement : HTMLElement {
-    attribute [Reflect] DOMString align;
-    attribute [Reflect] boolean noShade;
-    attribute [Reflect] DOMString size;
-    attribute [Reflect] DOMString width;
+    [Reflect] attribute DOMString align;
+    [Reflect] attribute boolean noShade;
+    [Reflect] attribute DOMString size;
+    [Reflect] attribute DOMString width;
 };
 
diff --git a/Source/WebCore/html/HTMLHeadElement.idl b/Source/WebCore/html/HTMLHeadElement.idl
index b43a9f2..6a784bd 100644
--- a/Source/WebCore/html/HTMLHeadElement.idl
+++ b/Source/WebCore/html/HTMLHeadElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLHeadElement : HTMLElement {
-    attribute [Reflect] DOMString profile;
+    [Reflect] attribute DOMString profile;
 };
 
diff --git a/Source/WebCore/html/HTMLHeadingElement.idl b/Source/WebCore/html/HTMLHeadingElement.idl
index 70d32a2..288f439 100644
--- a/Source/WebCore/html/HTMLHeadingElement.idl
+++ b/Source/WebCore/html/HTMLHeadingElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLHeadingElement : HTMLElement {
-    attribute [Reflect] DOMString align;
+    [Reflect] attribute DOMString align;
 };
 
diff --git a/Source/WebCore/html/HTMLHtmlElement.idl b/Source/WebCore/html/HTMLHtmlElement.idl
index 3a6edcf..430cdc6 100644
--- a/Source/WebCore/html/HTMLHtmlElement.idl
+++ b/Source/WebCore/html/HTMLHtmlElement.idl
@@ -18,7 +18,7 @@
  */
 
 interface HTMLHtmlElement : HTMLElement {
-    attribute [Reflect] DOMString version;
-    attribute [Reflect, URL] DOMString manifest;
+    [Reflect] attribute DOMString version;
+    [Reflect, URL] attribute DOMString manifest;
 };
 
diff --git a/Source/WebCore/html/HTMLIFrameElement.idl b/Source/WebCore/html/HTMLIFrameElement.idl
index 3d242e5..eea2fb7 100644
--- a/Source/WebCore/html/HTMLIFrameElement.idl
+++ b/Source/WebCore/html/HTMLIFrameElement.idl
@@ -19,22 +19,22 @@
  */
 
 interface HTMLIFrameElement : HTMLElement {
-    attribute [Reflect] DOMString align;
-    attribute [Reflect] DOMString frameBorder;
-    attribute [Reflect] DOMString height;
-    attribute [Reflect] DOMString longDesc;
-    attribute [Reflect] DOMString marginHeight;
-    attribute [Reflect] DOMString marginWidth;
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString sandbox;
-    attribute [Reflect, Conditional=IFRAME_SEAMLESS] boolean seamless;
-    attribute [Reflect] DOMString scrolling;
-    attribute [Reflect, URL] DOMString src;
-    attribute [Reflect] DOMString srcdoc;
-    attribute [Reflect] DOMString width;
+    [Reflect] attribute DOMString align;
+    [Reflect] attribute DOMString frameBorder;
+    [Reflect] attribute DOMString height;
+    [Reflect] attribute DOMString longDesc;
+    [Reflect] attribute DOMString marginHeight;
+    [Reflect] attribute DOMString marginWidth;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString sandbox;
+    [Reflect, Conditional=IFRAME_SEAMLESS] attribute boolean seamless;
+    [Reflect] attribute DOMString scrolling;
+    [Reflect, URL] attribute DOMString src;
+    [Reflect] attribute DOMString srcdoc;
+    [Reflect] attribute DOMString width;
 
     // Introduced in DOM Level 2:
-    readonly attribute [CheckSecurityForNode] Document contentDocument;
+    [CheckSecurityForNode] readonly attribute Document contentDocument;
 
     // Extensions
     readonly attribute DOMWindow contentWindow;
diff --git a/Source/WebCore/html/HTMLImageElement.idl b/Source/WebCore/html/HTMLImageElement.idl
index 8b616f2..ce1ea17 100644
--- a/Source/WebCore/html/HTMLImageElement.idl
+++ b/Source/WebCore/html/HTMLImageElement.idl
@@ -18,26 +18,26 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject
-] HTMLImageElement : HTMLElement {
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString align;
-    attribute [Reflect] DOMString alt;
-    attribute [Reflect] DOMString border;
-    attribute [Reflect] DOMString crossOrigin;
+] interface HTMLImageElement : HTMLElement {
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString align;
+    [Reflect] attribute DOMString alt;
+    [Reflect] attribute DOMString border;
+    [Reflect] attribute DOMString crossOrigin;
     attribute long height;
-    attribute [Reflect] long hspace;
-    attribute [Reflect] boolean isMap;
-    attribute [Reflect, URL] DOMString longDesc;
-    attribute [Reflect, URL] DOMString src;
-    attribute [Reflect] DOMString useMap;
-    attribute [Reflect] long vspace;
+    [Reflect] attribute long hspace;
+    [Reflect] attribute boolean isMap;
+    [Reflect, URL] attribute DOMString longDesc;
+    [Reflect, URL] attribute DOMString src;
+    [Reflect] attribute DOMString useMap;
+    [Reflect] attribute long vspace;
     attribute long width;
     
     // Extensions
     readonly attribute boolean complete;
-    attribute [Reflect,URL] DOMString lowsrc;
+    [Reflect,URL] attribute DOMString lowsrc;
     readonly attribute long naturalHeight;
     readonly attribute long naturalWidth;
     readonly attribute long x;
diff --git a/Source/WebCore/html/HTMLInputElement.idl b/Source/WebCore/html/HTMLInputElement.idl
index cf50204..3c36047 100644
--- a/Source/WebCore/html/HTMLInputElement.idl
+++ b/Source/WebCore/html/HTMLInputElement.idl
@@ -20,43 +20,43 @@
  */
 
 interface HTMLInputElement : HTMLElement {
-    attribute [Reflect] DOMString accept;
-    attribute [Reflect] DOMString alt;
-    attribute [Reflect] DOMString autocomplete;
-    attribute [Reflect] boolean autofocus;
-    attribute [Reflect=checked] boolean defaultChecked;
+    [Reflect] attribute DOMString accept;
+    [Reflect] attribute DOMString alt;
+    [Reflect] attribute DOMString autocomplete;
+    [Reflect] attribute boolean autofocus;
+    [Reflect=checked] attribute boolean defaultChecked;
     attribute boolean checked;
-    attribute [Reflect] DOMString dirName;
-    attribute [Reflect] boolean disabled;
+    [Reflect] attribute DOMString dirName;
+    [Reflect] attribute boolean disabled;
     readonly attribute HTMLFormElement form;
     attribute FileList files;
-    attribute [Reflect, URL] DOMString formAction;
-    attribute [TreatNullAs=NullString] DOMString formEnctype;
-    attribute [TreatNullAs=NullString] DOMString formMethod;
-    attribute [Reflect] boolean formNoValidate;
-    attribute [Reflect] DOMString formTarget;
+    [Reflect, URL] attribute DOMString formAction;
+    [TreatNullAs=NullString] attribute DOMString formEnctype;
+    [TreatNullAs=NullString] attribute DOMString formMethod;
+    [Reflect] attribute boolean formNoValidate;
+    [Reflect] attribute DOMString formTarget;
     attribute unsigned long height;
     attribute boolean indeterminate;
-    readonly attribute [Conditional=DATALIST_ELEMENT] HTMLElement list;
-    attribute [Reflect] DOMString max;
+    [Conditional=DATALIST_ELEMENT] readonly attribute HTMLElement list;
+    [Reflect] attribute DOMString max;
     attribute long maxLength setter raises(DOMException);
-    attribute [Reflect] DOMString min;
-    attribute [Reflect] boolean multiple;
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString pattern;
-    attribute [Reflect] DOMString placeholder;
-    attribute [Reflect] boolean readOnly;
-    attribute [Reflect] boolean required;
+    [Reflect] attribute DOMString min;
+    [Reflect] attribute boolean multiple;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString pattern;
+    [Reflect] attribute DOMString placeholder;
+    [Reflect] attribute boolean readOnly;
+    [Reflect] attribute boolean required;
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [ObjCImplementedAsUnsignedLong] DOMString size; // DOM level 2 changed this to a long, but ObjC API is a string
+    [ObjCImplementedAsUnsignedLong] attribute DOMString size; // DOM level 2 changed this to a long, but ObjC API is a string
 #else
     attribute unsigned long size setter raises(DOMException); // Changed string -> long -> unsigned long
 #endif
-    attribute [Reflect, URL] DOMString src;
-    attribute [Reflect] DOMString step;
-    attribute [TreatNullAs=NullString] DOMString type; // readonly dropped as part of DOM level 2
-    attribute [TreatNullAs=NullString] DOMString defaultValue;
-    attribute [TreatNullAs=NullString] DOMString value;
+    [Reflect, URL] attribute DOMString src;
+    [Reflect] attribute DOMString step;
+    [TreatNullAs=NullString] attribute DOMString type; // readonly dropped as part of DOM level 2
+    [TreatNullAs=NullString] attribute DOMString defaultValue;
+    [TreatNullAs=NullString] attribute DOMString value;
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
     attribute Date valueAsDate setter raises(DOMException);
 #endif
@@ -75,9 +75,9 @@
     readonly attribute NodeList labels;
 
     void select();
-    attribute [Custom] long selectionStart;
-    attribute [Custom] long selectionEnd;
-    attribute [Custom] DOMString selectionDirection;
+    [Custom] attribute long selectionStart;
+    [Custom] attribute long selectionEnd;
+    [Custom] attribute DOMString selectionDirection;
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
     [Custom] void setSelectionRange(in long start, in long end);
 #else
@@ -87,16 +87,16 @@
 #endif
 
     // Non-standard attributes
-    attribute [Reflect] DOMString align;
-    attribute [Conditional=DIRECTORY_UPLOAD, Reflect] boolean webkitdirectory;
-    attribute [Reflect] DOMString useMap;
-    attribute [Reflect] boolean incremental;
-    attribute [Conditional=INPUT_SPEECH, Reflect, V8EnabledAtRuntime] boolean webkitSpeech;
-    attribute [Conditional=INPUT_SPEECH, Reflect, V8EnabledAtRuntime] boolean webkitGrammar;
-    attribute [Conditional=INPUT_SPEECH, NotEnumerable] EventListener onwebkitspeechchange;
+    [Reflect] attribute DOMString align;
+    [Conditional=DIRECTORY_UPLOAD, Reflect] attribute boolean webkitdirectory;
+    [Reflect] attribute DOMString useMap;
+    [Reflect] attribute boolean incremental;
+    [Conditional=INPUT_SPEECH, Reflect, V8EnabledAtRuntime] attribute boolean webkitSpeech;
+    [Conditional=INPUT_SPEECH, Reflect, V8EnabledAtRuntime] attribute boolean webkitGrammar;
+    [Conditional=INPUT_SPEECH, NotEnumerable] attribute EventListener onwebkitspeechchange;
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [Reflect] DOMString accessKey;
+    [Reflect] attribute DOMString accessKey;
 #endif
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
@@ -114,5 +114,5 @@
 #endif
 
     // See http://www.w3.org/TR/html-media-capture/
-    attribute [Conditional=MEDIA_CAPTURE] DOMString capture;
+    [Conditional=MEDIA_CAPTURE] attribute DOMString capture;
 };
diff --git a/Source/WebCore/html/HTMLIntentElement.idl b/Source/WebCore/html/HTMLIntentElement.idl
index a3eedf2..f1df9be 100644
--- a/Source/WebCore/html/HTMLIntentElement.idl
+++ b/Source/WebCore/html/HTMLIntentElement.idl
@@ -23,13 +23,13 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEB_INTENTS_TAG
-] HTMLIntentElement : HTMLElement {
-    attribute [Reflect] DOMString action;
-    attribute [Reflect] DOMString type;
-    attribute [Reflect, URL] DOMString href;
-    attribute [Reflect] DOMString title;
-    attribute [Reflect] DOMString disposition;
+] interface HTMLIntentElement : HTMLElement {
+    [Reflect] attribute DOMString action;
+    [Reflect] attribute DOMString type;
+    [Reflect, URL] attribute DOMString href;
+    [Reflect] attribute DOMString title;
+    [Reflect] attribute DOMString disposition;
 };
 
diff --git a/Source/WebCore/html/HTMLKeygenElement.idl b/Source/WebCore/html/HTMLKeygenElement.idl
index 4fa1edf..466d792 100644
--- a/Source/WebCore/html/HTMLKeygenElement.idl
+++ b/Source/WebCore/html/HTMLKeygenElement.idl
@@ -29,12 +29,12 @@
  */
 
 interface HTMLKeygenElement : HTMLElement {
-    attribute [Reflect] boolean autofocus;
-    attribute [Reflect] DOMString challenge;
-    attribute [Reflect] boolean disabled;
+    [Reflect] attribute boolean autofocus;
+    [Reflect] attribute DOMString challenge;
+    [Reflect] attribute boolean disabled;
     readonly attribute HTMLFormElement form;
-    attribute [Reflect] DOMString keytype;
-    attribute [Reflect] DOMString name;
+    [Reflect] attribute DOMString keytype;
+    [Reflect] attribute DOMString name;
 
     readonly attribute DOMString type;
 
diff --git a/Source/WebCore/html/HTMLLIElement.idl b/Source/WebCore/html/HTMLLIElement.idl
index a24d24a..ba3eaae 100644
--- a/Source/WebCore/html/HTMLLIElement.idl
+++ b/Source/WebCore/html/HTMLLIElement.idl
@@ -18,7 +18,7 @@
  */
 
 interface HTMLLIElement : HTMLElement {
-    attribute [Reflect] DOMString type;
-    attribute [Reflect] long value;    
+    [Reflect] attribute DOMString type;
+    [Reflect] attribute long value;    
 };
 
diff --git a/Source/WebCore/html/HTMLLabelElement.idl b/Source/WebCore/html/HTMLLabelElement.idl
index 40619f7..92e5f4b 100644
--- a/Source/WebCore/html/HTMLLabelElement.idl
+++ b/Source/WebCore/html/HTMLLabelElement.idl
@@ -20,10 +20,10 @@
 
 interface HTMLLabelElement : HTMLElement {
     readonly attribute HTMLFormElement form;
-    attribute [Reflect=for] DOMString htmlFor;
+    [Reflect=for] attribute DOMString htmlFor;
     readonly attribute HTMLElement control;
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [Reflect] DOMString accessKey;
+    [Reflect] attribute DOMString accessKey;
 #endif
 };
 
diff --git a/Source/WebCore/html/HTMLLegendElement.idl b/Source/WebCore/html/HTMLLegendElement.idl
index 76cee29..749745e 100644
--- a/Source/WebCore/html/HTMLLegendElement.idl
+++ b/Source/WebCore/html/HTMLLegendElement.idl
@@ -20,9 +20,9 @@
 
 interface HTMLLegendElement : HTMLElement {
     readonly attribute HTMLFormElement form;
-    attribute [Reflect] DOMString align;
+    [Reflect] attribute DOMString align;
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [Reflect] DOMString accessKey;
+    [Reflect] attribute DOMString accessKey;
 #endif
 };
 
diff --git a/Source/WebCore/html/HTMLLinkElement.idl b/Source/WebCore/html/HTMLLinkElement.idl
index 70e2b30..0a4e347 100644
--- a/Source/WebCore/html/HTMLLinkElement.idl
+++ b/Source/WebCore/html/HTMLLinkElement.idl
@@ -20,18 +20,18 @@
  */
 
 interface HTMLLinkElement : HTMLElement {
-    attribute [Reflect] boolean disabled;
-    attribute [Reflect] DOMString charset;
-    attribute [Reflect, URL] DOMString href;
-    attribute [Reflect] DOMString hreflang;
-    attribute [Reflect] DOMString media;
-    attribute [Reflect] DOMString rel;
-    attribute [Reflect] DOMString rev;
+    [Reflect] attribute boolean disabled;
+    [Reflect] attribute DOMString charset;
+    [Reflect, URL] attribute DOMString href;
+    [Reflect] attribute DOMString hreflang;
+    [Reflect] attribute DOMString media;
+    [Reflect] attribute DOMString rel;
+    [Reflect] attribute DOMString rev;
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
-    attribute [Custom] DOMSettableTokenList sizes;
+    [Custom] attribute DOMSettableTokenList sizes;
 #endif
-    attribute [Reflect] DOMString target;
-    attribute [Reflect] DOMString type;
+    [Reflect] attribute DOMString target;
+    [Reflect] attribute DOMString type;
 
     // DOM Level 2 Style
     readonly attribute StyleSheet sheet;
diff --git a/Source/WebCore/html/HTMLMapElement.idl b/Source/WebCore/html/HTMLMapElement.idl
index 8d44796..01dcae0 100644
--- a/Source/WebCore/html/HTMLMapElement.idl
+++ b/Source/WebCore/html/HTMLMapElement.idl
@@ -20,6 +20,6 @@
 
 interface HTMLMapElement : HTMLElement {
     readonly attribute HTMLCollection areas;
-    attribute [Reflect] DOMString name;
+    [Reflect] attribute DOMString name;
 };
 
diff --git a/Source/WebCore/html/HTMLMarqueeElement.idl b/Source/WebCore/html/HTMLMarqueeElement.idl
index 6912072..41bd019 100644
--- a/Source/WebCore/html/HTMLMarqueeElement.idl
+++ b/Source/WebCore/html/HTMLMarqueeElement.idl
@@ -21,17 +21,17 @@
     void start();
     void stop();
     
-    attribute [Reflect] DOMString behavior;
-    attribute [Reflect] DOMString bgColor;
-    attribute [Reflect] DOMString direction;
-    attribute [Reflect] DOMString height;
-    attribute [Reflect] unsigned long hspace;
+    [Reflect] attribute DOMString behavior;
+    [Reflect] attribute DOMString bgColor;
+    [Reflect] attribute DOMString direction;
+    [Reflect] attribute DOMString height;
+    [Reflect] attribute unsigned long hspace;
     attribute long loop setter raises(DOMException);
     attribute long scrollAmount setter raises(DOMException);
     attribute long scrollDelay setter raises(DOMException);
-    attribute [Reflect] boolean trueSpeed;
-    attribute [Reflect] unsigned long vspace;
-    attribute [Reflect] DOMString width;
+    [Reflect] attribute boolean trueSpeed;
+    [Reflect] attribute unsigned long vspace;
+    [Reflect] attribute DOMString width;
 
     // FIXME: Implement the following event handler attributes
     // https://bugs.webkit.org/show_bug.cgi?id=49788
diff --git a/Source/WebCore/html/HTMLMediaElement.idl b/Source/WebCore/html/HTMLMediaElement.idl
index 0d9d46a..37f4037 100644
--- a/Source/WebCore/html/HTMLMediaElement.idl
+++ b/Source/WebCore/html/HTMLMediaElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO,
     JSGenerateToNativeObject
-] HTMLMediaElement : HTMLElement {
+] interface HTMLMediaElement : HTMLElement {
 
 // error state
 readonly attribute MediaError error;
@@ -102,7 +102,7 @@
 [V8EnabledAtRuntime=encryptedMedia] void webkitCancelKeyRequest(in [TreatNullAs=NullString, TreatUndefinedAs=NullString] DOMString keySystem, in [Optional=DefaultIsNullString] DOMString sessionId)
     raises (DOMException);
 
-attribute [V8EnabledAtRuntime=encryptedMedia] EventListener onwebkitkeyadded;
+[V8EnabledAtRuntime=encryptedMedia] attribute EventListener onwebkitkeyadded;
 attribute [V8EnabledAtRuntime=encryptedMedia] EventListener onwebkitkeyerror;
 attribute [V8EnabledAtRuntime=encryptedMedia] EventListener onwebkitkeymessage;
 attribute [V8EnabledAtRuntime=encryptedMedia] EventListener onwebkitneedkey;
@@ -114,6 +114,6 @@
 readonly attribute [V8EnabledAtRuntime=webkitVideoTrack] TextTrackList textTracks;
 #endif
 
-attribute [Reflect, TreatNullAs=NullString] DOMString mediaGroup;
+[Reflect, TreatNullAs=NullString] attribute DOMString mediaGroup;
 attribute [CustomSetter] MediaController controller;
 };
diff --git a/Source/WebCore/html/HTMLMenuElement.idl b/Source/WebCore/html/HTMLMenuElement.idl
index b17931f..ea756fc 100644
--- a/Source/WebCore/html/HTMLMenuElement.idl
+++ b/Source/WebCore/html/HTMLMenuElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLMenuElement : HTMLElement {
-    attribute [Reflect] boolean compact;
+    [Reflect] attribute boolean compact;
 };
 
diff --git a/Source/WebCore/html/HTMLMetaElement.idl b/Source/WebCore/html/HTMLMetaElement.idl
index a67f83c..4f7e9cd 100644
--- a/Source/WebCore/html/HTMLMetaElement.idl
+++ b/Source/WebCore/html/HTMLMetaElement.idl
@@ -18,9 +18,9 @@
  */
 
 interface HTMLMetaElement : HTMLElement {
-    attribute [Reflect] DOMString content;
-    attribute [Reflect=http_equiv] DOMString httpEquiv;
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString scheme;
+    [Reflect] attribute DOMString content;
+    [Reflect=http_equiv] attribute DOMString httpEquiv;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString scheme;
 };
 
diff --git a/Source/WebCore/html/HTMLMeterElement.idl b/Source/WebCore/html/HTMLMeterElement.idl
index e2cbcfa..85d1b51 100644
--- a/Source/WebCore/html/HTMLMeterElement.idl
+++ b/Source/WebCore/html/HTMLMeterElement.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=METER_ELEMENT
-] HTMLMeterElement : HTMLElement {
+] interface HTMLMeterElement : HTMLElement {
              attribute double value
                  setter raises(DOMException);
              attribute double min
diff --git a/Source/WebCore/html/HTMLModElement.idl b/Source/WebCore/html/HTMLModElement.idl
index dc0caf1..ccb8da4 100644
--- a/Source/WebCore/html/HTMLModElement.idl
+++ b/Source/WebCore/html/HTMLModElement.idl
@@ -18,7 +18,7 @@
  */
 
 interface HTMLModElement : HTMLElement {
-    attribute [Reflect, URL] DOMString cite;
-    attribute [Reflect] DOMString dateTime;
+    [Reflect, URL] attribute DOMString cite;
+    [Reflect] attribute DOMString dateTime;
 };
 
diff --git a/Source/WebCore/html/HTMLOListElement.idl b/Source/WebCore/html/HTMLOListElement.idl
index b8eb1b1..1e51615 100644
--- a/Source/WebCore/html/HTMLOListElement.idl
+++ b/Source/WebCore/html/HTMLOListElement.idl
@@ -18,9 +18,9 @@
  */
 
 interface HTMLOListElement : HTMLElement {
-    attribute [Reflect] boolean compact;
+    [Reflect] attribute boolean compact;
     attribute long start;
-    attribute [Reflect] boolean reversed;
-    attribute [Reflect] DOMString type;
+    [Reflect] attribute boolean reversed;
+    [Reflect] attribute DOMString type;
 };
 
diff --git a/Source/WebCore/html/HTMLObjectElement.idl b/Source/WebCore/html/HTMLObjectElement.idl
index 8d8a0ff..c3c9cad 100644
--- a/Source/WebCore/html/HTMLObjectElement.idl
+++ b/Source/WebCore/html/HTMLObjectElement.idl
@@ -18,28 +18,28 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     CustomNamedSetter,
     JSCustomGetOwnPropertySlotAndDescriptor,
     CustomCall
-] HTMLObjectElement : HTMLElement {
+] interface HTMLObjectElement : HTMLElement {
     readonly attribute HTMLFormElement form;
-    attribute [Reflect] DOMString code;
-    attribute [Reflect] DOMString align;
-    attribute [Reflect] DOMString archive;
-    attribute [Reflect] DOMString border;
-    attribute [Reflect] DOMString codeBase;
-    attribute [Reflect] DOMString codeType;
-    attribute [Reflect, URL] DOMString data;
-    attribute [Reflect] boolean declare;
-    attribute [Reflect] DOMString height;
-    attribute [Reflect] long hspace;
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString standby;
-    attribute [Reflect] DOMString type;
-    attribute [Reflect] DOMString useMap;
-    attribute [Reflect] long vspace;
-    attribute [Reflect] DOMString width;
+    [Reflect] attribute DOMString code;
+    [Reflect] attribute DOMString align;
+    [Reflect] attribute DOMString archive;
+    [Reflect] attribute DOMString border;
+    [Reflect] attribute DOMString codeBase;
+    [Reflect] attribute DOMString codeType;
+    [Reflect, URL] attribute DOMString data;
+    [Reflect] attribute boolean declare;
+    [Reflect] attribute DOMString height;
+    [Reflect] attribute long hspace;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString standby;
+    [Reflect] attribute DOMString type;
+    [Reflect] attribute DOMString useMap;
+    [Reflect] attribute long vspace;
+    [Reflect] attribute DOMString width;
     readonly attribute boolean willValidate;
     readonly attribute ValidityState validity;
     readonly attribute DOMString validationMessage;
@@ -47,7 +47,7 @@
     void setCustomValidity(in [TreatNullAs=NullString, TreatUndefinedAs=NullString] DOMString error);
 
     // Introduced in DOM Level 2:
-    readonly attribute [CheckSecurityForNode] Document contentDocument;
+    [CheckSecurityForNode] readonly attribute Document contentDocument;
 
 #if defined(ENABLE_SVG) && ENABLE_SVG
 #if !defined(LANGUAGE_OBJECTIVE_C) || !LANGUAGE_OBJECTIVE_C || defined(ENABLE_SVG_DOM_OBJC_BINDINGS) && ENABLE_SVG_DOM_OBJC_BINDINGS
diff --git a/Source/WebCore/html/HTMLOptGroupElement.idl b/Source/WebCore/html/HTMLOptGroupElement.idl
index 1d154cc..26a782f 100644
--- a/Source/WebCore/html/HTMLOptGroupElement.idl
+++ b/Source/WebCore/html/HTMLOptGroupElement.idl
@@ -18,7 +18,7 @@
  */
 
 interface HTMLOptGroupElement : HTMLElement {
-    attribute [Reflect] boolean disabled;
-    attribute [Reflect] DOMString label;
+    [Reflect] attribute boolean disabled;
+    [Reflect] attribute DOMString label;
 };
 
diff --git a/Source/WebCore/html/HTMLOptionElement.idl b/Source/WebCore/html/HTMLOptionElement.idl
index 00af022..d805392 100644
--- a/Source/WebCore/html/HTMLOptionElement.idl
+++ b/Source/WebCore/html/HTMLOptionElement.idl
@@ -18,15 +18,15 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject,
     NamedConstructor=Option(in [Optional=DefaultIsNullString] DOMString data, in [Optional=DefaultIsNullString] DOMString value, in [Optional=DefaultIsUndefined] boolean defaultSelected, in [Optional=DefaultIsUndefined] boolean selected),
     ConstructorRaisesException
-] HTMLOptionElement : HTMLElement {
-    attribute [Reflect] boolean disabled;
+] interface HTMLOptionElement : HTMLElement {
+    [Reflect] attribute boolean disabled;
     readonly attribute HTMLFormElement form;
     attribute DOMString label;
-    attribute [Reflect=selected] boolean defaultSelected;
+    [Reflect=selected] attribute boolean defaultSelected;
     attribute boolean selected;
     attribute DOMString value;
 
diff --git a/Source/WebCore/html/HTMLOptionsCollection.idl b/Source/WebCore/html/HTMLOptionsCollection.idl
index 3605166..b1dc9f1 100644
--- a/Source/WebCore/html/HTMLOptionsCollection.idl
+++ b/Source/WebCore/html/HTMLOptionsCollection.idl
@@ -18,12 +18,12 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject,
     CustomIndexedSetter
-] HTMLOptionsCollection : HTMLCollection {
+] interface HTMLOptionsCollection : HTMLCollection {
              attribute long selectedIndex;
-             attribute [Custom] unsigned long length
+             [Custom] attribute unsigned long length
                     setter raises (DOMException);
 
     [Custom] void add(in [Optional=DefaultIsUndefined] HTMLOptionElement option, 
diff --git a/Source/WebCore/html/HTMLOutputElement.idl b/Source/WebCore/html/HTMLOutputElement.idl
index fc7145c..ea8312a 100644
--- a/Source/WebCore/html/HTMLOutputElement.idl
+++ b/Source/WebCore/html/HTMLOutputElement.idl
@@ -23,13 +23,13 @@
  */
 
 interface HTMLOutputElement : HTMLElement {
-    attribute [Custom] DOMSettableTokenList htmlFor;
+    [Custom] attribute DOMSettableTokenList htmlFor;
     readonly attribute HTMLFormElement form;
-    attribute [Reflect] DOMString name;
+    [Reflect] attribute DOMString name;
 
     readonly attribute DOMString type;
-    attribute [TreatNullAs=NullString] DOMString defaultValue;
-    attribute [TreatNullAs=NullString] DOMString value;
+    [TreatNullAs=NullString] attribute DOMString defaultValue;
+    [TreatNullAs=NullString] attribute DOMString value;
 
     readonly attribute boolean willValidate;
     readonly attribute ValidityState validity;
diff --git a/Source/WebCore/html/HTMLParagraphElement.idl b/Source/WebCore/html/HTMLParagraphElement.idl
index ce5de2b..e6bd9e8 100644
--- a/Source/WebCore/html/HTMLParagraphElement.idl
+++ b/Source/WebCore/html/HTMLParagraphElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLParagraphElement : HTMLElement {
-    attribute [Reflect] DOMString align;
+    [Reflect] attribute DOMString align;
 };
 
diff --git a/Source/WebCore/html/HTMLParamElement.idl b/Source/WebCore/html/HTMLParamElement.idl
index a206fb0..fea2594 100644
--- a/Source/WebCore/html/HTMLParamElement.idl
+++ b/Source/WebCore/html/HTMLParamElement.idl
@@ -18,9 +18,9 @@
  */
 
 interface HTMLParamElement : HTMLElement {
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString type;
-    attribute [Reflect] DOMString value;
-    attribute [Reflect] DOMString valueType;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString type;
+    [Reflect] attribute DOMString value;
+    [Reflect] attribute DOMString valueType;
 };
 
diff --git a/Source/WebCore/html/HTMLPreElement.idl b/Source/WebCore/html/HTMLPreElement.idl
index 3442e6658..807248c 100644
--- a/Source/WebCore/html/HTMLPreElement.idl
+++ b/Source/WebCore/html/HTMLPreElement.idl
@@ -21,9 +21,9 @@
 interface HTMLPreElement : HTMLElement {
     // FIXME: DOM spec says that width should be of type DOMString
     // see http://bugs.webkit.org/show_bug.cgi?id=8992
-    attribute [Reflect] long width;
+    [Reflect] attribute long width;
     
     // Extensions
-    attribute [Reflect] boolean wrap;
+    [Reflect] attribute boolean wrap;
 };
 
diff --git a/Source/WebCore/html/HTMLProgressElement.idl b/Source/WebCore/html/HTMLProgressElement.idl
index 6dc84dd..23a94fa 100644
--- a/Source/WebCore/html/HTMLProgressElement.idl
+++ b/Source/WebCore/html/HTMLProgressElement.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=PROGRESS_ELEMENT
-] HTMLProgressElement : HTMLElement {
+] interface HTMLProgressElement : HTMLElement {
              attribute  double                value
                  setter raises(DOMException);
              attribute  double                max
diff --git a/Source/WebCore/html/HTMLPropertiesCollection.idl b/Source/WebCore/html/HTMLPropertiesCollection.idl
index 8841886..05acae1 100644
--- a/Source/WebCore/html/HTMLPropertiesCollection.idl
+++ b/Source/WebCore/html/HTMLPropertiesCollection.idl
@@ -28,12 +28,12 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MICRODATA,
     JSGenerateToJSObject,
     IndexedGetter,
     NamedGetter
-] HTMLPropertiesCollection : HTMLCollection {
+] interface HTMLPropertiesCollection : HTMLCollection {
     readonly attribute unsigned long length;
     Node item(in unsigned long index);
 
diff --git a/Source/WebCore/html/HTMLQuoteElement.idl b/Source/WebCore/html/HTMLQuoteElement.idl
index bcd1abf..c53a1a2 100644
--- a/Source/WebCore/html/HTMLQuoteElement.idl
+++ b/Source/WebCore/html/HTMLQuoteElement.idl
@@ -18,5 +18,5 @@
  */
 
 interface HTMLQuoteElement : HTMLElement {
-    attribute [Reflect, URL] DOMString cite;
+    [Reflect, URL] attribute DOMString cite;
 };
diff --git a/Source/WebCore/html/HTMLScriptElement.idl b/Source/WebCore/html/HTMLScriptElement.idl
index c002d8f..1365d12 100644
--- a/Source/WebCore/html/HTMLScriptElement.idl
+++ b/Source/WebCore/html/HTMLScriptElement.idl
@@ -18,14 +18,14 @@
  */
 
 interface HTMLScriptElement : HTMLElement {
-    attribute [TreatNullAs=NullString] DOMString text;
-    attribute [Reflect=for] DOMString htmlFor;
-    attribute [Reflect] DOMString event;
-    attribute [Reflect] DOMString charset;
+    [TreatNullAs=NullString] attribute DOMString text;
+    [Reflect=for] attribute DOMString htmlFor;
+    [Reflect] attribute DOMString event;
+    [Reflect] attribute DOMString charset;
     attribute boolean async;
-    attribute [Reflect] boolean defer;
-    attribute [Reflect, URL] DOMString src;
-    attribute [Reflect] DOMString type;
-    attribute [Reflect] DOMString crossOrigin;
-    attribute [Reflect, Conditional=CSP_NEXT] DOMString nonce;
+    [Reflect] attribute boolean defer;
+    [Reflect, URL] attribute DOMString src;
+    [Reflect] attribute DOMString type;
+    [Reflect] attribute DOMString crossOrigin;
+    [Reflect, Conditional=CSP_NEXT] attribute DOMString nonce;
 };
diff --git a/Source/WebCore/html/HTMLSelectElement.idl b/Source/WebCore/html/HTMLSelectElement.idl
index 861d332..ac7f989 100644
--- a/Source/WebCore/html/HTMLSelectElement.idl
+++ b/Source/WebCore/html/HTMLSelectElement.idl
@@ -18,10 +18,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     IndexedGetter,
     CustomIndexedSetter
-] HTMLSelectElement : HTMLElement {
+] interface HTMLSelectElement : HTMLElement {
     attribute [Reflect] boolean autofocus;
     attribute [Reflect] boolean disabled;
     readonly attribute HTMLFormElement form;
@@ -53,7 +53,7 @@
 #endif
     readonly attribute HTMLCollection selectedOptions;
     attribute long selectedIndex;
-    attribute [TreatNullAs=NullString] DOMString value;
+    [TreatNullAs=NullString] attribute DOMString value;
 
     readonly attribute boolean willValidate;
     readonly attribute ValidityState validity;
diff --git a/Source/WebCore/html/HTMLSourceElement.idl b/Source/WebCore/html/HTMLSourceElement.idl
index d28274b..d7880e4 100644
--- a/Source/WebCore/html/HTMLSourceElement.idl
+++ b/Source/WebCore/html/HTMLSourceElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO,
-] HTMLSourceElement : HTMLElement {
+] interface HTMLSourceElement : HTMLElement {
 attribute [Reflect, URL] DOMString src;
 attribute DOMString type;
 attribute DOMString media;
diff --git a/Source/WebCore/html/HTMLStyleElement.idl b/Source/WebCore/html/HTMLStyleElement.idl
index 59c6579..a14165d 100644
--- a/Source/WebCore/html/HTMLStyleElement.idl
+++ b/Source/WebCore/html/HTMLStyleElement.idl
@@ -20,9 +20,9 @@
 
 interface HTMLStyleElement : HTMLElement {
     attribute boolean disabled;
-    attribute [Conditional=STYLE_SCOPED, V8EnabledAtRuntime=styleScoped] boolean scoped;
-    attribute [Reflect] DOMString media;
-    attribute [Reflect] DOMString type;
+    [Conditional=STYLE_SCOPED, V8EnabledAtRuntime=styleScoped] attribute boolean scoped;
+    [Reflect] attribute DOMString media;
+    [Reflect] attribute DOMString type;
 
     // DOM Level 2 Style
     readonly attribute StyleSheet sheet;
diff --git a/Source/WebCore/html/HTMLTableCaptionElement.idl b/Source/WebCore/html/HTMLTableCaptionElement.idl
index 6c8ec8f..d9b3aa5 100644
--- a/Source/WebCore/html/HTMLTableCaptionElement.idl
+++ b/Source/WebCore/html/HTMLTableCaptionElement.idl
@@ -18,9 +18,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject
-] HTMLTableCaptionElement : HTMLElement {
-    attribute [Reflect] DOMString align;
+] interface HTMLTableCaptionElement : HTMLElement {
+    [Reflect] attribute DOMString align;
 };
 
diff --git a/Source/WebCore/html/HTMLTableCellElement.idl b/Source/WebCore/html/HTMLTableCellElement.idl
index 7df363c..3b949f3 100644
--- a/Source/WebCore/html/HTMLTableCellElement.idl
+++ b/Source/WebCore/html/HTMLTableCellElement.idl
@@ -20,19 +20,19 @@
 
 interface HTMLTableCellElement : HTMLElement {
     readonly attribute long cellIndex;
-    attribute [Reflect] DOMString abbr;
-    attribute [Reflect] DOMString align;
-    attribute [Reflect] DOMString axis;
-    attribute [Reflect] DOMString bgColor;
-    attribute [Reflect=char] DOMString ch;
-    attribute [Reflect=charoff] DOMString chOff;
+    [Reflect] attribute DOMString abbr;
+    [Reflect] attribute DOMString align;
+    [Reflect] attribute DOMString axis;
+    [Reflect] attribute DOMString bgColor;
+    [Reflect=char] attribute DOMString ch;
+    [Reflect=charoff] attribute DOMString chOff;
     attribute long colSpan;
-    attribute [Reflect] DOMString headers;
-    attribute [Reflect] DOMString height;
-    attribute [Reflect] boolean noWrap;
+    [Reflect] attribute DOMString headers;
+    [Reflect] attribute DOMString height;
+    [Reflect] attribute boolean noWrap;
     attribute long rowSpan;
-    attribute [Reflect] DOMString scope;
-    attribute [Reflect] DOMString vAlign;
-    attribute [Reflect] DOMString width;
+    [Reflect] attribute DOMString scope;
+    [Reflect] attribute DOMString vAlign;
+    [Reflect] attribute DOMString width;
 };
 
diff --git a/Source/WebCore/html/HTMLTableColElement.idl b/Source/WebCore/html/HTMLTableColElement.idl
index 945dd5b..725e05d 100644
--- a/Source/WebCore/html/HTMLTableColElement.idl
+++ b/Source/WebCore/html/HTMLTableColElement.idl
@@ -19,11 +19,11 @@
  */
 
 interface HTMLTableColElement : HTMLElement {
-    attribute [Reflect] DOMString align;
-    attribute [Reflect=char] DOMString ch;
-    attribute [Reflect=charoff] DOMString chOff;
+    [Reflect] attribute DOMString align;
+    [Reflect=char] attribute DOMString ch;
+    [Reflect=charoff] attribute DOMString chOff;
     attribute long span;
-    attribute [Reflect] DOMString vAlign;
-    attribute [Reflect] DOMString width;
+    [Reflect] attribute DOMString vAlign;
+    [Reflect] attribute DOMString width;
 };
 
diff --git a/Source/WebCore/html/HTMLTableElement.idl b/Source/WebCore/html/HTMLTableElement.idl
index 0a8c9cf..470af56 100644
--- a/Source/WebCore/html/HTMLTableElement.idl
+++ b/Source/WebCore/html/HTMLTableElement.idl
@@ -25,17 +25,17 @@
 
     readonly attribute HTMLCollection rows;
     readonly attribute HTMLCollection tBodies;
-    attribute [Reflect] DOMString align;
-    attribute [Reflect] DOMString bgColor;
-    attribute [Reflect] DOMString border;
-    attribute [Reflect] DOMString cellPadding;
-    attribute [Reflect] DOMString cellSpacing;
+    [Reflect] attribute DOMString align;
+    [Reflect] attribute DOMString bgColor;
+    [Reflect] attribute DOMString border;
+    [Reflect] attribute DOMString cellPadding;
+    [Reflect] attribute DOMString cellSpacing;
 
-    attribute [Reflect] DOMString frame;
+    [Reflect] attribute DOMString frame;
 
-    attribute [Reflect] DOMString rules;
-    attribute [Reflect] DOMString summary;
-    attribute [Reflect] DOMString width;
+    [Reflect] attribute DOMString rules;
+    [Reflect] attribute DOMString summary;
+    [Reflect] attribute DOMString width;
 
     HTMLElement createTHead();
     void deleteTHead();
diff --git a/Source/WebCore/html/HTMLTableRowElement.idl b/Source/WebCore/html/HTMLTableRowElement.idl
index b62da5b..15f054f 100644
--- a/Source/WebCore/html/HTMLTableRowElement.idl
+++ b/Source/WebCore/html/HTMLTableRowElement.idl
@@ -22,11 +22,11 @@
     readonly attribute long rowIndex;
     readonly attribute long sectionRowIndex;
     readonly attribute HTMLCollection cells;
-    attribute [Reflect] DOMString align;
-    attribute [Reflect] DOMString bgColor;
-    attribute [Reflect=char] DOMString ch;
-    attribute [Reflect=charoff] DOMString chOff;
-    attribute [Reflect] DOMString vAlign;
+    [Reflect] attribute DOMString align;
+    [Reflect] attribute DOMString bgColor;
+    [Reflect=char] attribute DOMString ch;
+    [Reflect=charoff] attribute DOMString chOff;
+    [Reflect] attribute DOMString vAlign;
     HTMLElement insertCell(in [Optional=DefaultIsUndefined] long index) raises(DOMException);
     void deleteCell(in [Optional=DefaultIsUndefined] long index) raises(DOMException);
 };
diff --git a/Source/WebCore/html/HTMLTableSectionElement.idl b/Source/WebCore/html/HTMLTableSectionElement.idl
index 1850802..d11f429 100644
--- a/Source/WebCore/html/HTMLTableSectionElement.idl
+++ b/Source/WebCore/html/HTMLTableSectionElement.idl
@@ -18,13 +18,13 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject
-] HTMLTableSectionElement : HTMLElement {
-    attribute [Reflect] DOMString align;
-    attribute [Reflect=char] DOMString ch;
-    attribute [Reflect=charoff] DOMString chOff;
-    attribute [Reflect] DOMString vAlign;
+] interface HTMLTableSectionElement : HTMLElement {
+    [Reflect] attribute DOMString align;
+    [Reflect=char] attribute DOMString ch;
+    [Reflect=charoff] attribute DOMString chOff;
+    [Reflect] attribute DOMString vAlign;
     readonly attribute HTMLCollection rows;
     HTMLElement insertRow(in [Optional=DefaultIsUndefined] long index) raises(DOMException);
     void deleteRow(in [Optional=DefaultIsUndefined] long index) raises(DOMException);
diff --git a/Source/WebCore/html/HTMLTextAreaElement.idl b/Source/WebCore/html/HTMLTextAreaElement.idl
index 7b8627f..df8867a 100644
--- a/Source/WebCore/html/HTMLTextAreaElement.idl
+++ b/Source/WebCore/html/HTMLTextAreaElement.idl
@@ -20,22 +20,22 @@
  */
 
 interface HTMLTextAreaElement : HTMLElement {
-    attribute [Reflect] boolean autofocus;
+    [Reflect] attribute boolean autofocus;
     attribute long cols;
-    attribute [Reflect] DOMString dirName;
-    attribute [Reflect] boolean disabled;
+    [Reflect] attribute DOMString dirName;
+    [Reflect] attribute boolean disabled;
     readonly attribute HTMLFormElement form;
     attribute long maxLength setter raises(DOMException);
-    attribute [Reflect] DOMString name;
-    attribute [Reflect] DOMString placeholder;
-    attribute [Reflect] boolean readOnly;
-    attribute [Reflect] boolean required;
+    [Reflect] attribute DOMString name;
+    [Reflect] attribute DOMString placeholder;
+    [Reflect] attribute boolean readOnly;
+    [Reflect] attribute boolean required;
     attribute long rows;
-    attribute [Reflect] DOMString wrap;
+    [Reflect] attribute DOMString wrap;
 
     readonly attribute DOMString type;
-    attribute [TreatNullAs=NullString] DOMString defaultValue;
-    attribute [TreatNullAs=NullString] DOMString value;
+    [TreatNullAs=NullString] attribute DOMString defaultValue;
+    [TreatNullAs=NullString] attribute DOMString value;
     readonly attribute unsigned long textLength;
 
     readonly attribute boolean willValidate;
@@ -59,6 +59,6 @@
 #endif
 
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
-    attribute [Reflect] DOMString accessKey;
+    [Reflect] attribute DOMString accessKey;
 #endif
 };
diff --git a/Source/WebCore/html/HTMLTitleElement.idl b/Source/WebCore/html/HTMLTitleElement.idl
index 57c3874..f5639fe 100644
--- a/Source/WebCore/html/HTMLTitleElement.idl
+++ b/Source/WebCore/html/HTMLTitleElement.idl
@@ -18,6 +18,6 @@
  */
 
 interface HTMLTitleElement : HTMLElement {
-    attribute  [TreatNullAs=NullString] DOMString            text;
+    [TreatNullAs=NullString] attribute DOMString            text;
 };
 
diff --git a/Source/WebCore/html/HTMLTrackElement.idl b/Source/WebCore/html/HTMLTrackElement.idl
index 3efdfe4..07b781b 100644
--- a/Source/WebCore/html/HTMLTrackElement.idl
+++ b/Source/WebCore/html/HTMLTrackElement.idl
@@ -23,15 +23,15 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=VIDEO_TRACK,
     V8EnabledAtRuntime=webkitVideoTrack
-] HTMLTrackElement : HTMLElement {
+] interface HTMLTrackElement : HTMLElement {
     attribute DOMString kind;
-    attribute [Reflect, URL] DOMString src;
+    [Reflect, URL] attribute DOMString src;
     attribute DOMString srclang;
     attribute DOMString label;
-    attribute [Reflect] boolean default;
+    [Reflect] attribute boolean default;
 
     const unsigned short NONE = 0;
     const unsigned short LOADING = 1;
diff --git a/Source/WebCore/html/HTMLUListElement.idl b/Source/WebCore/html/HTMLUListElement.idl
index 3465259..e40350d 100644
--- a/Source/WebCore/html/HTMLUListElement.idl
+++ b/Source/WebCore/html/HTMLUListElement.idl
@@ -18,7 +18,7 @@
  */
 
 interface HTMLUListElement : HTMLElement {
-    attribute [Reflect] boolean compact;
-    attribute [Reflect] DOMString type;
+    [Reflect] attribute boolean compact;
+    [Reflect] attribute DOMString type;
 };
 
diff --git a/Source/WebCore/html/HTMLVideoElement.idl b/Source/WebCore/html/HTMLVideoElement.idl
index cc50ef4..dba4408 100644
--- a/Source/WebCore/html/HTMLVideoElement.idl
+++ b/Source/WebCore/html/HTMLVideoElement.idl
@@ -23,15 +23,15 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO,
     JSGenerateToNativeObject
-] HTMLVideoElement : HTMLMediaElement {
-    attribute [Reflect] unsigned long width;
-    attribute [Reflect] unsigned long height;
+] interface HTMLVideoElement : HTMLMediaElement {
+    [Reflect] attribute unsigned long width;
+    [Reflect] attribute unsigned long height;
     readonly attribute unsigned long videoWidth;
     readonly attribute unsigned long videoHeight;
-    attribute [Reflect, URL] DOMString poster;
+    [Reflect, URL] attribute DOMString poster;
 
     readonly attribute boolean webkitSupportsFullscreen;
     readonly attribute boolean webkitDisplayingFullscreen;
@@ -45,9 +45,9 @@
 
     // The number of frames that have been decoded and made available for
     // playback.
-    readonly attribute [Conditional=MEDIA_STATISTICS] unsigned long webkitDecodedFrameCount;
+    [Conditional=MEDIA_STATISTICS] readonly attribute unsigned long webkitDecodedFrameCount;
 
     // The number of decoded frames that have been dropped by the player
     // for performance reasons during playback.
-    readonly attribute [Conditional=MEDIA_STATISTICS] unsigned long webkitDroppedFrameCount;
+    [Conditional=MEDIA_STATISTICS] readonly attribute unsigned long webkitDroppedFrameCount;
 };
diff --git a/Source/WebCore/html/ImageData.idl b/Source/WebCore/html/ImageData.idl
index 022facf..ca3195f 100644
--- a/Source/WebCore/html/ImageData.idl
+++ b/Source/WebCore/html/ImageData.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     CustomToJSObject
-] ImageData {
+] interface ImageData {
     readonly attribute long width;
     readonly attribute long height;
 #if !defined(LANGUAGE_JAVASCRIPT) || !LANGUAGE_JAVASCRIPT
diff --git a/Source/WebCore/html/MediaController.idl b/Source/WebCore/html/MediaController.idl
index 2ed3b45..31443a1 100644
--- a/Source/WebCore/html/MediaController.idl
+++ b/Source/WebCore/html/MediaController.idl
@@ -23,13 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO,
     Constructor,
     CallWith=ScriptExecutionContext,
     JSGenerateToJSObject,
     EventTarget
-] MediaController {
+] interface MediaController {
     readonly attribute TimeRanges buffered;
     readonly attribute TimeRanges seekable;
 
diff --git a/Source/WebCore/html/MediaError.idl b/Source/WebCore/html/MediaError.idl
index 484d5b8..95e7c84 100644
--- a/Source/WebCore/html/MediaError.idl
+++ b/Source/WebCore/html/MediaError.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO
-] MediaError {
+] interface MediaError {
       const unsigned short MEDIA_ERR_ABORTED = 1;
       const unsigned short MEDIA_ERR_NETWORK = 2;
       const unsigned short MEDIA_ERR_DECODE = 3;
diff --git a/Source/WebCore/html/MediaKeyError.idl b/Source/WebCore/html/MediaKeyError.idl
index d57a7a2..5877d52 100644
--- a/Source/WebCore/html/MediaKeyError.idl
+++ b/Source/WebCore/html/MediaKeyError.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=ENCRYPTED_MEDIA,
     V8EnabledAtRuntime=encryptedMedia, 
-] MediaKeyError {
+] interface MediaKeyError {
     const unsigned short MEDIA_KEYERR_UNKNOWN = 1;
     const unsigned short MEDIA_KEYERR_CLIENT = 2;
     const unsigned short MEDIA_KEYERR_SERVICE = 3;
diff --git a/Source/WebCore/html/MediaKeyEvent.idl b/Source/WebCore/html/MediaKeyEvent.idl
index 01dee73..f4d0d86 100644
--- a/Source/WebCore/html/MediaKeyEvent.idl
+++ b/Source/WebCore/html/MediaKeyEvent.idl
@@ -23,17 +23,17 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=ENCRYPTED_MEDIA,
     V8EnabledAtRuntime=encryptedMedia,
     ConstructorTemplate=Event 
-] MediaKeyEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMString keySystem;
-    readonly attribute [InitializedByEventConstructor] DOMString sessionId;
-    readonly attribute [InitializedByEventConstructor] Uint8Array initData;
-    readonly attribute [InitializedByEventConstructor] Uint8Array message;
-    readonly attribute [InitializedByEventConstructor] DOMString defaultURL;
-    readonly attribute [InitializedByEventConstructor] MediaKeyError errorCode;
-    readonly attribute [InitializedByEventConstructor] unsigned short systemCode;
+] interface MediaKeyEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMString keySystem;
+    [InitializedByEventConstructor] readonly attribute DOMString sessionId;
+    [InitializedByEventConstructor] readonly attribute Uint8Array initData;
+    [InitializedByEventConstructor] readonly attribute Uint8Array message;
+    [InitializedByEventConstructor] readonly attribute DOMString defaultURL;
+    [InitializedByEventConstructor] readonly attribute MediaKeyError errorCode;
+    [InitializedByEventConstructor] readonly attribute unsigned short systemCode;
 };
 
diff --git a/Source/WebCore/html/MicroDataItemValue.idl b/Source/WebCore/html/MicroDataItemValue.idl
index b2b4e49..5b29ed5 100644
--- a/Source/WebCore/html/MicroDataItemValue.idl
+++ b/Source/WebCore/html/MicroDataItemValue.idl
@@ -28,9 +28,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=MICRODATA,
     CustomToJSObject,
     OmitConstructor
-] MicroDataItemValue {
+] interface MicroDataItemValue {
 };
diff --git a/Source/WebCore/html/RadioNodeList.idl b/Source/WebCore/html/RadioNodeList.idl
index b13ccb3..7cae485 100644
--- a/Source/WebCore/html/RadioNodeList.idl
+++ b/Source/WebCore/html/RadioNodeList.idl
@@ -23,9 +23,9 @@
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     JSGenerateToJSObject,
     IndexedGetter,
-] RadioNodeList : NodeList {
+] interface RadioNodeList : NodeList {
     attribute DOMString value;
 };
diff --git a/Source/WebCore/html/TimeRanges.idl b/Source/WebCore/html/TimeRanges.idl
index d5a1003..97cd461 100644
--- a/Source/WebCore/html/TimeRanges.idl
+++ b/Source/WebCore/html/TimeRanges.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO
-] TimeRanges {
+] interface TimeRanges {
     readonly attribute unsigned long length;
     float start(in unsigned long index)
         raises (DOMException);
diff --git a/Source/WebCore/html/ValidityState.idl b/Source/WebCore/html/ValidityState.idl
index f28cadc..dae343b 100644
--- a/Source/WebCore/html/ValidityState.idl
+++ b/Source/WebCore/html/ValidityState.idl
@@ -20,9 +20,9 @@
  *
  */
 
-interface [
+[
     OmitConstructor
-] ValidityState {
+] interface ValidityState {
     readonly attribute boolean         valueMissing;
     readonly attribute boolean         typeMismatch;
     readonly attribute boolean         patternMismatch;
diff --git a/Source/WebCore/html/VoidCallback.idl b/Source/WebCore/html/VoidCallback.idl
index 0d196f0..31a2215 100644
--- a/Source/WebCore/html/VoidCallback.idl
+++ b/Source/WebCore/html/VoidCallback.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Callback
-] VoidCallback {
+] interface VoidCallback {
     boolean handleEvent();
 };
diff --git a/Source/WebCore/html/canvas/ArrayBuffer.idl b/Source/WebCore/html/canvas/ArrayBuffer.idl
index 8f32f78..b3f013b 100644
--- a/Source/WebCore/html/canvas/ArrayBuffer.idl
+++ b/Source/WebCore/html/canvas/ArrayBuffer.idl
@@ -23,12 +23,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     JSGenerateIsReachable=Impl,
     CustomConstructor,
     ConstructorParameters=1,
     JSNoStaticTables
-] ArrayBuffer {
+] interface ArrayBuffer {
     readonly attribute unsigned long byteLength;
     ArrayBuffer slice(in long begin, in [Optional] long end);
 };
diff --git a/Source/WebCore/html/canvas/ArrayBufferView.idl b/Source/WebCore/html/canvas/ArrayBufferView.idl
index 7144251..1c18e18 100644
--- a/Source/WebCore/html/canvas/ArrayBufferView.idl
+++ b/Source/WebCore/html/canvas/ArrayBufferView.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     CustomToJSObject,
     JSNoStaticTables,
     OmitConstructor
-] ArrayBufferView {
+] interface ArrayBufferView {
     readonly attribute ArrayBuffer buffer;
     readonly attribute unsigned long byteOffset;
     readonly attribute unsigned long byteLength;
diff --git a/Source/WebCore/html/canvas/CanvasRenderingContext.idl b/Source/WebCore/html/canvas/CanvasRenderingContext.idl
index 0e981de4..c48e681 100644
--- a/Source/WebCore/html/canvas/CanvasRenderingContext.idl
+++ b/Source/WebCore/html/canvas/CanvasRenderingContext.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     JSCustomMarkFunction,
     JSGenerateIsReachable,
     CustomToJSObject
-] CanvasRenderingContext {
+] interface CanvasRenderingContext {
     readonly attribute HTMLCanvasElement canvas;
 };
 
diff --git a/Source/WebCore/html/canvas/CanvasRenderingContext2D.idl b/Source/WebCore/html/canvas/CanvasRenderingContext2D.idl
index d800614..6bfc594 100644
--- a/Source/WebCore/html/canvas/CanvasRenderingContext2D.idl
+++ b/Source/WebCore/html/canvas/CanvasRenderingContext2D.idl
@@ -47,7 +47,7 @@
                       in [Optional=DefaultIsUndefined] float dy);
 
     attribute float globalAlpha;
-    attribute [TreatNullAs=NullString] DOMString globalCompositeOperation;
+    [TreatNullAs=NullString] attribute DOMString globalCompositeOperation;
 
     CanvasGradient createLinearGradient(in [Optional=DefaultIsUndefined] float x0,
                                         in [Optional=DefaultIsUndefined] float y0,
@@ -63,14 +63,14 @@
         raises (DOMException);
 
     attribute float lineWidth;
-    attribute [TreatNullAs=NullString] DOMString lineCap;
-    attribute [TreatNullAs=NullString] DOMString lineJoin;
+    [TreatNullAs=NullString] attribute DOMString lineCap;
+    [TreatNullAs=NullString] attribute DOMString lineJoin;
     attribute float miterLimit;
 
     attribute float shadowOffsetX;
     attribute float shadowOffsetY;
     attribute float shadowBlur;
-    attribute [TreatNullAs=NullString] DOMString shadowColor;
+    [TreatNullAs=NullString] attribute DOMString shadowColor;
 
     void setLineDash(in sequence<float> dash);
     sequence<float> getLineDash();
@@ -78,7 +78,7 @@
 
     // FIXME: These attributes should also be implemented for V8.
 #if !(defined(V8_BINDING) && V8_BINDING)
-    attribute [Custom] Array webkitLineDash;
+    [Custom] attribute Array webkitLineDash;
     attribute float webkitLineDashOffset;
 #endif
 
@@ -220,8 +220,8 @@
     ImageData createImageData(in float sw, in float sh)
         raises (DOMException);
 
-    attribute [Custom] custom strokeStyle;
-    attribute [Custom] custom fillStyle;
+    [Custom] attribute custom strokeStyle;
+    [Custom] attribute custom fillStyle;
 
     // pixel manipulation
     ImageData getImageData(in [Optional=DefaultIsUndefined] float sx, in [Optional=DefaultIsUndefined] float sy,
diff --git a/Source/WebCore/html/canvas/DataView.idl b/Source/WebCore/html/canvas/DataView.idl
index da60e68..e4ad072 100755
--- a/Source/WebCore/html/canvas/DataView.idl
+++ b/Source/WebCore/html/canvas/DataView.idl
@@ -23,12 +23,12 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     CustomConstructor,
     ConstructorParameters=3,
     CustomToJSObject,
     JSNoStaticTables
-] DataView : ArrayBufferView {
+] interface DataView : ArrayBufferView {
     // All these methods raise an exception if they would read or write beyond the end of the view.
 
     // We have to use custom code because our code generator does not support int8_t type.
diff --git a/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.idl b/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.idl
index a8a91ec..07668e7 100644
--- a/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.idl
+++ b/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.idl
@@ -23,12 +23,12 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSGenerateIsReachable=ImplContext,
     OmitConstructor,
     DoNotCheckConstants
-] EXTTextureFilterAnisotropic {
+] interface EXTTextureFilterAnisotropic {
     const unsigned int TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE;
     const unsigned int MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF;
 };
diff --git a/Source/WebCore/html/canvas/Float32Array.idl b/Source/WebCore/html/canvas/Float32Array.idl
index 95ec8b1..e37f42d 100644
--- a/Source/WebCore/html/canvas/Float32Array.idl
+++ b/Source/WebCore/html/canvas/Float32Array.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=float
-] Float32Array : ArrayBufferView {
+] interface Float32Array : ArrayBufferView {
     const unsigned long BYTES_PER_ELEMENT = 4;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/Float64Array.idl b/Source/WebCore/html/canvas/Float64Array.idl
index 4e9cdf1..0b938b5 100644
--- a/Source/WebCore/html/canvas/Float64Array.idl
+++ b/Source/WebCore/html/canvas/Float64Array.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=double
-] Float64Array : ArrayBufferView {
+] interface Float64Array : ArrayBufferView {
     const unsigned long BYTES_PER_ELEMENT = 8;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/Int16Array.idl b/Source/WebCore/html/canvas/Int16Array.idl
index 0e79076..07789d3 100644
--- a/Source/WebCore/html/canvas/Int16Array.idl
+++ b/Source/WebCore/html/canvas/Int16Array.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -33,7 +33,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=short
-] Int16Array : ArrayBufferView {
+] interface Int16Array : ArrayBufferView {
     const unsigned long BYTES_PER_ELEMENT = 2;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/Int32Array.idl b/Source/WebCore/html/canvas/Int32Array.idl
index faa9f5f..6ef836a 100644
--- a/Source/WebCore/html/canvas/Int32Array.idl
+++ b/Source/WebCore/html/canvas/Int32Array.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=int
-] Int32Array : ArrayBufferView {
+] interface Int32Array : ArrayBufferView {
     const unsigned long BYTES_PER_ELEMENT = 4;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/Int8Array.idl b/Source/WebCore/html/canvas/Int8Array.idl
index d256c25..8b38ca3 100644
--- a/Source/WebCore/html/canvas/Int8Array.idl
+++ b/Source/WebCore/html/canvas/Int8Array.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=signed char
-] Int8Array : ArrayBufferView {
+] interface Int8Array : ArrayBufferView {
     const unsigned long BYTES_PER_ELEMENT = 1;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/OESStandardDerivatives.idl b/Source/WebCore/html/canvas/OESStandardDerivatives.idl
index 186c6a6..c4eb48d 100644
--- a/Source/WebCore/html/canvas/OESStandardDerivatives.idl
+++ b/Source/WebCore/html/canvas/OESStandardDerivatives.idl
@@ -23,11 +23,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSGenerateIsReachable=ImplContext,
     OmitConstructor,
     DoNotCheckConstants
-] OESStandardDerivatives {
+] interface OESStandardDerivatives {
     const unsigned int FRAGMENT_SHADER_DERIVATIVE_HINT_OES = 0x8B8B;
 };
diff --git a/Source/WebCore/html/canvas/OESTextureFloat.idl b/Source/WebCore/html/canvas/OESTextureFloat.idl
index 7242aa2..2d1b3c5 100644
--- a/Source/WebCore/html/canvas/OESTextureFloat.idl
+++ b/Source/WebCore/html/canvas/OESTextureFloat.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSGenerateIsReachable=ImplContext,
     OmitConstructor
-] OESTextureFloat {
+] interface OESTextureFloat {
 };
diff --git a/Source/WebCore/html/canvas/OESVertexArrayObject.idl b/Source/WebCore/html/canvas/OESVertexArrayObject.idl
index b82c37a..f233906 100644
--- a/Source/WebCore/html/canvas/OESVertexArrayObject.idl
+++ b/Source/WebCore/html/canvas/OESVertexArrayObject.idl
@@ -23,12 +23,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL, 
     JSGenerateIsReachable=ImplContext,
     OmitConstructor, 
     DoNotCheckConstants
-] OESVertexArrayObject {
+] interface OESVertexArrayObject {
     const unsigned int VERTEX_ARRAY_BINDING_OES = 0x85B5;
     
     [StrictTypeChecking] WebGLVertexArrayObjectOES createVertexArrayOES();
diff --git a/Source/WebCore/html/canvas/Uint16Array.idl b/Source/WebCore/html/canvas/Uint16Array.idl
index 19de861..4e08022 100644
--- a/Source/WebCore/html/canvas/Uint16Array.idl
+++ b/Source/WebCore/html/canvas/Uint16Array.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=unsigned short
-] Uint16Array : ArrayBufferView {
+] interface Uint16Array : ArrayBufferView {
     const unsigned long BYTES_PER_ELEMENT = 2;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/Uint32Array.idl b/Source/WebCore/html/canvas/Uint32Array.idl
index 1b615a6..8d34293 100644
--- a/Source/WebCore/html/canvas/Uint32Array.idl
+++ b/Source/WebCore/html/canvas/Uint32Array.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=unsigned int
-] Uint32Array : ArrayBufferView {
+] interface Uint32Array : ArrayBufferView {
     const unsigned long BYTES_PER_ELEMENT = 4;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/Uint8Array.idl b/Source/WebCore/html/canvas/Uint8Array.idl
index c6a1def..65d2312 100644
--- a/Source/WebCore/html/canvas/Uint8Array.idl
+++ b/Source/WebCore/html/canvas/Uint8Array.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=unsigned char
-] Uint8Array : ArrayBufferView {
+] interface Uint8Array : ArrayBufferView {
     const unsigned long BYTES_PER_ELEMENT = 1;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/Uint8ClampedArray.idl b/Source/WebCore/html/canvas/Uint8ClampedArray.idl
index bb4b381..efcc98a 100644
--- a/Source/WebCore/html/canvas/Uint8ClampedArray.idl
+++ b/Source/WebCore/html/canvas/Uint8ClampedArray.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     ConstructorTemplate=TypedArray,
     ConstructorParameters=1,
     NumericIndexedGetter,
@@ -34,7 +34,7 @@
     CustomToJSObject,
     DoNotCheckConstants,
     TypedArray=unsigned char
-] Uint8ClampedArray : Uint8Array {
+] interface Uint8ClampedArray : Uint8Array {
     const unsigned long BYTES_PER_ELEMENT = 1;
 
     readonly attribute unsigned long length;
diff --git a/Source/WebCore/html/canvas/WebGLActiveInfo.idl b/Source/WebCore/html/canvas/WebGLActiveInfo.idl
index baa435f..47789bd 100644
--- a/Source/WebCore/html/canvas/WebGLActiveInfo.idl
+++ b/Source/WebCore/html/canvas/WebGLActiveInfo.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL,
-] WebGLActiveInfo {
+] interface WebGLActiveInfo {
     readonly attribute long size;
     readonly attribute unsigned long type;
     readonly attribute DOMString name;
diff --git a/Source/WebCore/html/canvas/WebGLBuffer.idl b/Source/WebCore/html/canvas/WebGLBuffer.idl
index 9c55d97..f43cd63 100644
--- a/Source/WebCore/html/canvas/WebGLBuffer.idl
+++ b/Source/WebCore/html/canvas/WebGLBuffer.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL,
-] WebGLBuffer {
+] interface WebGLBuffer {
 };
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.idl b/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.idl
index 7d607de..6642d28 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.idl
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.idl
@@ -23,12 +23,12 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSGenerateIsReachable=ImplContext,
     OmitConstructor,
     DoNotCheckConstants
-] WebGLCompressedTextureS3TC {
+] interface WebGLCompressedTextureS3TC {
     /* Compressed Texture Formats */
     const unsigned int COMPRESSED_RGB_S3TC_DXT1_EXT        = 0x83F0;
     const unsigned int COMPRESSED_RGBA_S3TC_DXT1_EXT       = 0x83F1;
diff --git a/Source/WebCore/html/canvas/WebGLContextAttributes.idl b/Source/WebCore/html/canvas/WebGLContextAttributes.idl
index 4eeeb7c..52dd041 100644
--- a/Source/WebCore/html/canvas/WebGLContextAttributes.idl
+++ b/Source/WebCore/html/canvas/WebGLContextAttributes.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     OmitConstructor
-] WebGLContextAttributes {
+] interface WebGLContextAttributes {
     attribute boolean alpha;
     attribute boolean depth;
     attribute boolean stencil;
diff --git a/Source/WebCore/html/canvas/WebGLContextEvent.idl b/Source/WebCore/html/canvas/WebGLContextEvent.idl
index 6cdb9fb..c3eba10 100644
--- a/Source/WebCore/html/canvas/WebGLContextEvent.idl
+++ b/Source/WebCore/html/canvas/WebGLContextEvent.idl
@@ -23,10 +23,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     ConstructorTemplate=Event
-] WebGLContextEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMString statusMessage;
+] interface WebGLContextEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMString statusMessage;
 };
 
diff --git a/Source/WebCore/html/canvas/WebGLDebugRendererInfo.idl b/Source/WebCore/html/canvas/WebGLDebugRendererInfo.idl
index bfc24af..c7ae7f8 100644
--- a/Source/WebCore/html/canvas/WebGLDebugRendererInfo.idl
+++ b/Source/WebCore/html/canvas/WebGLDebugRendererInfo.idl
@@ -23,12 +23,12 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSGenerateIsReachable=ImplContext,
     OmitConstructor,
     DoNotCheckConstants
-] WebGLDebugRendererInfo {
+] interface WebGLDebugRendererInfo {
     const unsigned int UNMASKED_VENDOR_WEBGL = 0x9245;
     const unsigned int UNMASKED_RENDERER_WEBGL = 0x9246;
 };
diff --git a/Source/WebCore/html/canvas/WebGLDebugShaders.idl b/Source/WebCore/html/canvas/WebGLDebugShaders.idl
index f0dc325..ed52d4d 100644
--- a/Source/WebCore/html/canvas/WebGLDebugShaders.idl
+++ b/Source/WebCore/html/canvas/WebGLDebugShaders.idl
@@ -23,10 +23,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSGenerateIsReachable=ImplContext,
     OmitConstructor
-] WebGLDebugShaders {
+] interface WebGLDebugShaders {
     [StrictTypeChecking, TreatReturnedNullStringAs=Null] DOMString getTranslatedShaderSource(in WebGLShader shader) raises(DOMException);
 };
diff --git a/Source/WebCore/html/canvas/WebGLDepthTexture.idl b/Source/WebCore/html/canvas/WebGLDepthTexture.idl
index c5abf7f..45069ac 100644
--- a/Source/WebCore/html/canvas/WebGLDepthTexture.idl
+++ b/Source/WebCore/html/canvas/WebGLDepthTexture.idl
@@ -23,11 +23,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSGenerateIsReachable=ImplContext,
     OmitConstructor,
     DoNotCheckConstants
-] WebGLDepthTexture {
+] interface WebGLDepthTexture {
     const unsigned int UNSIGNED_INT_24_8_WEBGL = 0x84FA;
 };
diff --git a/Source/WebCore/html/canvas/WebGLFramebuffer.idl b/Source/WebCore/html/canvas/WebGLFramebuffer.idl
index 8bb294c..e609513 100644
--- a/Source/WebCore/html/canvas/WebGLFramebuffer.idl
+++ b/Source/WebCore/html/canvas/WebGLFramebuffer.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL
-] WebGLFramebuffer {
+] interface WebGLFramebuffer {
 };
diff --git a/Source/WebCore/html/canvas/WebGLLoseContext.idl b/Source/WebCore/html/canvas/WebGLLoseContext.idl
index 6d0eb7a..fcdd907 100644
--- a/Source/WebCore/html/canvas/WebGLLoseContext.idl
+++ b/Source/WebCore/html/canvas/WebGLLoseContext.idl
@@ -23,11 +23,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSGenerateIsReachable=ImplContext,
     OmitConstructor
-] WebGLLoseContext {
+] interface WebGLLoseContext {
     [StrictTypeChecking] void loseContext();
     [StrictTypeChecking] void restoreContext();
 };
diff --git a/Source/WebCore/html/canvas/WebGLProgram.idl b/Source/WebCore/html/canvas/WebGLProgram.idl
index cf47e48..d404ebd 100644
--- a/Source/WebCore/html/canvas/WebGLProgram.idl
+++ b/Source/WebCore/html/canvas/WebGLProgram.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL
-] WebGLProgram {
+] interface WebGLProgram {
 };
diff --git a/Source/WebCore/html/canvas/WebGLRenderbuffer.idl b/Source/WebCore/html/canvas/WebGLRenderbuffer.idl
index 3cf5969..618f9c4 100644
--- a/Source/WebCore/html/canvas/WebGLRenderbuffer.idl
+++ b/Source/WebCore/html/canvas/WebGLRenderbuffer.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL
-] WebGLRenderbuffer {
+] interface WebGLRenderbuffer {
 };
diff --git a/Source/WebCore/html/canvas/WebGLRenderingContext.idl b/Source/WebCore/html/canvas/WebGLRenderingContext.idl
index 4292270..31fa54c 100644
--- a/Source/WebCore/html/canvas/WebGLRenderingContext.idl
+++ b/Source/WebCore/html/canvas/WebGLRenderingContext.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL,
     JSCustomMarkFunction,
     DoNotCheckConstants
-] WebGLRenderingContext : CanvasRenderingContext {
+] interface WebGLRenderingContext : CanvasRenderingContext {
 
     /* ClearBufferMask */
     const unsigned int DEPTH_BUFFER_BIT               = 0x00000100;
diff --git a/Source/WebCore/html/canvas/WebGLShader.idl b/Source/WebCore/html/canvas/WebGLShader.idl
index 8b68eb3..0ebae38 100644
--- a/Source/WebCore/html/canvas/WebGLShader.idl
+++ b/Source/WebCore/html/canvas/WebGLShader.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL
-] WebGLShader {
+] interface WebGLShader {
 };
diff --git a/Source/WebCore/html/canvas/WebGLShaderPrecisionFormat.idl b/Source/WebCore/html/canvas/WebGLShaderPrecisionFormat.idl
index aba6cb6..a217fcb 100644
--- a/Source/WebCore/html/canvas/WebGLShaderPrecisionFormat.idl
+++ b/Source/WebCore/html/canvas/WebGLShaderPrecisionFormat.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WEBGL,
-] WebGLShaderPrecisionFormat {
+] interface WebGLShaderPrecisionFormat {
     readonly attribute long rangeMin;
     readonly attribute long rangeMax;
     readonly attribute long precision;
diff --git a/Source/WebCore/html/canvas/WebGLTexture.idl b/Source/WebCore/html/canvas/WebGLTexture.idl
index 34ca227..1ea2f2b 100644
--- a/Source/WebCore/html/canvas/WebGLTexture.idl
+++ b/Source/WebCore/html/canvas/WebGLTexture.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL
-] WebGLTexture {
+] interface WebGLTexture {
 };
diff --git a/Source/WebCore/html/canvas/WebGLUniformLocation.idl b/Source/WebCore/html/canvas/WebGLUniformLocation.idl
index 0b72956..c211189 100644
--- a/Source/WebCore/html/canvas/WebGLUniformLocation.idl
+++ b/Source/WebCore/html/canvas/WebGLUniformLocation.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL
-] WebGLUniformLocation {
+] interface WebGLUniformLocation {
 };
diff --git a/Source/WebCore/html/canvas/WebGLVertexArrayObjectOES.idl b/Source/WebCore/html/canvas/WebGLVertexArrayObjectOES.idl
index ba039e1..1e78ddd 100644
--- a/Source/WebCore/html/canvas/WebGLVertexArrayObjectOES.idl
+++ b/Source/WebCore/html/canvas/WebGLVertexArrayObjectOES.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=WEBGL
-] WebGLVertexArrayObjectOES {
+] interface WebGLVertexArrayObjectOES {
 };
diff --git a/Source/WebCore/html/shadow/HTMLContentElement.idl b/Source/WebCore/html/shadow/HTMLContentElement.idl
index 95c355d..448c979 100644
--- a/Source/WebCore/html/shadow/HTMLContentElement.idl
+++ b/Source/WebCore/html/shadow/HTMLContentElement.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SHADOW_DOM,
     V8EnabledAtRuntime=shadowDOM
-] HTMLContentElement : HTMLElement {
-    attribute [Reflect] DOMString select;
+] interface HTMLContentElement : HTMLElement {
+    [Reflect] attribute DOMString select;
     attribute boolean resetStyleInheritance;
 };
diff --git a/Source/WebCore/html/shadow/HTMLShadowElement.idl b/Source/WebCore/html/shadow/HTMLShadowElement.idl
index 9d03538..b501945 100644
--- a/Source/WebCore/html/shadow/HTMLShadowElement.idl
+++ b/Source/WebCore/html/shadow/HTMLShadowElement.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SHADOW_DOM,
     V8EnabledAtRuntime=shadowDOM
-] HTMLShadowElement : HTMLElement {
+] interface HTMLShadowElement : HTMLElement {
     attribute boolean resetStyleInheritance;
 };
diff --git a/Source/WebCore/html/track/TextTrack.idl b/Source/WebCore/html/track/TextTrack.idl
index 2e2e6d0..e6465a7 100644
--- a/Source/WebCore/html/track/TextTrack.idl
+++ b/Source/WebCore/html/track/TextTrack.idl
@@ -23,13 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO_TRACK,
     V8EnabledAtRuntime=webkitVideoTrack,
     EventTarget,
     JSCustomMarkFunction,
     JSCustomIsReachable
-] TextTrack {
+] interface TextTrack {
     readonly attribute DOMString kind;
     readonly attribute DOMString label;
     readonly attribute DOMString language;
diff --git a/Source/WebCore/html/track/TextTrackCue.idl b/Source/WebCore/html/track/TextTrackCue.idl
index c3dc2bc..ddb67e4 100644
--- a/Source/WebCore/html/track/TextTrackCue.idl
+++ b/Source/WebCore/html/track/TextTrackCue.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO_TRACK,
     V8EnabledAtRuntime=webkitVideoTrack,
     JSGenerateToNativeObject,
@@ -32,7 +32,7 @@
     EventTarget,
     JSCustomMarkFunction,
     JSCustomIsReachable
-] TextTrackCue {
+] interface TextTrackCue {
     readonly attribute TextTrack track;
 
     attribute DOMString id;
diff --git a/Source/WebCore/html/track/TextTrackCueList.idl b/Source/WebCore/html/track/TextTrackCueList.idl
index 5ec8b36..dab976c 100644
--- a/Source/WebCore/html/track/TextTrackCueList.idl
+++ b/Source/WebCore/html/track/TextTrackCueList.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO_TRACK,
     V8EnabledAtRuntime=webkitVideoTrack,
     IndexedGetter
-] TextTrackCueList {
+] interface TextTrackCueList {
     readonly attribute unsigned long length;
     TextTrackCue item(in unsigned long index);
     TextTrackCue getCueById(in DOMString id);
diff --git a/Source/WebCore/html/track/TextTrackList.idl b/Source/WebCore/html/track/TextTrackList.idl
index 165ee6d..0b0e450 100644
--- a/Source/WebCore/html/track/TextTrackList.idl
+++ b/Source/WebCore/html/track/TextTrackList.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO_TRACK,
     V8EnabledAtRuntime=webkitVideoTrack,
     IndexedGetter,
@@ -31,7 +31,7 @@
     JSCustomMarkFunction,
     JSCustomIsReachable,
     V8GenerateIsReachable=ImplOwnerRoot
-] TextTrackList {
+] interface TextTrackList {
     readonly attribute unsigned long length;
     TextTrack item(in unsigned long index);
 
diff --git a/Source/WebCore/html/track/TrackEvent.idl b/Source/WebCore/html/track/TrackEvent.idl
index 7ad6357..59b5ca6 100644
--- a/Source/WebCore/html/track/TrackEvent.idl
+++ b/Source/WebCore/html/track/TrackEvent.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=VIDEO_TRACK,
     V8EnabledAtRuntime=webkitVideoTrack,
     ConstructorTemplate=Event
-] TrackEvent : Event {
-    readonly attribute [InitializedByEventConstructor, CustomGetter] object track;
+] interface TrackEvent : Event {
+    [InitializedByEventConstructor, CustomGetter] readonly attribute object track;
 };
 
diff --git a/Source/WebCore/inspector/InjectedScriptHost.idl b/Source/WebCore/inspector/InjectedScriptHost.idl
index e846402..883b5ff 100644
--- a/Source/WebCore/inspector/InjectedScriptHost.idl
+++ b/Source/WebCore/inspector/InjectedScriptHost.idl
@@ -30,9 +30,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INSPECTOR
-] InjectedScriptHost {
+] interface InjectedScriptHost {
     void clearConsoleMessages();
 
     void copyText(in DOMString text);
diff --git a/Source/WebCore/inspector/InspectorFrontendHost.idl b/Source/WebCore/inspector/InspectorFrontendHost.idl
index cb014d4..8ddc9a6 100644
--- a/Source/WebCore/inspector/InspectorFrontendHost.idl
+++ b/Source/WebCore/inspector/InspectorFrontendHost.idl
@@ -30,9 +30,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INSPECTOR
-] InspectorFrontendHost {
+] interface InspectorFrontendHost {
     void loaded();
     void closeWindow();
     void bringToFront();
diff --git a/Source/WebCore/inspector/JavaScriptCallFrame.idl b/Source/WebCore/inspector/JavaScriptCallFrame.idl
index c89bf9e..17011e4 100644
--- a/Source/WebCore/inspector/JavaScriptCallFrame.idl
+++ b/Source/WebCore/inspector/JavaScriptCallFrame.idl
@@ -23,11 +23,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=JAVASCRIPT_DEBUGGER,
     OmitConstructor,
     DoNotCheckConstants
-] JavaScriptCallFrame {
+] interface JavaScriptCallFrame {
 
     // Scope type
     const unsigned short GLOBAL_SCOPE = 0;
@@ -43,10 +43,10 @@
     readonly attribute long sourceID;
     readonly attribute long line;
     readonly attribute long column;
-    readonly attribute [CustomGetter] Array scopeChain;
+    [CustomGetter] readonly attribute Array scopeChain;
     [Custom] unsigned short scopeType(in int scopeIndex);
-    readonly attribute [CustomGetter] Object thisObject;
+    [CustomGetter] readonly attribute Object thisObject;
     readonly attribute DOMString functionName;
-    readonly attribute [CustomGetter] DOMString type;
+    [CustomGetter] readonly attribute DOMString type;
 };
 
diff --git a/Source/WebCore/inspector/ScriptProfile.idl b/Source/WebCore/inspector/ScriptProfile.idl
index ebd1249..46c0e99 100644
--- a/Source/WebCore/inspector/ScriptProfile.idl
+++ b/Source/WebCore/inspector/ScriptProfile.idl
@@ -24,11 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=JAVASCRIPT_DEBUGGER,
     OmitConstructor,
     V8CustomToJSObject
-] ScriptProfile {
+] interface ScriptProfile {
     readonly attribute DOMString title;
     readonly attribute unsigned long uid;
     readonly attribute ScriptProfileNode head;
diff --git a/Source/WebCore/inspector/ScriptProfileNode.idl b/Source/WebCore/inspector/ScriptProfileNode.idl
index 9282d2f..3b28b88 100644
--- a/Source/WebCore/inspector/ScriptProfileNode.idl
+++ b/Source/WebCore/inspector/ScriptProfileNode.idl
@@ -24,11 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=JAVASCRIPT_DEBUGGER,
     OmitConstructor,
     V8CustomToJSObject
-] ScriptProfileNode {
+] interface ScriptProfileNode {
     readonly attribute DOMString functionName;
     readonly attribute DOMString url;
     readonly attribute unsigned long lineNumber;
@@ -37,6 +37,6 @@
     readonly attribute unsigned long numberOfCalls;
     sequence<ScriptProfileNode> children();
     readonly attribute boolean visible;
-    readonly attribute [CustomGetter] unsigned long callUID;
+    [CustomGetter] readonly attribute unsigned long callUID;
 };
 
diff --git a/Source/WebCore/loader/appcache/DOMApplicationCache.idl b/Source/WebCore/loader/appcache/DOMApplicationCache.idl
index 94f4282..a848654 100644
--- a/Source/WebCore/loader/appcache/DOMApplicationCache.idl
+++ b/Source/WebCore/loader/appcache/DOMApplicationCache.idl
@@ -23,12 +23,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
  
-interface [
+[
     EventTarget,
     OmitConstructor,
     DoNotCheckConstants,
     JSGenerateIsReachable=ImplFrame
-] DOMApplicationCache {
+] interface DOMApplicationCache {
     // update status
     const unsigned short UNCACHED = 0;
     const unsigned short IDLE = 1;
diff --git a/Source/WebCore/page/AbstractView.idl b/Source/WebCore/page/AbstractView.idl
index c57bc1c..c57aaea 100644
--- a/Source/WebCore/page/AbstractView.idl
+++ b/Source/WebCore/page/AbstractView.idl
@@ -25,10 +25,10 @@
  */
 
 // Introduced in DOM Level 2:
-interface [
+[
     ObjCCustomImplementation,
     OmitConstructor
-] AbstractView {
+] interface AbstractView {
     readonly attribute Document document;
     readonly attribute StyleMedia styleMedia;
 };
diff --git a/Source/WebCore/page/BarInfo.idl b/Source/WebCore/page/BarInfo.idl
index 8c676fb..a7dc091 100644
--- a/Source/WebCore/page/BarInfo.idl
+++ b/Source/WebCore/page/BarInfo.idl
@@ -26,10 +26,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     JSGenerateIsReachable=ImplFrame,
     OmitConstructor
-] BarInfo {
+] interface BarInfo {
     readonly attribute boolean visible;
 };
 
diff --git a/Source/WebCore/page/Console.idl b/Source/WebCore/page/Console.idl
index 18a2e10..1f2b96a 100644
--- a/Source/WebCore/page/Console.idl
+++ b/Source/WebCore/page/Console.idl
@@ -26,10 +26,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     JSGenerateIsReachable=ImplFrame,
     OmitConstructor
-] Console {
+] interface Console {
 
     [CallWith=ScriptArguments|CallStack] void debug();
     [CallWith=ScriptArguments|CallStack] void error();
@@ -59,6 +59,6 @@
     [CallWith=ScriptArguments|CallStack] void groupCollapsed();
     void groupEnd();
 
-    readonly attribute [V8CustomGetter] MemoryInfo memory;
+    [V8CustomGetter] readonly attribute MemoryInfo memory;
 };
 
diff --git a/Source/WebCore/page/Coordinates.idl b/Source/WebCore/page/Coordinates.idl
index ff674be..cccba22 100644
--- a/Source/WebCore/page/Coordinates.idl
+++ b/Source/WebCore/page/Coordinates.idl
@@ -23,14 +23,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     OmitConstructor
-] Coordinates {
+] interface Coordinates {
     readonly attribute double latitude;
     readonly attribute double longitude;
-    readonly attribute [Custom] double altitude;
+    [Custom] readonly attribute double altitude;
     readonly attribute double accuracy;
-    readonly attribute [Custom] double altitudeAccuracy;
-    readonly attribute [Custom] double heading;
-    readonly attribute [Custom] double speed;
+    [Custom] readonly attribute double altitudeAccuracy;
+    [Custom] readonly attribute double heading;
+    [Custom] readonly attribute double speed;
 };
diff --git a/Source/WebCore/page/Crypto.idl b/Source/WebCore/page/Crypto.idl
index 5de969e..589281a 100644
--- a/Source/WebCore/page/Crypto.idl
+++ b/Source/WebCore/page/Crypto.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     OmitConstructor
-] Crypto {
+] interface Crypto {
     void getRandomValues(in ArrayBufferView array) raises(DOMException);
 };
 
diff --git a/Source/WebCore/page/DOMSecurityPolicy.idl b/Source/WebCore/page/DOMSecurityPolicy.idl
index de0881d..c9ff043 100644
--- a/Source/WebCore/page/DOMSecurityPolicy.idl
+++ b/Source/WebCore/page/DOMSecurityPolicy.idl
@@ -22,11 +22,11 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=CSP_NEXT,
     OmitConstructor,
     InterfaceName=SecurityPolicy
-] DOMSecurityPolicy {
+] interface DOMSecurityPolicy {
     readonly attribute DOMStringList reportURIs;
 
     boolean isActive();
diff --git a/Source/WebCore/page/DOMSelection.idl b/Source/WebCore/page/DOMSelection.idl
index b171679..ee6979a 100644
--- a/Source/WebCore/page/DOMSelection.idl
+++ b/Source/WebCore/page/DOMSelection.idl
@@ -29,10 +29,10 @@
 
 // This is based off of Mozilla's Selection interface
 // https://developer.mozilla.org/En/DOM/Selection
-interface [
+[
     JSGenerateIsReachable=ImplFrame,
     InterfaceName=Selection
-] DOMSelection {
+] interface DOMSelection {
     readonly attribute Node anchorNode;
     readonly attribute long anchorOffset;
     readonly attribute Node focusNode;
diff --git a/Source/WebCore/page/DOMWindow.idl b/Source/WebCore/page/DOMWindow.idl
index 0948c51..cb12ebd 100644
--- a/Source/WebCore/page/DOMWindow.idl
+++ b/Source/WebCore/page/DOMWindow.idl
@@ -24,7 +24,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     CheckSecurity,
     JSCustomDefineOwnProperty,
     CustomDeleteProperty,
@@ -40,7 +40,7 @@
     JSLegacyParent=JSDOMWindowBase,
     V8CustomToJSObject,
     InterfaceName=Window
-] DOMWindow {
+] interface DOMWindow {
     // DOM Level 0
     attribute [Replaceable] Screen screen;
     attribute [Replaceable, DoNotCheckSecurityOnGetter] History history;
@@ -372,7 +372,7 @@
     attribute DocumentConstructor Document;
     attribute NodeConstructor Node;
     attribute NodeListConstructor NodeList;
-    attribute [Conditional=MICRODATA] PropertyNodeListConstructor PropertyNodeList;
+    [Conditional=MICRODATA] attribute PropertyNodeListConstructor PropertyNodeList;
     attribute NamedNodeMapConstructor NamedNodeMap;
     attribute CharacterDataConstructor CharacterData;
     attribute AttrConstructor Attr;
@@ -391,9 +391,9 @@
     attribute EntityConstructor Entity;
     attribute EntityReferenceConstructor EntityReference;
     attribute ProcessingInstructionConstructor ProcessingInstruction;
-    attribute [Conditional=SHADOW_DOM, V8EnabledPerContext=shadowDOM] ShadowRootConstructor WebKitShadowRoot;
-    attribute [Conditional=SHADOW_DOM, V8EnabledPerContext=shadowDOM] HTMLContentElementConstructor HTMLContentElement;
-    attribute [Conditional=SHADOW_DOM, V8EnabledPerContext=shadowDOM] HTMLShadowElementConstructor HTMLShadowElement;
+    [Conditional=SHADOW_DOM, V8EnabledPerContext=shadowDOM] attribute ShadowRootConstructor WebKitShadowRoot;
+    [Conditional=SHADOW_DOM, V8EnabledPerContext=shadowDOM] attribute HTMLContentElementConstructor HTMLContentElement;
+    [Conditional=SHADOW_DOM, V8EnabledPerContext=shadowDOM] attribute HTMLShadowElementConstructor HTMLShadowElement;
 
     attribute DOMSelectionConstructor Selection;
     attribute DOMWindowConstructor Window;
@@ -410,8 +410,8 @@
     attribute HTMLButtonElementConstructor HTMLButtonElement;
     attribute HTMLCanvasElementConstructor HTMLCanvasElement;
     attribute HTMLDListElementConstructor HTMLDListElement;
-    attribute [Conditional=DATALIST_ELEMENT] HTMLDataListElementConstructor HTMLDataListElement;
-    attribute [Conditional=DIALOG_ELEMENT, V8EnabledPerContext=dialogElement] HTMLDialogElementConstructor HTMLDialogElement;
+    [Conditional=DATALIST_ELEMENT] attribute HTMLDataListElementConstructor HTMLDataListElement;
+    [Conditional=DIALOG_ELEMENT, V8EnabledPerContext=dialogElement] attribute HTMLDialogElementConstructor HTMLDialogElement;
     attribute HTMLDirectoryElementConstructor HTMLDirectoryElement;
     attribute HTMLDivElementConstructor HTMLDivElement;
     attribute HTMLEmbedElementConstructor HTMLEmbedElement;
@@ -468,32 +468,32 @@
 
     attribute HTMLCollectionConstructor HTMLCollection;
     attribute HTMLAllCollectionConstructor HTMLAllCollection;
-    attribute [Conditional=MICRODATA] HTMLPropertiesCollectionConstructor HTMLPropertiesCollection;
+    [Conditional=MICRODATA] attribute HTMLPropertiesCollectionConstructor HTMLPropertiesCollection;
     attribute HTMLUnknownElementConstructor HTMLUnknownElement;
 
-    attribute [JSCustomGetter, CustomConstructor] HTMLImageElementConstructorConstructor Image; // Usable with new operator
-    attribute [JSCustomGetter] HTMLOptionElementConstructorConstructor Option; // Usable with new operator
+    [JSCustomGetter, CustomConstructor] attribute HTMLImageElementConstructorConstructor Image; // Usable with new operator
+    [JSCustomGetter] attribute HTMLOptionElementConstructorConstructor Option; // Usable with new operator
 
-    attribute [Conditional=ENCRYPTED_MEDIA, V8EnabledAtRuntime=encryptedMedia] MediaKeyErrorConstructor MediaKeyError;
-    attribute [Conditional=ENCRYPTED_MEDIA, V8EnabledAtRuntime=encryptedMedia] MediaKeyEventConstructor MediaKeyEvent;
+    [Conditional=ENCRYPTED_MEDIA, V8EnabledAtRuntime=encryptedMedia] attribute MediaKeyErrorConstructor MediaKeyError;
+    [Conditional=ENCRYPTED_MEDIA, V8EnabledAtRuntime=encryptedMedia] attribute MediaKeyEventConstructor MediaKeyEvent;
 
-    attribute [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] HTMLTrackElementConstructor HTMLTrackElement;
-    attribute [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] TextTrackConstructor TextTrack;
-    attribute [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] TextTrackCueConstructor TextTrackCue; // Usable with the new operator
-    attribute [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] TextTrackCueListConstructor TextTrackCueList;
-    attribute [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] TextTrackListConstructor TextTrackList;
-    attribute [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] TrackEventConstructor TrackEvent;
+    [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute HTMLTrackElementConstructor HTMLTrackElement;
+    [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TextTrackConstructor TextTrack;
+    [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TextTrackCueConstructor TextTrackCue; // Usable with the new operator
+    [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TextTrackCueListConstructor TextTrackCueList;
+    [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TextTrackListConstructor TextTrackList;
+    [Conditional=VIDEO_TRACK, V8EnabledAtRuntime=webkitVideoTrack] attribute TrackEventConstructor TrackEvent;
 
-    attribute [JSCustomGetter, Conditional=VIDEO, V8EnabledAtRuntime] HTMLAudioElementConstructorConstructor Audio; // Usable with the new operator
-    attribute [Conditional=VIDEO, V8EnabledAtRuntime] HTMLAudioElementConstructor HTMLAudioElement;
-    attribute [Conditional=VIDEO, V8EnabledAtRuntime] HTMLMediaElementConstructor HTMLMediaElement;
-    attribute [Conditional=VIDEO, V8EnabledAtRuntime] HTMLVideoElementConstructor HTMLVideoElement;
-    attribute [Conditional=VIDEO, V8EnabledAtRuntime] MediaErrorConstructor MediaError;
-    attribute [Conditional=VIDEO, V8EnabledAtRuntime] TimeRangesConstructor TimeRanges;
-    attribute [Conditional=VIDEO, V8EnabledAtRuntime] HTMLSourceElementConstructor HTMLSourceElement;
-    attribute [Conditional=VIDEO, V8EnabledAtRuntime] MediaControllerConstructor MediaController;
+    [JSCustomGetter, Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLAudioElementConstructorConstructor Audio; // Usable with the new operator
+    [Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLAudioElementConstructor HTMLAudioElement;
+    [Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLMediaElementConstructor HTMLMediaElement;
+    [Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLVideoElementConstructor HTMLVideoElement;
+    [Conditional=VIDEO, V8EnabledAtRuntime] attribute MediaErrorConstructor MediaError;
+    [Conditional=VIDEO, V8EnabledAtRuntime] attribute TimeRangesConstructor TimeRanges;
+    [Conditional=VIDEO, V8EnabledAtRuntime] attribute HTMLSourceElementConstructor HTMLSourceElement;
+    [Conditional=VIDEO, V8EnabledAtRuntime] attribute MediaControllerConstructor MediaController;
 
-    attribute [Conditional=WEB_INTENTS_TAG] HTMLIntentElementConstructor HTMLIntentElement;
+    [Conditional=WEB_INTENTS_TAG] attribute HTMLIntentElementConstructor HTMLIntentElement;
 
     attribute CanvasPatternConstructor CanvasPattern;
     attribute CanvasGradientConstructor CanvasGradient;
@@ -502,16 +502,16 @@
     attribute ImageDataConstructor ImageData;
     attribute TextMetricsConstructor TextMetrics;
 
-    attribute [Conditional=WEBGL] WebGLActiveInfoConstructor WebGLActiveInfo;
-    attribute [Conditional=WEBGL] WebGLBufferConstructor WebGLBuffer;
-    attribute [Conditional=WEBGL] WebGLFramebufferConstructor WebGLFramebuffer;
-    attribute [Conditional=WEBGL] WebGLProgramConstructor WebGLProgram;
-    attribute [Conditional=WEBGL] WebGLRenderbufferConstructor WebGLRenderbuffer;
-    attribute [Conditional=WEBGL] WebGLRenderingContextConstructor WebGLRenderingContext;
-    attribute [Conditional=WEBGL] WebGLShaderConstructor WebGLShader;
-    attribute [Conditional=WEBGL] WebGLShaderPrecisionFormatConstructor WebGLShaderPrecisionFormat;
-    attribute [Conditional=WEBGL] WebGLTextureConstructor WebGLTexture;
-    attribute [Conditional=WEBGL] WebGLUniformLocationConstructor WebGLUniformLocation;
+    [Conditional=WEBGL] attribute WebGLActiveInfoConstructor WebGLActiveInfo;
+    [Conditional=WEBGL] attribute WebGLBufferConstructor WebGLBuffer;
+    [Conditional=WEBGL] attribute WebGLFramebufferConstructor WebGLFramebuffer;
+    [Conditional=WEBGL] attribute WebGLProgramConstructor WebGLProgram;
+    [Conditional=WEBGL] attribute WebGLRenderbufferConstructor WebGLRenderbuffer;
+    [Conditional=WEBGL] attribute WebGLRenderingContextConstructor WebGLRenderingContext;
+    [Conditional=WEBGL] attribute WebGLShaderConstructor WebGLShader;
+    [Conditional=WEBGL] attribute WebGLShaderPrecisionFormatConstructor WebGLShaderPrecisionFormat;
+    [Conditional=WEBGL] attribute WebGLTextureConstructor WebGLTexture;
+    [Conditional=WEBGL] attribute WebGLUniformLocationConstructor WebGLUniformLocation;
 
     attribute DOMStringMapConstructor DOMStringMap;
 
@@ -548,19 +548,19 @@
     attribute WebKitTransitionEventConstructor WebKitTransitionEvent;
     attribute WheelEventConstructor WheelEvent;
     attribute XMLHttpRequestProgressEventConstructor XMLHttpRequestProgressEvent;
-    attribute [Conditional=DEVICE_ORIENTATION, V8EnabledAtRuntime] DeviceMotionEventConstructor DeviceMotionEvent;
-    attribute [Conditional=DEVICE_ORIENTATION, V8EnabledAtRuntime] DeviceOrientationEventConstructor DeviceOrientationEvent;
-    attribute [Conditional=TOUCH_EVENTS] TouchEventConstructor TouchEvent;
+    [Conditional=DEVICE_ORIENTATION, V8EnabledAtRuntime] attribute DeviceMotionEventConstructor DeviceMotionEvent;
+    [Conditional=DEVICE_ORIENTATION, V8EnabledAtRuntime] attribute DeviceOrientationEventConstructor DeviceOrientationEvent;
+    [Conditional=TOUCH_EVENTS] attribute TouchEventConstructor TouchEvent;
     attribute StorageEventConstructor StorageEvent;
-    attribute [Conditional=INPUT_SPEECH] SpeechInputEventConstructor SpeechInputEvent;
-    attribute [Conditional=WEBGL] WebGLContextEventConstructor WebGLContextEvent;
-    attribute [Conditional=PROXIMITY_EVENTS] DeviceProximityEventConstructor DeviceProximityEvent;
+    [Conditional=INPUT_SPEECH] attribute SpeechInputEventConstructor SpeechInputEvent;
+    [Conditional=WEBGL] attribute WebGLContextEventConstructor WebGLContextEvent;
+    [Conditional=PROXIMITY_EVENTS] attribute DeviceProximityEventConstructor DeviceProximityEvent;
 
     attribute EventExceptionConstructor EventException;
 
     attribute WebKitCSSKeyframeRuleConstructor WebKitCSSKeyframeRule;
     attribute WebKitCSSKeyframesRuleConstructor WebKitCSSKeyframesRule;
-    attribute [Conditional=CSS_REGIONS] WebKitCSSRegionRuleConstructor WebKitCSSRegionRule;
+    [Conditional=CSS_REGIONS] attribute WebKitCSSRegionRuleConstructor WebKitCSSRegionRule;
 
     attribute WebKitCSSMatrixConstructor WebKitCSSMatrix; // Usable with the new operator
 
@@ -568,8 +568,8 @@
 
     attribute ClipboardConstructor Clipboard;
 
-    attribute [Conditional=WORKERS] WorkerConstructor Worker; // Usable with the new operator
-    attribute [Conditional=SHARED_WORKERS, JSCustomGetter, V8EnabledAtRuntime] SharedWorkerConstructor SharedWorker; // Usable with the new operator
+    [Conditional=WORKERS] attribute WorkerConstructor Worker; // Usable with the new operator
+    [Conditional=SHARED_WORKERS, JSCustomGetter, V8EnabledAtRuntime] attribute SharedWorkerConstructor SharedWorker; // Usable with the new operator
 
     attribute FileConstructor File;
     attribute FileListConstructor FileList;
@@ -589,7 +589,7 @@
     attribute XMLHttpRequestConstructor XMLHttpRequest; // Usable with the new operator
     attribute XMLHttpRequestUploadConstructor XMLHttpRequestUpload;
     attribute XMLHttpRequestExceptionConstructor XMLHttpRequestException;
-    attribute [Conditional=XSLT] XSLTProcessorConstructor XSLTProcessor; // Usable with the new operator
+    [Conditional=XSLT] attribute XSLTProcessorConstructor XSLTProcessor; // Usable with the new operator
 
 #if defined(ENABLE_CHANNEL_MESSAGING) && ENABLE_CHANNEL_MESSAGING
     attribute MessagePortConstructor MessagePort;
@@ -616,7 +616,7 @@
     attribute XPathResultConstructor XPathResult;
     attribute XPathExceptionConstructor XPathException;
 
-    attribute [Conditional=SVG] SVGZoomEventConstructor SVGZoomEvent;
+    [Conditional=SVG] attribute SVGZoomEventConstructor SVGZoomEvent;
 
 #if defined(ENABLE_SVG) && ENABLE_SVG
     // Expose all implemented SVG 1.1 interfaces, excluding the SVG MI interfaces:
@@ -777,17 +777,17 @@
 
     attribute DOMFormDataConstructor FormData;
 
-    attribute [Conditional=BLOB|FILE_SYSTEM] FileErrorConstructor FileError;
-    attribute [Conditional=BLOB] FileReaderConstructor FileReader;
+    [Conditional=BLOB|FILE_SYSTEM] attribute FileErrorConstructor FileError;
+    [Conditional=BLOB] attribute FileReaderConstructor FileReader;
 
-    attribute [Conditional=BLOB] DOMURLConstructor URL;
-    attribute [Conditional=BLOB] DOMURLConstructor webkitURL; // FIXME: deprecate this.
+    [Conditional=BLOB] attribute DOMURLConstructor URL;
+    [Conditional=BLOB] attribute DOMURLConstructor webkitURL; // FIXME: deprecate this.
 
-    attribute [Conditional=MUTATION_OBSERVERS] MutationObserverConstructor WebKitMutationObserver;
+    [Conditional=MUTATION_OBSERVERS] attribute MutationObserverConstructor WebKitMutationObserver;
 
-    attribute [Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] MediaSourceConstructor WebKitMediaSource;
-    attribute [Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] SourceBufferConstructor WebKitSourceBuffer;
-    attribute [Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] SourceBufferListConstructor WebKitSourceBufferList;
+    [Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] attribute MediaSourceConstructor WebKitMediaSource;
+    [Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] attribute SourceBufferConstructor WebKitSourceBuffer;
+    [Conditional=MEDIA_SOURCE, V8EnabledAtRuntime=mediaSource] attribute SourceBufferListConstructor WebKitSourceBufferList;
 
 #endif // defined(LANGUAGE_JAVASCRIPT)
 
diff --git a/Source/WebCore/page/DOMWindowPagePopup.idl b/Source/WebCore/page/DOMWindowPagePopup.idl
index 7c8cc5c..301d8b9 100644
--- a/Source/WebCore/page/DOMWindowPagePopup.idl
+++ b/Source/WebCore/page/DOMWindowPagePopup.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=PAGE_POPUP,
     Supplemental=DOMWindow
-] DOMWindowPagePopup {
-    readonly attribute [V8EnabledPerContext=pagePopup] PagePopupController pagePopupController;
+] interface DOMWindowPagePopup {
+    [V8EnabledPerContext=pagePopup] readonly attribute PagePopupController pagePopupController;
 };
diff --git a/Source/WebCore/page/EventSource.idl b/Source/WebCore/page/EventSource.idl
index c913fcd..60d36fa 100644
--- a/Source/WebCore/page/EventSource.idl
+++ b/Source/WebCore/page/EventSource.idl
@@ -29,14 +29,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     ActiveDOMObject,
     Constructor(in DOMString scriptUrl),
     CallWith=ScriptExecutionContext,
     ConstructorRaisesException,
     EventTarget,
     JSNoStaticTables
-] EventSource {
+] interface EventSource {
 
     readonly attribute DOMString URL; // Lowercased .url is the one in the spec, but leaving .URL for compatibility reasons.
     readonly attribute DOMString url;
diff --git a/Source/WebCore/page/History.idl b/Source/WebCore/page/History.idl
index 0575b1f..abb245f 100644
--- a/Source/WebCore/page/History.idl
+++ b/Source/WebCore/page/History.idl
@@ -23,7 +23,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
 #if defined(V8_BINDING) && V8_BINDING
     CheckSecurity,
 #endif
@@ -33,9 +33,9 @@
     CustomDeleteProperty,
     CustomEnumerateProperty,
     OmitConstructor
-] History {
+] interface History {
     readonly attribute unsigned long length;
-    readonly attribute [CachedAttribute, Custom] SerializedScriptValue state;
+    [CachedAttribute, Custom] readonly attribute SerializedScriptValue state;
 
     [DoNotCheckSecurity, CallWith=ScriptExecutionContext] void back();
     [DoNotCheckSecurity, CallWith=ScriptExecutionContext] void forward();
diff --git a/Source/WebCore/page/Location.idl b/Source/WebCore/page/Location.idl
index 24ea215..0707f07 100644
--- a/Source/WebCore/page/Location.idl
+++ b/Source/WebCore/page/Location.idl
@@ -26,7 +26,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
 #if defined(V8_BINDING) && V8_BINDING
     CheckSecurity,
 #endif
@@ -39,9 +39,9 @@
     JSCustomNamedGetterOnPrototype,
     JSCustomDefineOwnPropertyOnPrototype,
     OmitConstructor
-] Location {
+] interface Location {
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
-             attribute [DoNotCheckSecurityOnSetter, CustomSetter, V8Unforgeable] DOMString href;
+             [DoNotCheckSecurityOnSetter, CustomSetter, V8Unforgeable] attribute DOMString href;
 #endif
 
     [Custom, V8Unforgeable] void assign(in [Optional=DefaultIsUndefined] DOMString url);
@@ -50,13 +50,13 @@
 
     // URI decomposition attributes
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
-             attribute [CustomSetter] DOMString protocol;
-             attribute [CustomSetter] DOMString host;
-             attribute [CustomSetter] DOMString hostname;
-             attribute [CustomSetter] DOMString port;
-             attribute [CustomSetter] DOMString pathname;
-             attribute [CustomSetter] DOMString search;
-             attribute [CustomSetter] DOMString hash;
+             [CustomSetter] attribute DOMString protocol;
+             [CustomSetter] attribute DOMString host;
+             [CustomSetter] attribute DOMString hostname;
+             [CustomSetter] attribute DOMString port;
+             [CustomSetter] attribute DOMString pathname;
+             [CustomSetter] attribute DOMString search;
+             [CustomSetter] attribute DOMString hash;
 
              readonly attribute DOMString origin;
 #endif
diff --git a/Source/WebCore/page/MemoryInfo.idl b/Source/WebCore/page/MemoryInfo.idl
index d5b3662..df50b48 100644
--- a/Source/WebCore/page/MemoryInfo.idl
+++ b/Source/WebCore/page/MemoryInfo.idl
@@ -28,13 +28,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     OmitConstructor
-] MemoryInfo {
+] interface MemoryInfo {
 
     readonly attribute unsigned long totalJSHeapSize;
     readonly attribute unsigned long usedJSHeapSize;
-    readonly attribute [JSCustomGetter] unsigned long jsHeapSizeLimit;
+    [JSCustomGetter] readonly attribute unsigned long jsHeapSizeLimit;
 
 };
 
diff --git a/Source/WebCore/page/Navigator.idl b/Source/WebCore/page/Navigator.idl
index 8b82691..0c676eb 100644
--- a/Source/WebCore/page/Navigator.idl
+++ b/Source/WebCore/page/Navigator.idl
@@ -17,10 +17,10 @@
     Boston, MA 02110-1301, USA.
 */
 
-interface [
+[
     JSGenerateIsReachable=ImplFrame,
     OmitConstructor
-] Navigator {
+] interface Navigator {
     readonly attribute DOMString appCodeName;
     readonly attribute DOMString appName;
     readonly attribute DOMString appVersion;
diff --git a/Source/WebCore/page/PagePopupController.idl b/Source/WebCore/page/PagePopupController.idl
index f9b2af7..b2350bf 100644
--- a/Source/WebCore/page/PagePopupController.idl
+++ b/Source/WebCore/page/PagePopupController.idl
@@ -28,9 +28,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=PAGE_POPUP
-] PagePopupController {
+] interface PagePopupController {
     void setValueAndClosePopup(in long numberValue, in DOMString stringValue);
     DOMString localizeNumberString(in DOMString numberString);
 };
diff --git a/Source/WebCore/page/Performance.idl b/Source/WebCore/page/Performance.idl
index d55d577..c32cf32 100644
--- a/Source/WebCore/page/Performance.idl
+++ b/Source/WebCore/page/Performance.idl
@@ -29,14 +29,14 @@
  */
 
 // See: http://dev.w3.org/2006/webapi/WebTiming/
-interface [
+[
     Conditional=WEB_TIMING,
     EventTarget,
     OmitConstructor
-] Performance {
+] interface Performance {
     readonly attribute PerformanceNavigation navigation;
     readonly attribute PerformanceTiming timing;
-    readonly attribute [V8CustomGetter] MemoryInfo memory;
+    [V8CustomGetter] readonly attribute MemoryInfo memory;
 
 #if defined(ENABLE_PERFORMANCE_TIMELINE) && ENABLE_PERFORMANCE_TIMELINE
     PerformanceEntryList webkitGetEntries();
diff --git a/Source/WebCore/page/PerformanceEntry.idl b/Source/WebCore/page/PerformanceEntry.idl
index 519b687..ff38ded 100644
--- a/Source/WebCore/page/PerformanceEntry.idl
+++ b/Source/WebCore/page/PerformanceEntry.idl
@@ -29,12 +29,12 @@
  */
 
 // See: https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/PerformanceTimeline/Overview.html
-interface [
+[
     Conditional=WEB_TIMING,
     Conditional=PERFORMANCE_TIMELINE,
     CustomToJSObject,
     OmitConstructor
-] PerformanceEntry {
+] interface PerformanceEntry {
     readonly attribute DOMString name;
     readonly attribute DOMString entryType;
     readonly attribute double startTime;
diff --git a/Source/WebCore/page/PerformanceEntryList.idl b/Source/WebCore/page/PerformanceEntryList.idl
index e4fc282..9226541 100644
--- a/Source/WebCore/page/PerformanceEntryList.idl
+++ b/Source/WebCore/page/PerformanceEntryList.idl
@@ -29,12 +29,12 @@
  */
 
 // See: https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/PerformanceTimeline/Overview.html
-interface [
+[
     Conditional=WEB_TIMING,
     Conditional=PERFORMANCE_TIMELINE,
     OmitConstructor,
     IndexedGetter
-] PerformanceEntryList {
+] interface PerformanceEntryList {
     readonly attribute unsigned long length;
     PerformanceEntry item(in unsigned long index);
 };
diff --git a/Source/WebCore/page/PerformanceNavigation.idl b/Source/WebCore/page/PerformanceNavigation.idl
index 2a54f1c..e9add4c 100644
--- a/Source/WebCore/page/PerformanceNavigation.idl
+++ b/Source/WebCore/page/PerformanceNavigation.idl
@@ -29,10 +29,10 @@
  */
 
 // See: http://www.w3.org/TR/navigation-timing/
-interface [
+[
     Conditional=WEB_TIMING,
     OmitConstructor
-] PerformanceNavigation {
+] interface PerformanceNavigation {
     const unsigned short TYPE_NAVIGATE = 0;
     const unsigned short TYPE_RELOAD = 1;
     const unsigned short TYPE_BACK_FORWARD = 2;
diff --git a/Source/WebCore/page/PerformanceResourceTiming.idl b/Source/WebCore/page/PerformanceResourceTiming.idl
index 0da1c7d..b5d6053 100644
--- a/Source/WebCore/page/PerformanceResourceTiming.idl
+++ b/Source/WebCore/page/PerformanceResourceTiming.idl
@@ -29,10 +29,10 @@
  */
 
 // See: https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/ResourceTiming/Overview.html
-interface [
+[
     Conditional=RESOURCE_TIMING,
     OmitConstructor
-] PerformanceResourceTiming : PerformanceEntry {
+] interface PerformanceResourceTiming : PerformanceEntry {
     readonly attribute DOMString initiatorType;
 
     readonly attribute double redirectStart;
diff --git a/Source/WebCore/page/PerformanceTiming.idl b/Source/WebCore/page/PerformanceTiming.idl
index 907640d..ea823aa 100644
--- a/Source/WebCore/page/PerformanceTiming.idl
+++ b/Source/WebCore/page/PerformanceTiming.idl
@@ -29,10 +29,10 @@
  */
 
 // See: http://dev.w3.org/2006/webapi/WebTiming/
-interface [
+[
     Conditional=WEB_TIMING,
     OmitConstructor
-] PerformanceTiming {
+] interface PerformanceTiming {
     readonly attribute unsigned long long navigationStart;
     readonly attribute unsigned long long unloadEventStart;
     readonly attribute unsigned long long unloadEventEnd;
diff --git a/Source/WebCore/page/Screen.idl b/Source/WebCore/page/Screen.idl
index 684f1e2..ee3cc30 100644
--- a/Source/WebCore/page/Screen.idl
+++ b/Source/WebCore/page/Screen.idl
@@ -27,10 +27,10 @@
  */
 
 
-interface [
+[
     JSGenerateIsReachable=ImplFrame,
     OmitConstructor
-] Screen {
+] interface Screen {
     readonly attribute unsigned long height;
     readonly attribute unsigned long width;
     readonly attribute unsigned long colorDepth;
diff --git a/Source/WebCore/page/SpeechInputEvent.idl b/Source/WebCore/page/SpeechInputEvent.idl
index eff4cca..be82107 100644
--- a/Source/WebCore/page/SpeechInputEvent.idl
+++ b/Source/WebCore/page/SpeechInputEvent.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INPUT_SPEECH,
-] SpeechInputEvent : Event {
+] interface SpeechInputEvent : Event {
     readonly attribute SpeechInputResultList results;
 };
 
diff --git a/Source/WebCore/page/SpeechInputResult.idl b/Source/WebCore/page/SpeechInputResult.idl
index 9f2c02c..ee17270 100644
--- a/Source/WebCore/page/SpeechInputResult.idl
+++ b/Source/WebCore/page/SpeechInputResult.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=INPUT_SPEECH,
-] SpeechInputResult {
+] interface SpeechInputResult {
     readonly attribute DOMString utterance;
     readonly attribute float confidence;
 };
diff --git a/Source/WebCore/page/SpeechInputResultList.idl b/Source/WebCore/page/SpeechInputResultList.idl
index 12e6b0e..79357cd 100644
--- a/Source/WebCore/page/SpeechInputResultList.idl
+++ b/Source/WebCore/page/SpeechInputResultList.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     IndexedGetter,
     Conditional=INPUT_SPEECH
-] SpeechInputResultList {
+] interface SpeechInputResultList {
     readonly attribute unsigned long length;
     SpeechInputResult item(in [IsIndex] unsigned long index);
 };
diff --git a/Source/WebCore/page/WebKitAnimation.idl b/Source/WebCore/page/WebKitAnimation.idl
index 7502223..2618be0 100644
--- a/Source/WebCore/page/WebKitAnimation.idl
+++ b/Source/WebCore/page/WebKitAnimation.idl
@@ -34,7 +34,7 @@
     attribute double elapsedTime;
 
     readonly attribute double delay;
-    readonly attribute [Custom] long iterationCount;
+    [Custom] readonly attribute long iterationCount;
 
     readonly attribute boolean paused;
     readonly attribute boolean ended;
diff --git a/Source/WebCore/page/WebKitAnimationList.idl b/Source/WebCore/page/WebKitAnimationList.idl
index 458bc3b..cf2da14 100644
--- a/Source/WebCore/page/WebKitAnimationList.idl
+++ b/Source/WebCore/page/WebKitAnimationList.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     IndexedGetter
-] WebKitAnimationList {
+] interface WebKitAnimationList {
     readonly attribute unsigned long length;
     WebKitAnimation item(in unsigned long index);
 };
diff --git a/Source/WebCore/page/WebKitPoint.idl b/Source/WebCore/page/WebKitPoint.idl
index 8f36e67..7034eb4 100644
--- a/Source/WebCore/page/WebKitPoint.idl
+++ b/Source/WebCore/page/WebKitPoint.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     CustomConstructor,
     ConstructorParameters=2
-] WebKitPoint {
+] interface WebKitPoint {
     attribute float x;
     attribute float y;
 };
diff --git a/Source/WebCore/page/WorkerNavigator.idl b/Source/WebCore/page/WorkerNavigator.idl
index c793a86..c37e200 100644
--- a/Source/WebCore/page/WorkerNavigator.idl
+++ b/Source/WebCore/page/WorkerNavigator.idl
@@ -26,12 +26,12 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WORKERS,
     JSGenerateIsReachable=Impl,
     JSNoStaticTables,
     OmitConstructor
-] WorkerNavigator {
+] interface WorkerNavigator {
     readonly attribute DOMString appName;
     readonly attribute DOMString appVersion;
     readonly attribute DOMString platform;
diff --git a/Source/WebCore/plugins/DOMMimeType.idl b/Source/WebCore/plugins/DOMMimeType.idl
index 66188ad..0e3bd43 100644
--- a/Source/WebCore/plugins/DOMMimeType.idl
+++ b/Source/WebCore/plugins/DOMMimeType.idl
@@ -18,9 +18,9 @@
     Boston, MA 02110-1301, USA.
 */
 
-interface [
+[
     InterfaceName=MimeType
-] DOMMimeType {
+] interface DOMMimeType {
     readonly attribute DOMString type;
     readonly attribute DOMString suffixes;
     readonly attribute DOMString description;
diff --git a/Source/WebCore/plugins/DOMMimeTypeArray.idl b/Source/WebCore/plugins/DOMMimeTypeArray.idl
index c83c868..0c24c5b 100644
--- a/Source/WebCore/plugins/DOMMimeTypeArray.idl
+++ b/Source/WebCore/plugins/DOMMimeTypeArray.idl
@@ -18,12 +18,12 @@
     Boston, MA 02110-1301, USA.
 */
 
-interface [
+[
     JSGenerateIsReachable=ImplFrame,
     NamedGetter,
     IndexedGetter,
     InterfaceName=MimeTypeArray
-] DOMMimeTypeArray {
+] interface DOMMimeTypeArray {
     readonly attribute unsigned long length;
     DOMMimeType item(in [Optional=DefaultIsUndefined] unsigned long index);
     DOMMimeType namedItem(in [Optional=DefaultIsUndefined] DOMString name);
diff --git a/Source/WebCore/plugins/DOMPlugin.idl b/Source/WebCore/plugins/DOMPlugin.idl
index 6c6f294..523cebd 100644
--- a/Source/WebCore/plugins/DOMPlugin.idl
+++ b/Source/WebCore/plugins/DOMPlugin.idl
@@ -18,11 +18,11 @@
     Boston, MA 02110-1301, USA.
 */
 
-interface [
+[
     NamedGetter,
     IndexedGetter,
     InterfaceName=Plugin
-] DOMPlugin {
+] interface DOMPlugin {
     readonly attribute DOMString name;
     readonly attribute DOMString filename;
     readonly attribute DOMString description;
diff --git a/Source/WebCore/plugins/DOMPluginArray.idl b/Source/WebCore/plugins/DOMPluginArray.idl
index 0756f96..ef4708b 100644
--- a/Source/WebCore/plugins/DOMPluginArray.idl
+++ b/Source/WebCore/plugins/DOMPluginArray.idl
@@ -18,12 +18,12 @@
     Boston, MA 02110-1301, USA.
 */
 
-interface [
+[
     JSGenerateIsReachable=ImplFrame,
     NamedGetter,
     IndexedGetter,
     InterfaceName=PluginArray
-] DOMPluginArray {
+] interface DOMPluginArray {
     readonly attribute unsigned long length;
     DOMPlugin item(in [Optional=DefaultIsUndefined] unsigned long index);
     DOMPlugin namedItem(in [Optional=DefaultIsUndefined] DOMString name);
diff --git a/Source/WebCore/storage/Storage.idl b/Source/WebCore/storage/Storage.idl
index 3807fa1..55da555 100644
--- a/Source/WebCore/storage/Storage.idl
+++ b/Source/WebCore/storage/Storage.idl
@@ -23,14 +23,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     NamedGetter,
     JSGenerateIsReachable=ImplFrame,
     CustomDeleteProperty,
     CustomEnumerateProperty,
     CustomNamedSetter,
-] Storage {
-    readonly attribute [NotEnumerable] unsigned long length;
+] interface Storage {
+    [NotEnumerable] readonly attribute unsigned long length;
     [NotEnumerable, TreatReturnedNullStringAs=Null] DOMString key(in unsigned long index);
     [NotEnumerable, TreatReturnedNullStringAs=Null] DOMString getItem(in DOMString key);
     [NotEnumerable] void setItem(in DOMString key, in DOMString data) 
diff --git a/Source/WebCore/storage/StorageEvent.idl b/Source/WebCore/storage/StorageEvent.idl
index b2556a4..6880d19 100644
--- a/Source/WebCore/storage/StorageEvent.idl
+++ b/Source/WebCore/storage/StorageEvent.idl
@@ -23,14 +23,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     ConstructorTemplate=Event
-] StorageEvent : Event {
-    readonly attribute [InitializedByEventConstructor] DOMString key;
-    readonly attribute [InitializedByEventConstructor, TreatReturnedNullStringAs=Null] DOMString oldValue;
-    readonly attribute [InitializedByEventConstructor, TreatReturnedNullStringAs=Null] DOMString newValue;
-    readonly attribute [InitializedByEventConstructor] DOMString url;
-    readonly attribute [InitializedByEventConstructor] Storage storageArea;
+] interface StorageEvent : Event {
+    [InitializedByEventConstructor] readonly attribute DOMString key;
+    [InitializedByEventConstructor, TreatReturnedNullStringAs=Null] readonly attribute DOMString oldValue;
+    [InitializedByEventConstructor, TreatReturnedNullStringAs=Null] readonly attribute DOMString newValue;
+    [InitializedByEventConstructor] readonly attribute DOMString url;
+    [InitializedByEventConstructor] readonly attribute Storage storageArea;
 
     void initStorageEvent(in [Optional=DefaultIsUndefined] DOMString typeArg, 
                           in [Optional=DefaultIsUndefined] boolean canBubbleArg, 
diff --git a/Source/WebCore/svg/ElementTimeControl.idl b/Source/WebCore/svg/ElementTimeControl.idl
index 6161f2e..6391176 100644
--- a/Source/WebCore/svg/ElementTimeControl.idl
+++ b/Source/WebCore/svg/ElementTimeControl.idl
@@ -24,11 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
  
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     OmitConstructor
-] ElementTimeControl { 
+] interface ElementTimeControl { 
     void beginElement();
     void beginElementAt(in [Optional=DefaultIsUndefined] float offset);
     void endElement();
diff --git a/Source/WebCore/svg/SVGAElement.idl b/Source/WebCore/svg/SVGAElement.idl
index 60e0c7c..3809390 100644
--- a/Source/WebCore/svg/SVGAElement.idl
+++ b/Source/WebCore/svg/SVGAElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAElement : SVGElement,
+] interface SVGAElement : SVGElement,
                                           SVGURIReference,
                                           SVGTests,
                                           SVGLangSpace,
diff --git a/Source/WebCore/svg/SVGAltGlyphDefElement.idl b/Source/WebCore/svg/SVGAltGlyphDefElement.idl
index aa6b23a..abe10b6 100644
--- a/Source/WebCore/svg/SVGAltGlyphDefElement.idl
+++ b/Source/WebCore/svg/SVGAltGlyphDefElement.idl
@@ -17,6 +17,6 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [Conditional=SVG&SVG_FONTS] SVGAltGlyphDefElement : SVGElement {
+[Conditional=SVG&SVG_FONTS] interface SVGAltGlyphDefElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGAltGlyphElement.idl b/Source/WebCore/svg/SVGAltGlyphElement.idl
index cd426a9..52bdabc 100644
--- a/Source/WebCore/svg/SVGAltGlyphElement.idl
+++ b/Source/WebCore/svg/SVGAltGlyphElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS,
-] SVGAltGlyphElement : SVGTextPositioningElement, SVGURIReference {
+] interface SVGAltGlyphElement : SVGTextPositioningElement, SVGURIReference {
     attribute DOMString glyphRef
         setter raises(DOMException);
     attribute DOMString format
diff --git a/Source/WebCore/svg/SVGAltGlyphItemElement.idl b/Source/WebCore/svg/SVGAltGlyphItemElement.idl
index debb944..e4bb797 100644
--- a/Source/WebCore/svg/SVGAltGlyphItemElement.idl
+++ b/Source/WebCore/svg/SVGAltGlyphItemElement.idl
@@ -17,6 +17,6 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [Conditional=SVG&SVG_FONTS] SVGAltGlyphItemElement : SVGElement {
+[Conditional=SVG&SVG_FONTS] interface SVGAltGlyphItemElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGAngle.idl b/Source/WebCore/svg/SVGAngle.idl
index 9509c8f..5988c0e 100644
--- a/Source/WebCore/svg/SVGAngle.idl
+++ b/Source/WebCore/svg/SVGAngle.idl
@@ -20,9 +20,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAngle { 
+] interface SVGAngle { 
     // Angle Unit Types
     const unsigned short SVG_ANGLETYPE_UNKNOWN = 0;
     const unsigned short SVG_ANGLETYPE_UNSPECIFIED = 1;
@@ -31,10 +31,10 @@
     const unsigned short SVG_ANGLETYPE_GRAD = 4;
 
     readonly attribute unsigned short unitType;
-    attribute [StrictTypeChecking] float value;
-    attribute [StrictTypeChecking] float valueInSpecifiedUnits;
+    [StrictTypeChecking] attribute float value;
+    [StrictTypeChecking] attribute float valueInSpecifiedUnits;
 
-    attribute [TreatNullAs=NullString] DOMString valueAsString
+    [TreatNullAs=NullString] attribute DOMString valueAsString
         setter raises(DOMException);
 
     [StrictTypeChecking] void newValueSpecifiedUnits(in unsigned short unitType, in float valueInSpecifiedUnits)
diff --git a/Source/WebCore/svg/SVGAnimateColorElement.idl b/Source/WebCore/svg/SVGAnimateColorElement.idl
index a4748de..930e406 100644
--- a/Source/WebCore/svg/SVGAnimateColorElement.idl
+++ b/Source/WebCore/svg/SVGAnimateColorElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimateColorElement : SVGAnimationElement {
+] interface SVGAnimateColorElement : SVGAnimationElement {
 };
 
diff --git a/Source/WebCore/svg/SVGAnimateElement.idl b/Source/WebCore/svg/SVGAnimateElement.idl
index d1d1abb..95a10fb 100644
--- a/Source/WebCore/svg/SVGAnimateElement.idl
+++ b/Source/WebCore/svg/SVGAnimateElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimateElement : SVGAnimationElement {
+] interface SVGAnimateElement : SVGAnimationElement {
 };
 
diff --git a/Source/WebCore/svg/SVGAnimateMotionElement.idl b/Source/WebCore/svg/SVGAnimateMotionElement.idl
index 4b1e1dc..997febf 100644
--- a/Source/WebCore/svg/SVGAnimateMotionElement.idl
+++ b/Source/WebCore/svg/SVGAnimateMotionElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimateMotionElement : SVGAnimationElement {
+] interface SVGAnimateMotionElement : SVGAnimationElement {
 };
 
diff --git a/Source/WebCore/svg/SVGAnimateTransformElement.idl b/Source/WebCore/svg/SVGAnimateTransformElement.idl
index 963d255..d676f32 100644
--- a/Source/WebCore/svg/SVGAnimateTransformElement.idl
+++ b/Source/WebCore/svg/SVGAnimateTransformElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimateTransformElement : SVGAnimationElement {
+] interface SVGAnimateTransformElement : SVGAnimationElement {
 };
 
diff --git a/Source/WebCore/svg/SVGAnimatedAngle.idl b/Source/WebCore/svg/SVGAnimatedAngle.idl
index 7446122..3e96104 100644
--- a/Source/WebCore/svg/SVGAnimatedAngle.idl
+++ b/Source/WebCore/svg/SVGAnimatedAngle.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedAngle {
+] interface SVGAnimatedAngle {
     readonly attribute SVGAngle baseVal;
     readonly attribute SVGAngle animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedBoolean.idl b/Source/WebCore/svg/SVGAnimatedBoolean.idl
index af4e421..e50521b 100644
--- a/Source/WebCore/svg/SVGAnimatedBoolean.idl
+++ b/Source/WebCore/svg/SVGAnimatedBoolean.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedBoolean {
-    attribute [StrictTypeChecking] boolean baseVal
+] interface SVGAnimatedBoolean {
+    [StrictTypeChecking] attribute boolean baseVal
         setter raises(DOMException);
     readonly attribute boolean animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedEnumeration.idl b/Source/WebCore/svg/SVGAnimatedEnumeration.idl
index 83f19eb..6b90981 100644
--- a/Source/WebCore/svg/SVGAnimatedEnumeration.idl
+++ b/Source/WebCore/svg/SVGAnimatedEnumeration.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedEnumeration {
-    attribute [StrictTypeChecking] unsigned short baseVal
+] interface SVGAnimatedEnumeration {
+    [StrictTypeChecking] attribute unsigned short baseVal
         setter raises(DOMException);
     readonly attribute unsigned short animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedInteger.idl b/Source/WebCore/svg/SVGAnimatedInteger.idl
index 887f862..ecabce7 100644
--- a/Source/WebCore/svg/SVGAnimatedInteger.idl
+++ b/Source/WebCore/svg/SVGAnimatedInteger.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedInteger {
-    attribute [StrictTypeChecking] long baseVal
+] interface SVGAnimatedInteger {
+    [StrictTypeChecking] attribute long baseVal
         setter raises(DOMException);
     readonly attribute long animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedLength.idl b/Source/WebCore/svg/SVGAnimatedLength.idl
index aef8778..241aaad 100644
--- a/Source/WebCore/svg/SVGAnimatedLength.idl
+++ b/Source/WebCore/svg/SVGAnimatedLength.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedLength {
+] interface SVGAnimatedLength {
     readonly attribute SVGLength baseVal;
     readonly attribute SVGLength animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedLengthList.idl b/Source/WebCore/svg/SVGAnimatedLengthList.idl
index da22671..934748a 100644
--- a/Source/WebCore/svg/SVGAnimatedLengthList.idl
+++ b/Source/WebCore/svg/SVGAnimatedLengthList.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedLengthList {
+] interface SVGAnimatedLengthList {
     readonly attribute SVGLengthList baseVal;
     readonly attribute SVGLengthList animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedNumber.idl b/Source/WebCore/svg/SVGAnimatedNumber.idl
index f7bf5bb..ab770f9 100644
--- a/Source/WebCore/svg/SVGAnimatedNumber.idl
+++ b/Source/WebCore/svg/SVGAnimatedNumber.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedNumber {
-    attribute [StrictTypeChecking] float baseVal
+] interface SVGAnimatedNumber {
+    [StrictTypeChecking] attribute float baseVal
         setter raises(DOMException);
     readonly attribute float animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedNumberList.idl b/Source/WebCore/svg/SVGAnimatedNumberList.idl
index e8326fa..b912780 100644
--- a/Source/WebCore/svg/SVGAnimatedNumberList.idl
+++ b/Source/WebCore/svg/SVGAnimatedNumberList.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedNumberList {
+] interface SVGAnimatedNumberList {
     readonly attribute SVGNumberList baseVal;
     readonly attribute SVGNumberList animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedPreserveAspectRatio.idl b/Source/WebCore/svg/SVGAnimatedPreserveAspectRatio.idl
index d0e7e81..a84c02d 100644
--- a/Source/WebCore/svg/SVGAnimatedPreserveAspectRatio.idl
+++ b/Source/WebCore/svg/SVGAnimatedPreserveAspectRatio.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedPreserveAspectRatio {
+] interface SVGAnimatedPreserveAspectRatio {
     readonly attribute SVGPreserveAspectRatio baseVal;
     readonly attribute SVGPreserveAspectRatio animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedRect.idl b/Source/WebCore/svg/SVGAnimatedRect.idl
index fcf39e4..99e9a62 100644
--- a/Source/WebCore/svg/SVGAnimatedRect.idl
+++ b/Source/WebCore/svg/SVGAnimatedRect.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedRect {
+] interface SVGAnimatedRect {
     readonly attribute SVGRect baseVal;
     readonly attribute SVGRect animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimatedString.idl b/Source/WebCore/svg/SVGAnimatedString.idl
index 3177999..10838b4 100644
--- a/Source/WebCore/svg/SVGAnimatedString.idl
+++ b/Source/WebCore/svg/SVGAnimatedString.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedString {
+] interface SVGAnimatedString {
     attribute DOMString baseVal
         setter raises(DOMException);
     readonly attribute DOMString animVal;
diff --git a/Source/WebCore/svg/SVGAnimatedTransformList.idl b/Source/WebCore/svg/SVGAnimatedTransformList.idl
index d9d2e98..4ce7240 100644
--- a/Source/WebCore/svg/SVGAnimatedTransformList.idl
+++ b/Source/WebCore/svg/SVGAnimatedTransformList.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGAnimatedTransformList {
+] interface SVGAnimatedTransformList {
     readonly attribute SVGTransformList baseVal;
     readonly attribute SVGTransformList animVal;
 };
diff --git a/Source/WebCore/svg/SVGAnimationElement.idl b/Source/WebCore/svg/SVGAnimationElement.idl
index ee5112d..2afef76 100644
--- a/Source/WebCore/svg/SVGAnimationElement.idl
+++ b/Source/WebCore/svg/SVGAnimationElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     OmitConstructor
-] SVGAnimationElement : SVGElement,
+] interface SVGAnimationElement : SVGElement,
                                                   SVGTests,
                                                   SVGExternalResourcesRequired,
                                                   ElementTimeControl {
diff --git a/Source/WebCore/svg/SVGCircleElement.idl b/Source/WebCore/svg/SVGCircleElement.idl
index c8d03a7..148a107 100644
--- a/Source/WebCore/svg/SVGCircleElement.idl
+++ b/Source/WebCore/svg/SVGCircleElement.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGCircleElement : SVGElement,
+] interface SVGCircleElement : SVGElement,
                                                SVGTests,
                                                SVGLangSpace,
                                                SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGClipPathElement.idl b/Source/WebCore/svg/SVGClipPathElement.idl
index 6dab01d..75e3ce8 100644
--- a/Source/WebCore/svg/SVGClipPathElement.idl
+++ b/Source/WebCore/svg/SVGClipPathElement.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGClipPathElement : SVGElement,
+] interface SVGClipPathElement : SVGElement,
                                                  SVGTests,
                                                  SVGLangSpace,
                                                  SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGColor.idl b/Source/WebCore/svg/SVGColor.idl
index 1f6d4f4..e7a5328 100644
--- a/Source/WebCore/svg/SVGColor.idl
+++ b/Source/WebCore/svg/SVGColor.idl
@@ -19,9 +19,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGColor : CSSValue {
+] interface SVGColor : CSSValue {
     const unsigned short SVG_COLORTYPE_UNKNOWN = 0;
     const unsigned short SVG_COLORTYPE_RGBCOLOR = 1;
     const unsigned short SVG_COLORTYPE_RGBCOLOR_ICCCOLOR = 2;
diff --git a/Source/WebCore/svg/SVGComponentTransferFunctionElement.idl b/Source/WebCore/svg/SVGComponentTransferFunctionElement.idl
index 2782bf4..bc0ce06 100644
--- a/Source/WebCore/svg/SVGComponentTransferFunctionElement.idl
+++ b/Source/WebCore/svg/SVGComponentTransferFunctionElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS,
     DoNotCheckConstants
-] SVGComponentTransferFunctionElement : SVGElement {
+] interface SVGComponentTransferFunctionElement : SVGElement {
     // Component Transfer Types
     const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN  = 0;
     const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY = 1;
diff --git a/Source/WebCore/svg/SVGCursorElement.idl b/Source/WebCore/svg/SVGCursorElement.idl
index c11d7e2..4686227 100644
--- a/Source/WebCore/svg/SVGCursorElement.idl
+++ b/Source/WebCore/svg/SVGCursorElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGCursorElement : SVGElement,
+] interface SVGCursorElement : SVGElement,
                                                SVGURIReference,
                                                SVGTests,
                                                SVGExternalResourcesRequired {
diff --git a/Source/WebCore/svg/SVGDefsElement.idl b/Source/WebCore/svg/SVGDefsElement.idl
index 9a4dda9..85a69b8 100644
--- a/Source/WebCore/svg/SVGDefsElement.idl
+++ b/Source/WebCore/svg/SVGDefsElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGDefsElement : SVGElement,
+] interface SVGDefsElement : SVGElement,
                                              SVGTests,
                                              SVGLangSpace,
                                              SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGDescElement.idl b/Source/WebCore/svg/SVGDescElement.idl
index fa5ace6..2c60fb7 100644
--- a/Source/WebCore/svg/SVGDescElement.idl
+++ b/Source/WebCore/svg/SVGDescElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGDescElement : SVGElement,
+] interface SVGDescElement : SVGElement,
                                              SVGLangSpace,
                                              SVGStylable {
 };
diff --git a/Source/WebCore/svg/SVGDocument.idl b/Source/WebCore/svg/SVGDocument.idl
index 6fa65bf..024c078 100644
--- a/Source/WebCore/svg/SVGDocument.idl
+++ b/Source/WebCore/svg/SVGDocument.idl
@@ -19,10 +19,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG,
     V8CustomToJSObject
-] SVGDocument : Document {
+] interface SVGDocument : Document {
     readonly attribute SVGSVGElement        rootElement;
 
     // Overwrite the one in events::DocumentEvent
diff --git a/Source/WebCore/svg/SVGElement.idl b/Source/WebCore/svg/SVGElement.idl
index 47c44b3..ae35f3f 100644
--- a/Source/WebCore/svg/SVGElement.idl
+++ b/Source/WebCore/svg/SVGElement.idl
@@ -20,13 +20,13 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSGenerateToNativeObject,
     Conditional=SVG,
     V8CustomToJSObject
-] SVGElement : Element {
-    attribute [Reflect] DOMString id;
-    attribute [TreatNullAs=NullString] DOMString xmlbase setter raises(DOMException);
+] interface SVGElement : Element {
+    [Reflect] attribute DOMString id;
+    [TreatNullAs=NullString] attribute DOMString xmlbase setter raises(DOMException);
     readonly attribute SVGSVGElement ownerSVGElement;
     readonly attribute SVGElement viewportElement;
 };
diff --git a/Source/WebCore/svg/SVGElementInstance.idl b/Source/WebCore/svg/SVGElementInstance.idl
index 5b13036..ac518de 100644
--- a/Source/WebCore/svg/SVGElementInstance.idl
+++ b/Source/WebCore/svg/SVGElementInstance.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     JSCustomMarkFunction,
     JSGenerateToNativeObject,
     JSGenerateToJSObject
-] SVGElementInstance
+] interface SVGElementInstance
 #if defined(LANGUAGE_OBJECTIVE_C) && LANGUAGE_OBJECTIVE_C
     : Object, EventTarget
 #else
diff --git a/Source/WebCore/svg/SVGElementInstanceList.idl b/Source/WebCore/svg/SVGElementInstanceList.idl
index 35be358..2aca3fa 100644
--- a/Source/WebCore/svg/SVGElementInstanceList.idl
+++ b/Source/WebCore/svg/SVGElementInstanceList.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGElementInstanceList {
+] interface SVGElementInstanceList {
     readonly attribute unsigned long length;
 
     SVGElementInstance item(in [Optional=DefaultIsUndefined] unsigned long index);
diff --git a/Source/WebCore/svg/SVGEllipseElement.idl b/Source/WebCore/svg/SVGEllipseElement.idl
index 33dcaec..1170baa 100644
--- a/Source/WebCore/svg/SVGEllipseElement.idl
+++ b/Source/WebCore/svg/SVGEllipseElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGEllipseElement : SVGElement,
+] interface SVGEllipseElement : SVGElement,
                                                 SVGTests,
                                                 SVGLangSpace,
                                                 SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGException.idl b/Source/WebCore/svg/SVGException.idl
index 7b35770..4745115 100644
--- a/Source/WebCore/svg/SVGException.idl
+++ b/Source/WebCore/svg/SVGException.idl
@@ -18,10 +18,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-exception [
+[
     Conditional=SVG,
     DoNotCheckConstants
-] SVGException {
+] exception SVGException {
 
     readonly attribute unsigned short   code;
     readonly attribute DOMString        name;
diff --git a/Source/WebCore/svg/SVGExternalResourcesRequired.idl b/Source/WebCore/svg/SVGExternalResourcesRequired.idl
index 9a8abbe..65567f0 100644
--- a/Source/WebCore/svg/SVGExternalResourcesRequired.idl
+++ b/Source/WebCore/svg/SVGExternalResourcesRequired.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     SuppressToJSObject,
     OmitConstructor
-] SVGExternalResourcesRequired { 
+] interface SVGExternalResourcesRequired { 
     readonly attribute SVGAnimatedBoolean externalResourcesRequired;
 };
 
diff --git a/Source/WebCore/svg/SVGFEBlendElement.idl b/Source/WebCore/svg/SVGFEBlendElement.idl
index 5cae774..f5c017d 100644
--- a/Source/WebCore/svg/SVGFEBlendElement.idl
+++ b/Source/WebCore/svg/SVGFEBlendElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS,
     DoNotCheckConstants
-] SVGFEBlendElement : SVGElement,
+] interface SVGFEBlendElement : SVGElement,
                       SVGFilterPrimitiveStandardAttributes {
     // Blend Mode Types
     const unsigned short SVG_FEBLEND_MODE_UNKNOWN  = 0;
diff --git a/Source/WebCore/svg/SVGFEColorMatrixElement.idl b/Source/WebCore/svg/SVGFEColorMatrixElement.idl
index 1707531..9915433 100644
--- a/Source/WebCore/svg/SVGFEColorMatrixElement.idl
+++ b/Source/WebCore/svg/SVGFEColorMatrixElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS,
     DoNotCheckConstants
-] SVGFEColorMatrixElement : SVGElement,
+] interface SVGFEColorMatrixElement : SVGElement,
                             SVGFilterPrimitiveStandardAttributes {
     // Color Matrix Types
     const unsigned short SVG_FECOLORMATRIX_TYPE_UNKNOWN          = 0;
diff --git a/Source/WebCore/svg/SVGFEComponentTransferElement.idl b/Source/WebCore/svg/SVGFEComponentTransferElement.idl
index fcdb862..e7f63c6 100644
--- a/Source/WebCore/svg/SVGFEComponentTransferElement.idl
+++ b/Source/WebCore/svg/SVGFEComponentTransferElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEComponentTransferElement : SVGElement,
+] interface SVGFEComponentTransferElement : SVGElement,
                                                             SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
 };
diff --git a/Source/WebCore/svg/SVGFECompositeElement.idl b/Source/WebCore/svg/SVGFECompositeElement.idl
index 9daea65..695d510 100644
--- a/Source/WebCore/svg/SVGFECompositeElement.idl
+++ b/Source/WebCore/svg/SVGFECompositeElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS,
     DoNotCheckConstants
-] SVGFECompositeElement : SVGElement,
+] interface SVGFECompositeElement : SVGElement,
                           SVGFilterPrimitiveStandardAttributes {
     // Composite Operators
     const unsigned short SVG_FECOMPOSITE_OPERATOR_UNKNOWN    = 0;
diff --git a/Source/WebCore/svg/SVGFEConvolveMatrixElement.idl b/Source/WebCore/svg/SVGFEConvolveMatrixElement.idl
index e171d09..2d54511 100644
--- a/Source/WebCore/svg/SVGFEConvolveMatrixElement.idl
+++ b/Source/WebCore/svg/SVGFEConvolveMatrixElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS,
     DoNotCheckConstants
-] SVGFEConvolveMatrixElement : SVGElement,
+] interface SVGFEConvolveMatrixElement : SVGElement,
                                SVGFilterPrimitiveStandardAttributes {
     // Edge Mode Values
     const unsigned short SVG_EDGEMODE_UNKNOWN   = 0;
diff --git a/Source/WebCore/svg/SVGFEDiffuseLightingElement.idl b/Source/WebCore/svg/SVGFEDiffuseLightingElement.idl
index 6d923ec..e3d5871 100644
--- a/Source/WebCore/svg/SVGFEDiffuseLightingElement.idl
+++ b/Source/WebCore/svg/SVGFEDiffuseLightingElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEDiffuseLightingElement : SVGElement,
+] interface SVGFEDiffuseLightingElement : SVGElement,
                                                           SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber surfaceScale;
diff --git a/Source/WebCore/svg/SVGFEDisplacementMapElement.idl b/Source/WebCore/svg/SVGFEDisplacementMapElement.idl
index 314e344..42584fa 100644
--- a/Source/WebCore/svg/SVGFEDisplacementMapElement.idl
+++ b/Source/WebCore/svg/SVGFEDisplacementMapElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS,
     DoNotCheckConstants
-] SVGFEDisplacementMapElement : SVGElement,
+] interface SVGFEDisplacementMapElement : SVGElement,
                                 SVGFilterPrimitiveStandardAttributes {
     // Channel Selectors
     const unsigned short SVG_CHANNEL_UNKNOWN = 0;
diff --git a/Source/WebCore/svg/SVGFEDistantLightElement.idl b/Source/WebCore/svg/SVGFEDistantLightElement.idl
index 5978071..e62b8f5 100644
--- a/Source/WebCore/svg/SVGFEDistantLightElement.idl
+++ b/Source/WebCore/svg/SVGFEDistantLightElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEDistantLightElement : SVGElement {
+] interface SVGFEDistantLightElement : SVGElement {
     readonly attribute SVGAnimatedNumber azimuth;
     readonly attribute SVGAnimatedNumber elevation;
 };
diff --git a/Source/WebCore/svg/SVGFEDropShadowElement.idl b/Source/WebCore/svg/SVGFEDropShadowElement.idl
index 5992eab..1717224 100644
--- a/Source/WebCore/svg/SVGFEDropShadowElement.idl
+++ b/Source/WebCore/svg/SVGFEDropShadowElement.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEDropShadowElement : SVGElement,
+] interface SVGFEDropShadowElement : SVGElement,
                                                        SVGFilterPrimitiveStandardAttributes { 
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber dx;
diff --git a/Source/WebCore/svg/SVGFEFloodElement.idl b/Source/WebCore/svg/SVGFEFloodElement.idl
index 45d2e81..345601a 100644
--- a/Source/WebCore/svg/SVGFEFloodElement.idl
+++ b/Source/WebCore/svg/SVGFEFloodElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEFloodElement : SVGElement,
+] interface SVGFEFloodElement : SVGElement,
                                                 SVGFilterPrimitiveStandardAttributes {
 };
diff --git a/Source/WebCore/svg/SVGFEFuncAElement.idl b/Source/WebCore/svg/SVGFEFuncAElement.idl
index 2b62c3e..4d78ecd 100644
--- a/Source/WebCore/svg/SVGFEFuncAElement.idl
+++ b/Source/WebCore/svg/SVGFEFuncAElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEFuncAElement : SVGComponentTransferFunctionElement {
+] interface SVGFEFuncAElement : SVGComponentTransferFunctionElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFEFuncBElement.idl b/Source/WebCore/svg/SVGFEFuncBElement.idl
index 2a67351..a143760 100644
--- a/Source/WebCore/svg/SVGFEFuncBElement.idl
+++ b/Source/WebCore/svg/SVGFEFuncBElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEFuncBElement : SVGComponentTransferFunctionElement {
+] interface SVGFEFuncBElement : SVGComponentTransferFunctionElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFEFuncGElement.idl b/Source/WebCore/svg/SVGFEFuncGElement.idl
index 21260d5..53c6e68 100644
--- a/Source/WebCore/svg/SVGFEFuncGElement.idl
+++ b/Source/WebCore/svg/SVGFEFuncGElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEFuncGElement : SVGComponentTransferFunctionElement {
+] interface SVGFEFuncGElement : SVGComponentTransferFunctionElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFEFuncRElement.idl b/Source/WebCore/svg/SVGFEFuncRElement.idl
index f4a2672..0f73b9a 100644
--- a/Source/WebCore/svg/SVGFEFuncRElement.idl
+++ b/Source/WebCore/svg/SVGFEFuncRElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEFuncRElement : SVGComponentTransferFunctionElement {
+] interface SVGFEFuncRElement : SVGComponentTransferFunctionElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFEGaussianBlurElement.idl b/Source/WebCore/svg/SVGFEGaussianBlurElement.idl
index c0334f5..295d5be 100644
--- a/Source/WebCore/svg/SVGFEGaussianBlurElement.idl
+++ b/Source/WebCore/svg/SVGFEGaussianBlurElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEGaussianBlurElement : SVGElement,
+] interface SVGFEGaussianBlurElement : SVGElement,
                                                        SVGFilterPrimitiveStandardAttributes { 
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber stdDeviationX;
diff --git a/Source/WebCore/svg/SVGFEImageElement.idl b/Source/WebCore/svg/SVGFEImageElement.idl
index 65ba6b9..9fd5e93 100644
--- a/Source/WebCore/svg/SVGFEImageElement.idl
+++ b/Source/WebCore/svg/SVGFEImageElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEImageElement : SVGElement,
+] interface SVGFEImageElement : SVGElement,
                                                         SVGURIReference,
                                                         SVGLangSpace,
                                                         SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGFEMergeElement.idl b/Source/WebCore/svg/SVGFEMergeElement.idl
index f8f2f7a..e7f444f 100644
--- a/Source/WebCore/svg/SVGFEMergeElement.idl
+++ b/Source/WebCore/svg/SVGFEMergeElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEMergeElement : SVGElement,
+] interface SVGFEMergeElement : SVGElement,
                                                 SVGFilterPrimitiveStandardAttributes {
 };
 
diff --git a/Source/WebCore/svg/SVGFEMergeNodeElement.idl b/Source/WebCore/svg/SVGFEMergeNodeElement.idl
index 748eebd..f7093c4 100644
--- a/Source/WebCore/svg/SVGFEMergeNodeElement.idl
+++ b/Source/WebCore/svg/SVGFEMergeNodeElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEMergeNodeElement : SVGElement {
+] interface SVGFEMergeNodeElement : SVGElement {
     readonly attribute SVGAnimatedString in1;
 };
 
diff --git a/Source/WebCore/svg/SVGFEMorphologyElement.idl b/Source/WebCore/svg/SVGFEMorphologyElement.idl
index 26d2772..996bfb8 100644
--- a/Source/WebCore/svg/SVGFEMorphologyElement.idl
+++ b/Source/WebCore/svg/SVGFEMorphologyElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS,
     DoNotCheckConstants
-] SVGFEMorphologyElement : SVGElement,
+] interface SVGFEMorphologyElement : SVGElement,
                            SVGFilterPrimitiveStandardAttributes {
     // Morphology Operators
     const unsigned short SVG_MORPHOLOGY_OPERATOR_UNKNOWN  = 0;
diff --git a/Source/WebCore/svg/SVGFEOffsetElement.idl b/Source/WebCore/svg/SVGFEOffsetElement.idl
index 11b2dd6..c4625fa 100644
--- a/Source/WebCore/svg/SVGFEOffsetElement.idl
+++ b/Source/WebCore/svg/SVGFEOffsetElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEOffsetElement : SVGElement,
+] interface SVGFEOffsetElement : SVGElement,
                                                  SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber dx;
diff --git a/Source/WebCore/svg/SVGFEPointLightElement.idl b/Source/WebCore/svg/SVGFEPointLightElement.idl
index 034055e..102d5b2 100644
--- a/Source/WebCore/svg/SVGFEPointLightElement.idl
+++ b/Source/WebCore/svg/SVGFEPointLightElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFEPointLightElement : SVGElement {
+] interface SVGFEPointLightElement : SVGElement {
     readonly attribute SVGAnimatedNumber x;
     readonly attribute SVGAnimatedNumber y;
     readonly attribute SVGAnimatedNumber z;
diff --git a/Source/WebCore/svg/SVGFESpecularLightingElement.idl b/Source/WebCore/svg/SVGFESpecularLightingElement.idl
index b47a845..70e8827 100644
--- a/Source/WebCore/svg/SVGFESpecularLightingElement.idl
+++ b/Source/WebCore/svg/SVGFESpecularLightingElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFESpecularLightingElement : SVGElement,
+] interface SVGFESpecularLightingElement : SVGElement,
                                                            SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
     readonly attribute SVGAnimatedNumber surfaceScale;
diff --git a/Source/WebCore/svg/SVGFESpotLightElement.idl b/Source/WebCore/svg/SVGFESpotLightElement.idl
index 2cb6544..20d8f91 100644
--- a/Source/WebCore/svg/SVGFESpotLightElement.idl
+++ b/Source/WebCore/svg/SVGFESpotLightElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFESpotLightElement : SVGElement {
+] interface SVGFESpotLightElement : SVGElement {
     readonly attribute SVGAnimatedNumber x;
     readonly attribute SVGAnimatedNumber y;
     readonly attribute SVGAnimatedNumber z;
diff --git a/Source/WebCore/svg/SVGFETileElement.idl b/Source/WebCore/svg/SVGFETileElement.idl
index fc9f432..fca80c3 100644
--- a/Source/WebCore/svg/SVGFETileElement.idl
+++ b/Source/WebCore/svg/SVGFETileElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFETileElement : SVGElement,
+] interface SVGFETileElement : SVGElement,
                                                SVGFilterPrimitiveStandardAttributes {
     readonly attribute SVGAnimatedString in1;
 };
diff --git a/Source/WebCore/svg/SVGFETurbulenceElement.idl b/Source/WebCore/svg/SVGFETurbulenceElement.idl
index 2a29824..ab474cc 100644
--- a/Source/WebCore/svg/SVGFETurbulenceElement.idl
+++ b/Source/WebCore/svg/SVGFETurbulenceElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS,
     DoNotCheckConstants
-] SVGFETurbulenceElement : SVGElement,
+] interface SVGFETurbulenceElement : SVGElement,
                            SVGFilterPrimitiveStandardAttributes {
     // Turbulence Types
     const unsigned short SVG_TURBULENCE_TYPE_UNKNOWN      = 0;
diff --git a/Source/WebCore/svg/SVGFilterElement.idl b/Source/WebCore/svg/SVGFilterElement.idl
index 312bedf..2bdfd38 100644
--- a/Source/WebCore/svg/SVGFilterElement.idl
+++ b/Source/WebCore/svg/SVGFilterElement.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&FILTERS
-] SVGFilterElement : SVGElement,
+] interface SVGFilterElement : SVGElement,
                                                SVGURIReference,
                                                SVGLangSpace,
                                                SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.idl b/Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.idl
index 5459aa1..7ef9ffd 100644
--- a/Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.idl
+++ b/Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol
-] SVGFilterPrimitiveStandardAttributes : SVGStylable {
+] interface SVGFilterPrimitiveStandardAttributes : SVGStylable {
     readonly attribute SVGAnimatedLength x;
     readonly attribute SVGAnimatedLength y;
     readonly attribute SVGAnimatedLength width;
diff --git a/Source/WebCore/svg/SVGFitToViewBox.idl b/Source/WebCore/svg/SVGFitToViewBox.idl
index 363756d..e250924 100644
--- a/Source/WebCore/svg/SVGFitToViewBox.idl
+++ b/Source/WebCore/svg/SVGFitToViewBox.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     SuppressToJSObject,
     OmitConstructor
-] SVGFitToViewBox {
+] interface SVGFitToViewBox {
     readonly attribute SVGAnimatedRect                viewBox;
     readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio;
 };
diff --git a/Source/WebCore/svg/SVGFontElement.idl b/Source/WebCore/svg/SVGFontElement.idl
index 18a8620..feef706 100644
--- a/Source/WebCore/svg/SVGFontElement.idl
+++ b/Source/WebCore/svg/SVGFontElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGFontElement : SVGElement {
+] interface SVGFontElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFontFaceElement.idl b/Source/WebCore/svg/SVGFontFaceElement.idl
index 4cdb728..aa2a395 100644
--- a/Source/WebCore/svg/SVGFontFaceElement.idl
+++ b/Source/WebCore/svg/SVGFontFaceElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGFontFaceElement : SVGElement {
+] interface SVGFontFaceElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFontFaceFormatElement.idl b/Source/WebCore/svg/SVGFontFaceFormatElement.idl
index fc82d89..837402c 100644
--- a/Source/WebCore/svg/SVGFontFaceFormatElement.idl
+++ b/Source/WebCore/svg/SVGFontFaceFormatElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGFontFaceFormatElement : SVGElement {
+] interface SVGFontFaceFormatElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFontFaceNameElement.idl b/Source/WebCore/svg/SVGFontFaceNameElement.idl
index 33433f9..7288cd2 100644
--- a/Source/WebCore/svg/SVGFontFaceNameElement.idl
+++ b/Source/WebCore/svg/SVGFontFaceNameElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGFontFaceNameElement : SVGElement {
+] interface SVGFontFaceNameElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFontFaceSrcElement.idl b/Source/WebCore/svg/SVGFontFaceSrcElement.idl
index 20cbea5..c86091a 100644
--- a/Source/WebCore/svg/SVGFontFaceSrcElement.idl
+++ b/Source/WebCore/svg/SVGFontFaceSrcElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGFontFaceSrcElement : SVGElement {
+] interface SVGFontFaceSrcElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGFontFaceUriElement.idl b/Source/WebCore/svg/SVGFontFaceUriElement.idl
index d792b0e..48037a0 100644
--- a/Source/WebCore/svg/SVGFontFaceUriElement.idl
+++ b/Source/WebCore/svg/SVGFontFaceUriElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGFontFaceUriElement : SVGElement {
+] interface SVGFontFaceUriElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGForeignObjectElement.idl b/Source/WebCore/svg/SVGForeignObjectElement.idl
index aedb8a0..3167acb 100644
--- a/Source/WebCore/svg/SVGForeignObjectElement.idl
+++ b/Source/WebCore/svg/SVGForeignObjectElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGForeignObjectElement : SVGElement,
+] interface SVGForeignObjectElement : SVGElement,
                                                       SVGTests,
                                                       SVGLangSpace,
                                                       SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGGElement.idl b/Source/WebCore/svg/SVGGElement.idl
index 91811b1..7305d41 100644
--- a/Source/WebCore/svg/SVGGElement.idl
+++ b/Source/WebCore/svg/SVGGElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGGElement : SVGElement,
+] interface SVGGElement : SVGElement,
                                           SVGTests,
                                           SVGLangSpace,
                                           SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGGlyphElement.idl b/Source/WebCore/svg/SVGGlyphElement.idl
index a8abade..a05b5c8 100644
--- a/Source/WebCore/svg/SVGGlyphElement.idl
+++ b/Source/WebCore/svg/SVGGlyphElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGGlyphElement : SVGElement {
+] interface SVGGlyphElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGGlyphRefElement.idl b/Source/WebCore/svg/SVGGlyphRefElement.idl
index db51ff4..9dd3782 100644
--- a/Source/WebCore/svg/SVGGlyphRefElement.idl
+++ b/Source/WebCore/svg/SVGGlyphRefElement.idl
@@ -17,13 +17,13 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [Conditional=SVG&SVG_FONTS] SVGGlyphRefElement : SVGElement,
+[Conditional=SVG&SVG_FONTS] interface SVGGlyphRefElement : SVGElement,
                                                            SVGURIReference,
                                                            SVGStylable {
     // FIXME: Use [Reflect] after https://bugs.webkit.org/show_bug.cgi?id=64843 is fixed.
     attribute DOMString glyphRef
         setter raises(DOMException);
-    attribute [Reflect] DOMString format;
+    [Reflect] attribute DOMString format;
     attribute float x
         setter raises(DOMException);
     attribute float y
diff --git a/Source/WebCore/svg/SVGGradientElement.idl b/Source/WebCore/svg/SVGGradientElement.idl
index 4409c60..a76f907 100644
--- a/Source/WebCore/svg/SVGGradientElement.idl
+++ b/Source/WebCore/svg/SVGGradientElement.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     DoNotCheckConstants
-] SVGGradientElement : SVGElement,
+] interface SVGGradientElement : SVGElement,
                        SVGURIReference,
                        SVGExternalResourcesRequired,
                        SVGStylable
diff --git a/Source/WebCore/svg/SVGHKernElement.idl b/Source/WebCore/svg/SVGHKernElement.idl
index 0674951..9bca9f7 100644
--- a/Source/WebCore/svg/SVGHKernElement.idl
+++ b/Source/WebCore/svg/SVGHKernElement.idl
@@ -17,8 +17,8 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGHKernElement : SVGElement {
+] interface SVGHKernElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGImageElement.idl b/Source/WebCore/svg/SVGImageElement.idl
index da31a04..473bace 100644
--- a/Source/WebCore/svg/SVGImageElement.idl
+++ b/Source/WebCore/svg/SVGImageElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGImageElement : SVGElement,
+] interface SVGImageElement : SVGElement,
                                               SVGURIReference,
                                               SVGTests,
                                               SVGLangSpace,
diff --git a/Source/WebCore/svg/SVGLangSpace.idl b/Source/WebCore/svg/SVGLangSpace.idl
index 92143f4..0b61d80 100644
--- a/Source/WebCore/svg/SVGLangSpace.idl
+++ b/Source/WebCore/svg/SVGLangSpace.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     SuppressToJSObject,
     OmitConstructor
-] SVGLangSpace {
+] interface SVGLangSpace {
              attribute DOMString xmllang
                  /*setter raises(DOMException)*/;
              attribute DOMString xmlspace
diff --git a/Source/WebCore/svg/SVGLength.idl b/Source/WebCore/svg/SVGLength.idl
index fc3edac..1e0b7ea 100644
--- a/Source/WebCore/svg/SVGLength.idl
+++ b/Source/WebCore/svg/SVGLength.idl
@@ -20,9 +20,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGLength { 
+] interface SVGLength { 
     // Length Unit Types
     const unsigned short SVG_LENGTHTYPE_UNKNOWN    = 0;
     const unsigned short SVG_LENGTHTYPE_NUMBER     = 1;
@@ -37,12 +37,12 @@
     const unsigned short SVG_LENGTHTYPE_PC         = 10;
 
     readonly attribute unsigned short unitType;
-    attribute [Custom, StrictTypeChecking] float value
+    [Custom, StrictTypeChecking] attribute float value
         setter raises(DOMException),
         getter raises(DOMException);
 
-    attribute [StrictTypeChecking] float valueInSpecifiedUnits;
-    attribute [TreatNullAs=NullString, StrictTypeChecking] DOMString valueAsString
+    [StrictTypeChecking] attribute float valueInSpecifiedUnits;
+    [TreatNullAs=NullString, StrictTypeChecking] attribute DOMString valueAsString
         setter raises(DOMException);
 
     [StrictTypeChecking] void newValueSpecifiedUnits(in unsigned short unitType, 
diff --git a/Source/WebCore/svg/SVGLengthList.idl b/Source/WebCore/svg/SVGLengthList.idl
index c70a48c..6233adc 100644
--- a/Source/WebCore/svg/SVGLengthList.idl
+++ b/Source/WebCore/svg/SVGLengthList.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGLengthList { 
+] interface SVGLengthList { 
     readonly attribute unsigned long numberOfItems;
 
     void clear()
diff --git a/Source/WebCore/svg/SVGLineElement.idl b/Source/WebCore/svg/SVGLineElement.idl
index e2004b4..c740d10 100644
--- a/Source/WebCore/svg/SVGLineElement.idl
+++ b/Source/WebCore/svg/SVGLineElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGLineElement : SVGElement,
+] interface SVGLineElement : SVGElement,
                                              SVGTests,
                                              SVGLangSpace,
                                              SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGLinearGradientElement.idl b/Source/WebCore/svg/SVGLinearGradientElement.idl
index 91fa73c..4aa3435 100644
--- a/Source/WebCore/svg/SVGLinearGradientElement.idl
+++ b/Source/WebCore/svg/SVGLinearGradientElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGLinearGradientElement : SVGGradientElement {
+] interface SVGLinearGradientElement : SVGGradientElement {
     readonly attribute SVGAnimatedLength x1;
     readonly attribute SVGAnimatedLength y1;
     readonly attribute SVGAnimatedLength x2;
diff --git a/Source/WebCore/svg/SVGLocatable.idl b/Source/WebCore/svg/SVGLocatable.idl
index cf6e75f..e9e34ed 100644
--- a/Source/WebCore/svg/SVGLocatable.idl
+++ b/Source/WebCore/svg/SVGLocatable.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     SuppressToJSObject,
     OmitConstructor
-] SVGLocatable {
+] interface SVGLocatable {
     readonly attribute SVGElement nearestViewportElement;
     readonly attribute SVGElement farthestViewportElement;
 
diff --git a/Source/WebCore/svg/SVGMPathElement.idl b/Source/WebCore/svg/SVGMPathElement.idl
index 6808356..57f3a42 100644
--- a/Source/WebCore/svg/SVGMPathElement.idl
+++ b/Source/WebCore/svg/SVGMPathElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGMPathElement : SVGElement,
+] interface SVGMPathElement : SVGElement,
                                                             SVGURIReference,
                                                             SVGExternalResourcesRequired {
 };
diff --git a/Source/WebCore/svg/SVGMarkerElement.idl b/Source/WebCore/svg/SVGMarkerElement.idl
index 7e5493e..745d63e 100644
--- a/Source/WebCore/svg/SVGMarkerElement.idl
+++ b/Source/WebCore/svg/SVGMarkerElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGMarkerElement : SVGElement,
+] interface SVGMarkerElement : SVGElement,
                                                SVGLangSpace,
                                                SVGExternalResourcesRequired,
                                                SVGStylable,
diff --git a/Source/WebCore/svg/SVGMaskElement.idl b/Source/WebCore/svg/SVGMaskElement.idl
index b6bb889..830cbf7 100644
--- a/Source/WebCore/svg/SVGMaskElement.idl
+++ b/Source/WebCore/svg/SVGMaskElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGMaskElement : SVGElement,
+] interface SVGMaskElement : SVGElement,
                                              SVGTests,
                                              SVGLangSpace,
                                              SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGMatrix.idl b/Source/WebCore/svg/SVGMatrix.idl
index 8fbc391..dc1f87a 100644
--- a/Source/WebCore/svg/SVGMatrix.idl
+++ b/Source/WebCore/svg/SVGMatrix.idl
@@ -20,17 +20,17 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGMatrix {
+] interface SVGMatrix {
     // FIXME: these attributes should all be floats but since we implement
     // AffineTransform with doubles setting these as doubles makes more sense.
-    attribute [StrictTypeChecking] double a;
-    attribute [StrictTypeChecking] double b;
-    attribute [StrictTypeChecking] double c;
-    attribute [StrictTypeChecking] double d;
-    attribute [StrictTypeChecking] double e;
-    attribute [StrictTypeChecking] double f;
+    [StrictTypeChecking] attribute double a;
+    [StrictTypeChecking] attribute double b;
+    [StrictTypeChecking] attribute double c;
+    [StrictTypeChecking] attribute double d;
+    [StrictTypeChecking] attribute double e;
+    [StrictTypeChecking] attribute double f;
 
     [StrictTypeChecking] SVGMatrix multiply(in SVGMatrix secondMatrix);
     SVGMatrix inverse()
diff --git a/Source/WebCore/svg/SVGMetadataElement.idl b/Source/WebCore/svg/SVGMetadataElement.idl
index a8d5697..877c8b1 100644
--- a/Source/WebCore/svg/SVGMetadataElement.idl
+++ b/Source/WebCore/svg/SVGMetadataElement.idl
@@ -19,8 +19,8 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGMetadataElement : SVGElement {
+] interface SVGMetadataElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGMissingGlyphElement.idl b/Source/WebCore/svg/SVGMissingGlyphElement.idl
index 88fdf4a..9a0e3e6 100644
--- a/Source/WebCore/svg/SVGMissingGlyphElement.idl
+++ b/Source/WebCore/svg/SVGMissingGlyphElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGMissingGlyphElement : SVGElement {
+] interface SVGMissingGlyphElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGNumber.idl b/Source/WebCore/svg/SVGNumber.idl
index 78d3734..20c767e 100644
--- a/Source/WebCore/svg/SVGNumber.idl
+++ b/Source/WebCore/svg/SVGNumber.idl
@@ -20,9 +20,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGNumber {
-    attribute [StrictTypeChecking] float value;
+] interface SVGNumber {
+    [StrictTypeChecking] attribute float value;
 };
 
diff --git a/Source/WebCore/svg/SVGNumberList.idl b/Source/WebCore/svg/SVGNumberList.idl
index c980613..8ee8eef 100644
--- a/Source/WebCore/svg/SVGNumberList.idl
+++ b/Source/WebCore/svg/SVGNumberList.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGNumberList {
+] interface SVGNumberList {
     readonly attribute unsigned long numberOfItems;
 
     void clear()
diff --git a/Source/WebCore/svg/SVGPaint.idl b/Source/WebCore/svg/SVGPaint.idl
index 98f303a..fa7dc9d 100644
--- a/Source/WebCore/svg/SVGPaint.idl
+++ b/Source/WebCore/svg/SVGPaint.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPaint : SVGColor {
+] interface SVGPaint : SVGColor {
     const unsigned short SVG_PAINTTYPE_UNKNOWN = 0;
     const unsigned short SVG_PAINTTYPE_RGBCOLOR = 1;
     const unsigned short SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR = 2;
diff --git a/Source/WebCore/svg/SVGPathElement.idl b/Source/WebCore/svg/SVGPathElement.idl
index a1865dc..5bb289c 100644
--- a/Source/WebCore/svg/SVGPathElement.idl
+++ b/Source/WebCore/svg/SVGPathElement.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathElement : SVGElement,
+] interface SVGPathElement : SVGElement,
                                              SVGTests,
                                              SVGLangSpace,
                                              SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGPathSeg.idl b/Source/WebCore/svg/SVGPathSeg.idl
index 8cc449f..1f8491f 100644
--- a/Source/WebCore/svg/SVGPathSeg.idl
+++ b/Source/WebCore/svg/SVGPathSeg.idl
@@ -24,11 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     CustomToJSObject,
     ObjCPolymorphic
-] SVGPathSeg {
+] interface SVGPathSeg {
     // Path Segment Types
     const unsigned short PATHSEG_UNKNOWN = 0;
     const unsigned short PATHSEG_CLOSEPATH = 1;
diff --git a/Source/WebCore/svg/SVGPathSegArcAbs.idl b/Source/WebCore/svg/SVGPathSegArcAbs.idl
index d48de42..fe8fb52 100644
--- a/Source/WebCore/svg/SVGPathSegArcAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegArcAbs.idl
@@ -24,15 +24,15 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegArcAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float r1;
-    attribute [StrictTypeChecking] float r2;
-    attribute [StrictTypeChecking] float angle;
-    attribute [StrictTypeChecking] boolean largeArcFlag;
-    attribute [StrictTypeChecking] boolean sweepFlag;
+] interface SVGPathSegArcAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float r1;
+    [StrictTypeChecking] attribute float r2;
+    [StrictTypeChecking] attribute float angle;
+    [StrictTypeChecking] attribute boolean largeArcFlag;
+    [StrictTypeChecking] attribute boolean sweepFlag;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegArcRel.idl b/Source/WebCore/svg/SVGPathSegArcRel.idl
index d906f0c..3946d8d 100644
--- a/Source/WebCore/svg/SVGPathSegArcRel.idl
+++ b/Source/WebCore/svg/SVGPathSegArcRel.idl
@@ -24,15 +24,15 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegArcRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float r1;
-    attribute [StrictTypeChecking] float r2;
-    attribute [StrictTypeChecking] float angle;
-    attribute [StrictTypeChecking] boolean largeArcFlag;
-    attribute [StrictTypeChecking] boolean sweepFlag;
+] interface SVGPathSegArcRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float r1;
+    [StrictTypeChecking] attribute float r2;
+    [StrictTypeChecking] attribute float angle;
+    [StrictTypeChecking] attribute boolean largeArcFlag;
+    [StrictTypeChecking] attribute boolean sweepFlag;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegClosePath.idl b/Source/WebCore/svg/SVGPathSegClosePath.idl
index b5ef827..3f0969a 100644
--- a/Source/WebCore/svg/SVGPathSegClosePath.idl
+++ b/Source/WebCore/svg/SVGPathSegClosePath.idl
@@ -24,8 +24,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegClosePath : SVGPathSeg {
+] interface SVGPathSegClosePath : SVGPathSeg {
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.idl b/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.idl
index 69f3439..c8c7c82 100644
--- a/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.idl
@@ -24,14 +24,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */ 
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegCurvetoCubicAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float x1;
-    attribute [StrictTypeChecking] float y1;
-    attribute [StrictTypeChecking] float x2;
-    attribute [StrictTypeChecking] float y2;
+] interface SVGPathSegCurvetoCubicAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float x1;
+    [StrictTypeChecking] attribute float y1;
+    [StrictTypeChecking] attribute float x2;
+    [StrictTypeChecking] attribute float y2;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.idl b/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.idl
index ceffe2a..f4336b2 100644
--- a/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.idl
+++ b/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.idl
@@ -24,14 +24,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */ 
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegCurvetoCubicRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float x1;
-    attribute [StrictTypeChecking] float y1;
-    attribute [StrictTypeChecking] float x2;
-    attribute [StrictTypeChecking] float y2;
+] interface SVGPathSegCurvetoCubicRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float x1;
+    [StrictTypeChecking] attribute float y1;
+    [StrictTypeChecking] attribute float x2;
+    [StrictTypeChecking] attribute float y2;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.idl b/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
index 2c6af54..aa9d3f0 100644
--- a/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */ 
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float x2;
-    attribute [StrictTypeChecking] float y2;
+] interface SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float x2;
+    [StrictTypeChecking] attribute float y2;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.idl b/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.idl
index a038f83..c801568 100644
--- a/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.idl
+++ b/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */ 
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float x2;
-    attribute [StrictTypeChecking] float y2;
+] interface SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float x2;
+    [StrictTypeChecking] attribute float y2;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.idl b/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.idl
index 8732ba1..46fb5b6 100644
--- a/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegCurvetoQuadraticAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float x1;
-    attribute [StrictTypeChecking] float y1;
+] interface SVGPathSegCurvetoQuadraticAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float x1;
+    [StrictTypeChecking] attribute float y1;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.idl b/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.idl
index 906c87f..39f8016 100644
--- a/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.idl
+++ b/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegCurvetoQuadraticRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float x1;
-    attribute [StrictTypeChecking] float y1;
+] interface SVGPathSegCurvetoQuadraticRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float x1;
+    [StrictTypeChecking] attribute float y1;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl b/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
index a14a010..0850e31 100644
--- a/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
+] interface SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl b/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
index a166591..6743a1c 100644
--- a/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
+++ b/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
+] interface SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegLinetoAbs.idl b/Source/WebCore/svg/SVGPathSegLinetoAbs.idl
index e9447c0..0b4c745 100644
--- a/Source/WebCore/svg/SVGPathSegLinetoAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegLinetoAbs.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegLinetoAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
+] interface SVGPathSegLinetoAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.idl b/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.idl
index 0f06f4f..9252acf 100644
--- a/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegLinetoHorizontalAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
+] interface SVGPathSegLinetoHorizontalAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.idl b/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.idl
index 141cb51..a0a65c4 100644
--- a/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.idl
+++ b/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegLinetoHorizontalRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
+] interface SVGPathSegLinetoHorizontalRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegLinetoRel.idl b/Source/WebCore/svg/SVGPathSegLinetoRel.idl
index 0117ac0..089aae2 100644
--- a/Source/WebCore/svg/SVGPathSegLinetoRel.idl
+++ b/Source/WebCore/svg/SVGPathSegLinetoRel.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegLinetoRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
+] interface SVGPathSegLinetoRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.idl b/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.idl
index b9c497c..15c66da 100644
--- a/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegLinetoVerticalAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float y;
+] interface SVGPathSegLinetoVerticalAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float y;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.idl b/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.idl
index 9428538..632ec69 100644
--- a/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.idl
+++ b/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegLinetoVerticalRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float y;
+] interface SVGPathSegLinetoVerticalRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float y;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegList.idl b/Source/WebCore/svg/SVGPathSegList.idl
index efd76a6..08f69e7 100644
--- a/Source/WebCore/svg/SVGPathSegList.idl
+++ b/Source/WebCore/svg/SVGPathSegList.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegList {
+] interface SVGPathSegList {
     readonly attribute unsigned long numberOfItems;
 
     void clear()
diff --git a/Source/WebCore/svg/SVGPathSegMovetoAbs.idl b/Source/WebCore/svg/SVGPathSegMovetoAbs.idl
index fca6298..255f77e 100644
--- a/Source/WebCore/svg/SVGPathSegMovetoAbs.idl
+++ b/Source/WebCore/svg/SVGPathSegMovetoAbs.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegMovetoAbs : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
+] interface SVGPathSegMovetoAbs : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
 };
 
diff --git a/Source/WebCore/svg/SVGPathSegMovetoRel.idl b/Source/WebCore/svg/SVGPathSegMovetoRel.idl
index 00fac7b..38edb6b 100644
--- a/Source/WebCore/svg/SVGPathSegMovetoRel.idl
+++ b/Source/WebCore/svg/SVGPathSegMovetoRel.idl
@@ -24,10 +24,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPathSegMovetoRel : SVGPathSeg {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
+] interface SVGPathSegMovetoRel : SVGPathSeg {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
 };
 
diff --git a/Source/WebCore/svg/SVGPatternElement.idl b/Source/WebCore/svg/SVGPatternElement.idl
index 831441f..9a80004 100644
--- a/Source/WebCore/svg/SVGPatternElement.idl
+++ b/Source/WebCore/svg/SVGPatternElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPatternElement : SVGElement,
+] interface SVGPatternElement : SVGElement,
                                                 SVGURIReference,
                                                 SVGTests,
                                                 SVGLangSpace,
diff --git a/Source/WebCore/svg/SVGPoint.idl b/Source/WebCore/svg/SVGPoint.idl
index ae2b3b2..19693dc 100644
--- a/Source/WebCore/svg/SVGPoint.idl
+++ b/Source/WebCore/svg/SVGPoint.idl
@@ -20,11 +20,11 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPoint {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
+] interface SVGPoint {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
 
     [StrictTypeChecking] SVGPoint matrixTransform(in SVGMatrix matrix);
 };
diff --git a/Source/WebCore/svg/SVGPointList.idl b/Source/WebCore/svg/SVGPointList.idl
index e935ba2..fe84c51 100644
--- a/Source/WebCore/svg/SVGPointList.idl
+++ b/Source/WebCore/svg/SVGPointList.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPointList {
+] interface SVGPointList {
     readonly attribute unsigned long numberOfItems;
 
     void clear()
diff --git a/Source/WebCore/svg/SVGPolygonElement.idl b/Source/WebCore/svg/SVGPolygonElement.idl
index 42025aa..290e755 100644
--- a/Source/WebCore/svg/SVGPolygonElement.idl
+++ b/Source/WebCore/svg/SVGPolygonElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPolygonElement : SVGElement,
+] interface SVGPolygonElement : SVGElement,
                                                 SVGTests,
                                                 SVGLangSpace,
                                                 SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGPolylineElement.idl b/Source/WebCore/svg/SVGPolylineElement.idl
index 01c3312..6a3129e 100644
--- a/Source/WebCore/svg/SVGPolylineElement.idl
+++ b/Source/WebCore/svg/SVGPolylineElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPolylineElement : SVGElement,
+] interface SVGPolylineElement : SVGElement,
                                                  SVGTests,
                                                  SVGLangSpace,
                                                  SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGPreserveAspectRatio.idl b/Source/WebCore/svg/SVGPreserveAspectRatio.idl
index c7ada15..44be334 100644
--- a/Source/WebCore/svg/SVGPreserveAspectRatio.idl
+++ b/Source/WebCore/svg/SVGPreserveAspectRatio.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGPreserveAspectRatio {
+] interface SVGPreserveAspectRatio {
     // Alignment Types
     const unsigned short SVG_PRESERVEASPECTRATIO_UNKNOWN = 0;
     const unsigned short SVG_PRESERVEASPECTRATIO_NONE = 1;
@@ -44,10 +44,10 @@
     const unsigned short SVG_MEETORSLICE_MEET = 1;
     const unsigned short SVG_MEETORSLICE_SLICE = 2;
 
-    attribute [StrictTypeChecking] unsigned short align
+    [StrictTypeChecking] attribute unsigned short align
         setter raises(DOMException);
 
-    attribute [StrictTypeChecking] unsigned short meetOrSlice
+    [StrictTypeChecking] attribute unsigned short meetOrSlice
         setter raises(DOMException);
 };
 
diff --git a/Source/WebCore/svg/SVGRadialGradientElement.idl b/Source/WebCore/svg/SVGRadialGradientElement.idl
index dfa116b..d4b589f 100644
--- a/Source/WebCore/svg/SVGRadialGradientElement.idl
+++ b/Source/WebCore/svg/SVGRadialGradientElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGRadialGradientElement : SVGGradientElement {
+] interface SVGRadialGradientElement : SVGGradientElement {
     readonly attribute SVGAnimatedLength cx;
     readonly attribute SVGAnimatedLength cy;
     readonly attribute SVGAnimatedLength r;
diff --git a/Source/WebCore/svg/SVGRect.idl b/Source/WebCore/svg/SVGRect.idl
index 5812165..2264618 100644
--- a/Source/WebCore/svg/SVGRect.idl
+++ b/Source/WebCore/svg/SVGRect.idl
@@ -20,12 +20,12 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGRect {
-    attribute [StrictTypeChecking] float x;
-    attribute [StrictTypeChecking] float y;
-    attribute [StrictTypeChecking] float width;
-    attribute [StrictTypeChecking] float height;
+] interface SVGRect {
+    [StrictTypeChecking] attribute float x;
+    [StrictTypeChecking] attribute float y;
+    [StrictTypeChecking] attribute float width;
+    [StrictTypeChecking] attribute float height;
 };
 
diff --git a/Source/WebCore/svg/SVGRectElement.idl b/Source/WebCore/svg/SVGRectElement.idl
index d8d9ba6..998c49d 100644
--- a/Source/WebCore/svg/SVGRectElement.idl
+++ b/Source/WebCore/svg/SVGRectElement.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGRectElement : SVGElement,
+] interface SVGRectElement : SVGElement,
                                              SVGTests,
                                              SVGLangSpace,
                                              SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGRenderingIntent.idl b/Source/WebCore/svg/SVGRenderingIntent.idl
index 244f711..1b2375f 100644
--- a/Source/WebCore/svg/SVGRenderingIntent.idl
+++ b/Source/WebCore/svg/SVGRenderingIntent.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     SuppressToJSObject
-] SVGRenderingIntent {
+] interface SVGRenderingIntent {
     // Rendering Intent Types
     const unsigned short RENDERING_INTENT_UNKNOWN               = 0;
     const unsigned short RENDERING_INTENT_AUTO                  = 1;
diff --git a/Source/WebCore/svg/SVGSVGElement.idl b/Source/WebCore/svg/SVGSVGElement.idl
index e65b882..c539e68 100644
--- a/Source/WebCore/svg/SVGSVGElement.idl
+++ b/Source/WebCore/svg/SVGSVGElement.idl
@@ -23,9 +23,9 @@
 // TODO: no css::ViewCSS available!
 // TODO: Fix SVGSVGElement inheritance (css::DocumentCSS)! 
 // TODO: no events::DocumentEvent available!
-interface [
+[
     Conditional=SVG
-] SVGSVGElement : SVGElement,
+] interface SVGSVGElement : SVGElement,
                                             SVGTests,
                                             SVGLangSpace,
                                             SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGScriptElement.idl b/Source/WebCore/svg/SVGScriptElement.idl
index ad22a61..4b96625 100644
--- a/Source/WebCore/svg/SVGScriptElement.idl
+++ b/Source/WebCore/svg/SVGScriptElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGScriptElement : SVGElement,
+] interface SVGScriptElement : SVGElement,
                                                SVGURIReference,
                                                SVGExternalResourcesRequired {
              attribute [TreatNullAs=NullString] DOMString type
diff --git a/Source/WebCore/svg/SVGSetElement.idl b/Source/WebCore/svg/SVGSetElement.idl
index c3a53c5..f53cb92 100644
--- a/Source/WebCore/svg/SVGSetElement.idl
+++ b/Source/WebCore/svg/SVGSetElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGSetElement : SVGAnimationElement {
+] interface SVGSetElement : SVGAnimationElement {
 };
 
diff --git a/Source/WebCore/svg/SVGStopElement.idl b/Source/WebCore/svg/SVGStopElement.idl
index d37ac0e37..cd97842 100644
--- a/Source/WebCore/svg/SVGStopElement.idl
+++ b/Source/WebCore/svg/SVGStopElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGStopElement : SVGElement,
+] interface SVGStopElement : SVGElement,
                                              SVGStylable {
     readonly attribute SVGAnimatedNumber offset;
 };
diff --git a/Source/WebCore/svg/SVGStringList.idl b/Source/WebCore/svg/SVGStringList.idl
index c5fd7a4..8bb4077 100644
--- a/Source/WebCore/svg/SVGStringList.idl
+++ b/Source/WebCore/svg/SVGStringList.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGStringList {
+] interface SVGStringList {
     readonly attribute unsigned long numberOfItems;
 
     void clear()
diff --git a/Source/WebCore/svg/SVGStylable.idl b/Source/WebCore/svg/SVGStylable.idl
index 4a944b0..82d4142 100644
--- a/Source/WebCore/svg/SVGStylable.idl
+++ b/Source/WebCore/svg/SVGStylable.idl
@@ -25,12 +25,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     SuppressToJSObject,
     OmitConstructor
-] SVGStylable {
+] interface SVGStylable {
     readonly attribute SVGAnimatedString className;
     readonly attribute CSSStyleDeclaration style;
 
diff --git a/Source/WebCore/svg/SVGStyleElement.idl b/Source/WebCore/svg/SVGStyleElement.idl
index ed68bcf..6853535 100644
--- a/Source/WebCore/svg/SVGStyleElement.idl
+++ b/Source/WebCore/svg/SVGStyleElement.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGStyleElement : SVGElement,
+] interface SVGStyleElement : SVGElement,
                                               SVGLangSpace {
              attribute boolean disabled;
              attribute DOMString type
diff --git a/Source/WebCore/svg/SVGSwitchElement.idl b/Source/WebCore/svg/SVGSwitchElement.idl
index bc6857c..21a76be 100644
--- a/Source/WebCore/svg/SVGSwitchElement.idl
+++ b/Source/WebCore/svg/SVGSwitchElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGSwitchElement : SVGElement,
+] interface SVGSwitchElement : SVGElement,
                                                SVGTests,
                                                SVGLangSpace,
                                                SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGSymbolElement.idl b/Source/WebCore/svg/SVGSymbolElement.idl
index e638a40..9b9f1d1 100644
--- a/Source/WebCore/svg/SVGSymbolElement.idl
+++ b/Source/WebCore/svg/SVGSymbolElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGSymbolElement : SVGElement,
+] interface SVGSymbolElement : SVGElement,
                                                SVGLangSpace,
                                                SVGExternalResourcesRequired,
                                                SVGStylable,
diff --git a/Source/WebCore/svg/SVGTRefElement.idl b/Source/WebCore/svg/SVGTRefElement.idl
index bbbee8a..e4743fd 100644
--- a/Source/WebCore/svg/SVGTRefElement.idl
+++ b/Source/WebCore/svg/SVGTRefElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTRefElement : SVGTextPositioningElement,
+] interface SVGTRefElement : SVGTextPositioningElement,
                                              SVGURIReference {
 };
 
diff --git a/Source/WebCore/svg/SVGTSpanElement.idl b/Source/WebCore/svg/SVGTSpanElement.idl
index 93a8785..fa9f7f1 100644
--- a/Source/WebCore/svg/SVGTSpanElement.idl
+++ b/Source/WebCore/svg/SVGTSpanElement.idl
@@ -23,8 +23,8 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTSpanElement : SVGTextPositioningElement {
+] interface SVGTSpanElement : SVGTextPositioningElement {
 };
 
diff --git a/Source/WebCore/svg/SVGTests.idl b/Source/WebCore/svg/SVGTests.idl
index bfd5a27..05a31fd 100644
--- a/Source/WebCore/svg/SVGTests.idl
+++ b/Source/WebCore/svg/SVGTests.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     SuppressToJSObject,
     OmitConstructor
-] SVGTests {
+] interface SVGTests {
     readonly attribute SVGStringList requiredFeatures;
     readonly attribute SVGStringList requiredExtensions;
     readonly attribute SVGStringList systemLanguage;
diff --git a/Source/WebCore/svg/SVGTextContentElement.idl b/Source/WebCore/svg/SVGTextContentElement.idl
index 445d6f7..9b91f9c 100644
--- a/Source/WebCore/svg/SVGTextContentElement.idl
+++ b/Source/WebCore/svg/SVGTextContentElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTextContentElement : SVGElement,
+] interface SVGTextContentElement : SVGElement,
                                                     SVGTests,
                                                     SVGLangSpace,
                                                     SVGExternalResourcesRequired,
diff --git a/Source/WebCore/svg/SVGTextElement.idl b/Source/WebCore/svg/SVGTextElement.idl
index 4acc95e..2a3c6c8 100644
--- a/Source/WebCore/svg/SVGTextElement.idl
+++ b/Source/WebCore/svg/SVGTextElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTextElement : SVGTextPositioningElement,
+] interface SVGTextElement : SVGTextPositioningElement,
                                              SVGTransformable {
 };
 
diff --git a/Source/WebCore/svg/SVGTextPathElement.idl b/Source/WebCore/svg/SVGTextPathElement.idl
index d9cfb6a..03749ad 100644
--- a/Source/WebCore/svg/SVGTextPathElement.idl
+++ b/Source/WebCore/svg/SVGTextPathElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTextPathElement : SVGTextContentElement,
+] interface SVGTextPathElement : SVGTextContentElement,
                                                  SVGURIReference {    
     // textPath Method Types
     const unsigned short TEXTPATH_METHODTYPE_UNKNOWN   = 0;
diff --git a/Source/WebCore/svg/SVGTextPositioningElement.idl b/Source/WebCore/svg/SVGTextPositioningElement.idl
index 4552191..7c3afdf 100644
--- a/Source/WebCore/svg/SVGTextPositioningElement.idl
+++ b/Source/WebCore/svg/SVGTextPositioningElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTextPositioningElement : SVGTextContentElement {
+] interface SVGTextPositioningElement : SVGTextContentElement {
     readonly attribute SVGAnimatedLengthList x;
     readonly attribute SVGAnimatedLengthList y;
     readonly attribute SVGAnimatedLengthList dx;
diff --git a/Source/WebCore/svg/SVGTitleElement.idl b/Source/WebCore/svg/SVGTitleElement.idl
index 0fa8173..ef44418 100644
--- a/Source/WebCore/svg/SVGTitleElement.idl
+++ b/Source/WebCore/svg/SVGTitleElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTitleElement : SVGElement,
+] interface SVGTitleElement : SVGElement,
                                               SVGLangSpace,
                                               SVGStylable {
 };
diff --git a/Source/WebCore/svg/SVGTransform.idl b/Source/WebCore/svg/SVGTransform.idl
index fd4bdf7..b8387a5 100644
--- a/Source/WebCore/svg/SVGTransform.idl
+++ b/Source/WebCore/svg/SVGTransform.idl
@@ -19,9 +19,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTransform { 
+] interface SVGTransform { 
     // Transform Types
     const unsigned short SVG_TRANSFORM_UNKNOWN = 0;
     const unsigned short SVG_TRANSFORM_MATRIX = 1;
diff --git a/Source/WebCore/svg/SVGTransformList.idl b/Source/WebCore/svg/SVGTransformList.idl
index 42f5235..ceabe5b 100644
--- a/Source/WebCore/svg/SVGTransformList.idl
+++ b/Source/WebCore/svg/SVGTransformList.idl
@@ -24,9 +24,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGTransformList {
+] interface SVGTransformList {
     readonly attribute unsigned long numberOfItems;
 
     void clear()
diff --git a/Source/WebCore/svg/SVGTransformable.idl b/Source/WebCore/svg/SVGTransformable.idl
index 7bbe483..0dfff36 100644
--- a/Source/WebCore/svg/SVGTransformable.idl
+++ b/Source/WebCore/svg/SVGTransformable.idl
@@ -24,11 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     OmitConstructor
-] SVGTransformable : SVGLocatable {
+] interface SVGTransformable : SVGLocatable {
     readonly attribute SVGAnimatedTransformList transform;
 };
 
diff --git a/Source/WebCore/svg/SVGURIReference.idl b/Source/WebCore/svg/SVGURIReference.idl
index e7145ff..a6311cd 100644
--- a/Source/WebCore/svg/SVGURIReference.idl
+++ b/Source/WebCore/svg/SVGURIReference.idl
@@ -24,12 +24,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     SuppressToJSObject,
     OmitConstructor
-] SVGURIReference {
+] interface SVGURIReference {
     readonly attribute SVGAnimatedString href;
 };
 
diff --git a/Source/WebCore/svg/SVGUnitTypes.idl b/Source/WebCore/svg/SVGUnitTypes.idl
index accc96f..7498d20 100644
--- a/Source/WebCore/svg/SVGUnitTypes.idl
+++ b/Source/WebCore/svg/SVGUnitTypes.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     SuppressToJSObject
-] SVGUnitTypes {
+] interface SVGUnitTypes {
     // Unit Types
     const unsigned short SVG_UNIT_TYPE_UNKNOWN           = 0;
     const unsigned short SVG_UNIT_TYPE_USERSPACEONUSE    = 1;
diff --git a/Source/WebCore/svg/SVGUseElement.idl b/Source/WebCore/svg/SVGUseElement.idl
index 1d441b1..4916279 100644
--- a/Source/WebCore/svg/SVGUseElement.idl
+++ b/Source/WebCore/svg/SVGUseElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGUseElement : SVGElement,
+] interface SVGUseElement : SVGElement,
                                             SVGURIReference,
                                             SVGTests,
                                             SVGLangSpace,
diff --git a/Source/WebCore/svg/SVGVKernElement.idl b/Source/WebCore/svg/SVGVKernElement.idl
index 207db5c..55a1648 100644
--- a/Source/WebCore/svg/SVGVKernElement.idl
+++ b/Source/WebCore/svg/SVGVKernElement.idl
@@ -17,8 +17,8 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Conditional=SVG&SVG_FONTS
-] SVGVKernElement : SVGElement {
+] interface SVGVKernElement : SVGElement {
 };
 
diff --git a/Source/WebCore/svg/SVGViewElement.idl b/Source/WebCore/svg/SVGViewElement.idl
index ab66add..d4ae5ac 100644
--- a/Source/WebCore/svg/SVGViewElement.idl
+++ b/Source/WebCore/svg/SVGViewElement.idl
@@ -23,9 +23,9 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGViewElement : SVGElement,
+] interface SVGViewElement : SVGElement,
                                              SVGExternalResourcesRequired,
                                              SVGFitToViewBox,
                                              SVGZoomAndPan {
diff --git a/Source/WebCore/svg/SVGViewSpec.idl b/Source/WebCore/svg/SVGViewSpec.idl
index 9cc5443..cd33f4b 100644
--- a/Source/WebCore/svg/SVGViewSpec.idl
+++ b/Source/WebCore/svg/SVGViewSpec.idl
@@ -25,10 +25,10 @@
 
 // SVGViewSpec intentionally doesn't inherit from SVGZoomAndPan & SVGFitToViewBox on the IDLs.
 // It would require that any of those classes would be RefCounted, and we want to avoid that.
-interface [
+[
     Conditional=SVG,
     JSGenerateToJSObject
-] SVGViewSpec {
+] interface SVGViewSpec {
       readonly attribute SVGTransformList transform;
       readonly attribute SVGElement viewTarget;
       readonly attribute DOMString viewBoxString;
diff --git a/Source/WebCore/svg/SVGZoomAndPan.idl b/Source/WebCore/svg/SVGZoomAndPan.idl
index 1cc9cab..9bcdb6d 100644
--- a/Source/WebCore/svg/SVGZoomAndPan.idl
+++ b/Source/WebCore/svg/SVGZoomAndPan.idl
@@ -24,11 +24,11 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG,
     ObjCProtocol,
     SuppressToJSObject
-] SVGZoomAndPan {
+] interface SVGZoomAndPan {
     const unsigned short SVG_ZOOMANDPAN_UNKNOWN = 0;
     const unsigned short SVG_ZOOMANDPAN_DISABLE = 1;
     const unsigned short SVG_ZOOMANDPAN_MAGNIFY = 2;
diff --git a/Source/WebCore/svg/SVGZoomEvent.idl b/Source/WebCore/svg/SVGZoomEvent.idl
index 3c3e026..320e552 100644
--- a/Source/WebCore/svg/SVGZoomEvent.idl
+++ b/Source/WebCore/svg/SVGZoomEvent.idl
@@ -23,13 +23,13 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-interface [
+[
     Conditional=SVG
-] SVGZoomEvent : UIEvent { 
+] interface SVGZoomEvent : UIEvent { 
     readonly attribute SVGRect zoomRectScreen;
     readonly attribute float previousScale;
-    readonly attribute [Immutable] SVGPoint previousTranslate;
+    [Immutable] readonly attribute SVGPoint previousTranslate;
     readonly attribute float newScale;
-    readonly attribute [Immutable] SVGPoint newTranslate;
+    [Immutable] readonly attribute SVGPoint newTranslate;
 };
 
diff --git a/Source/WebCore/testing/InternalSettings.idl b/Source/WebCore/testing/InternalSettings.idl
index a7771e2..f3464be 100755
--- a/Source/WebCore/testing/InternalSettings.idl
+++ b/Source/WebCore/testing/InternalSettings.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     OmitConstructor
-] InternalSettings {
+] interface InternalSettings {
     void setInspectorResourcesDataSizeLimits(in long maximumResourcesContentSize, in long maximumSingleResourceContentSize) raises(DOMException);
     void setForceCompositingMode(in boolean enabled) raises(DOMException);
     void setEnableCompositingForFixedPosition(in boolean enabled) raises(DOMException);
diff --git a/Source/WebCore/testing/Internals.idl b/Source/WebCore/testing/Internals.idl
index e3eb22a..3e2d474 100644
--- a/Source/WebCore/testing/Internals.idl
+++ b/Source/WebCore/testing/Internals.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     OmitConstructor
-] Internals {
+] interface Internals {
     DOMString address(in Node node);
 
     DOMString elementRenderTreeAsText(in Element element) raises(DOMException);
diff --git a/Source/WebCore/testing/MallocStatistics.idl b/Source/WebCore/testing/MallocStatistics.idl
index 39ffaa7..bea9741 100644
--- a/Source/WebCore/testing/MallocStatistics.idl
+++ b/Source/WebCore/testing/MallocStatistics.idl
@@ -23,9 +23,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     OmitConstructor
-] MallocStatistics {
+] interface MallocStatistics {
     readonly attribute unsigned long reservedVMBytes;
     readonly attribute unsigned long committedVMBytes;
     readonly attribute unsigned long freeListBytes;
diff --git a/Source/WebCore/workers/AbstractWorker.idl b/Source/WebCore/workers/AbstractWorker.idl
index 5d0ddc3..643fa958 100644
--- a/Source/WebCore/workers/AbstractWorker.idl
+++ b/Source/WebCore/workers/AbstractWorker.idl
@@ -29,12 +29,12 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WORKERS,
     ActiveDOMObject,
     JSCustomToJSObject,
     EventTarget
-] AbstractWorker {
+] interface AbstractWorker {
 
     attribute EventListener onerror;
 
diff --git a/Source/WebCore/workers/DedicatedWorkerContext.idl b/Source/WebCore/workers/DedicatedWorkerContext.idl
index 186d880..9b6494e 100644
--- a/Source/WebCore/workers/DedicatedWorkerContext.idl
+++ b/Source/WebCore/workers/DedicatedWorkerContext.idl
@@ -28,14 +28,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WORKERS,
     ExtendsDOMGlobalObject,
     IsWorkerContext,
     JSGenerateToNativeObject,
     JSNoStaticTables,
     OmitConstructor
-] DedicatedWorkerContext : WorkerContext {
+] interface DedicatedWorkerContext : WorkerContext {
 
 #if !defined(LANGUAGE_CPP) || !LANGUAGE_CPP
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
diff --git a/Source/WebCore/workers/SharedWorker.idl b/Source/WebCore/workers/SharedWorker.idl
index 91697de..0cfb13d 100644
--- a/Source/WebCore/workers/SharedWorker.idl
+++ b/Source/WebCore/workers/SharedWorker.idl
@@ -29,7 +29,7 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SHARED_WORKERS,
     ActiveDOMObject,
     JSCustomConstructor,
@@ -39,7 +39,7 @@
     JSCustomMarkFunction,
     JSGenerateToNativeObject,
     JSGenerateToJSObject
-] SharedWorker : AbstractWorker {
+] interface SharedWorker : AbstractWorker {
     readonly attribute MessagePort port;
 };
 
diff --git a/Source/WebCore/workers/SharedWorkerContext.idl b/Source/WebCore/workers/SharedWorkerContext.idl
index dd5a290..2d57ebb 100644
--- a/Source/WebCore/workers/SharedWorkerContext.idl
+++ b/Source/WebCore/workers/SharedWorkerContext.idl
@@ -28,14 +28,14 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=SHARED_WORKERS,
     ExtendsDOMGlobalObject,
     IsWorkerContext,
     JSGenerateToNativeObject,
     JSNoStaticTables,
     OmitConstructor
-] SharedWorkerContext : WorkerContext {
+] interface SharedWorkerContext : WorkerContext {
 
     readonly attribute DOMString name;
              attribute EventListener onconnect;
diff --git a/Source/WebCore/workers/Worker.idl b/Source/WebCore/workers/Worker.idl
index 070e7a1..af7fcf8 100644
--- a/Source/WebCore/workers/Worker.idl
+++ b/Source/WebCore/workers/Worker.idl
@@ -25,7 +25,7 @@
  *
  */
 
-interface [
+[
     Conditional=WORKERS,
     ActiveDOMObject,
     JSCustomConstructor,
@@ -34,7 +34,7 @@
     ConstructorRaisesException,
     JSGenerateToNativeObject,
     JSGenerateToJSObject
-] Worker : AbstractWorker {
+] interface Worker : AbstractWorker {
 
     attribute EventListener onmessage;
 
diff --git a/Source/WebCore/workers/WorkerContext.idl b/Source/WebCore/workers/WorkerContext.idl
index ae0fd4e..1ff5e91 100644
--- a/Source/WebCore/workers/WorkerContext.idl
+++ b/Source/WebCore/workers/WorkerContext.idl
@@ -24,7 +24,7 @@
  *
  */
 
-interface [
+[
     Conditional=WORKERS,
     JSCustomMarkFunction,
     JSCustomGetOwnPropertySlotAndDescriptor,
@@ -35,7 +35,7 @@
     JSNoStaticTables,
     OmitConstructor,
     V8CustomToJSObject
-] WorkerContext {
+] interface WorkerContext {
 
     // WorkerGlobalScope
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
@@ -47,7 +47,7 @@
 
     // WorkerUtils
     [Custom] void importScripts(/*[Variadic] in DOMString urls */);
-             attribute [Replaceable] WorkerNavigator navigator;
+             [Replaceable] attribute WorkerNavigator navigator;
 
     // Timers
     [Custom] long setTimeout(in TimeoutHandler handler, in long timeout);
@@ -74,10 +74,10 @@
     attribute WorkerLocationConstructor WorkerLocation;
 
 #if ENABLE_CHANNEL_MESSAGING
-    attribute [JSCustomGetter] MessageChannelConstructor MessageChannel;
+    [JSCustomGetter] attribute MessageChannelConstructor MessageChannel;
 #endif
-    attribute [JSCustomGetter] EventSourceConstructor EventSource;
-    attribute [JSCustomGetter] XMLHttpRequestConstructor XMLHttpRequest;
+    [JSCustomGetter] attribute EventSourceConstructor EventSource;
+    [JSCustomGetter] attribute XMLHttpRequestConstructor XMLHttpRequest;
 #endif
 
 #if defined(ENABLE_BLOB) && ENABLE_BLOB
@@ -86,8 +86,8 @@
     attribute FileReaderSyncConstructor FileReaderSync;
 #endif
 
-    attribute [Conditional=BLOB] DOMURLConstructor URL;
-    attribute [Conditional=BLOB] DOMURLConstructor webkitURL; // FIXME: deprecate this.
+    [Conditional=BLOB] attribute DOMURLConstructor URL;
+    [Conditional=BLOB] attribute DOMURLConstructor webkitURL; // FIXME: deprecate this.
 
     attribute ArrayBufferConstructor ArrayBuffer; // Usable with new operator
     attribute Int8ArrayConstructor Int8Array; // Usable with new operator
diff --git a/Source/WebCore/workers/WorkerLocation.idl b/Source/WebCore/workers/WorkerLocation.idl
index ae95dc4..d0d22b0 100644
--- a/Source/WebCore/workers/WorkerLocation.idl
+++ b/Source/WebCore/workers/WorkerLocation.idl
@@ -26,11 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     Conditional=WORKERS,
     JSGenerateIsReachable=Impl,
     JSNoStaticTables
-] WorkerLocation {
+] interface WorkerLocation {
     readonly attribute DOMString href;
     readonly attribute DOMString protocol;
     readonly attribute DOMString host;
diff --git a/Source/WebCore/xml/DOMParser.idl b/Source/WebCore/xml/DOMParser.idl
index 83271fb..2e67aa5 100644
--- a/Source/WebCore/xml/DOMParser.idl
+++ b/Source/WebCore/xml/DOMParser.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Constructor
-] DOMParser {
+] interface DOMParser {
     Document parseFromString(in [Optional=DefaultIsUndefined] DOMString str, 
                              in [Optional=DefaultIsUndefined] DOMString contentType);
 };
diff --git a/Source/WebCore/xml/XMLHttpRequest.idl b/Source/WebCore/xml/XMLHttpRequest.idl
index 830bd16..37c694e 100644
--- a/Source/WebCore/xml/XMLHttpRequest.idl
+++ b/Source/WebCore/xml/XMLHttpRequest.idl
@@ -26,7 +26,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     ActiveDOMObject,
     Constructor,
     CallWith=ScriptExecutionContext,
@@ -34,7 +34,7 @@
     JSCustomMarkFunction,
     EventTarget,
     JSNoStaticTables
-] XMLHttpRequest {
+] interface XMLHttpRequest {
     // From XMLHttpRequestEventTarget
     // event handler attributes
     attribute EventListener onabort;
@@ -89,14 +89,14 @@
         raises(DOMException);
     [TreatReturnedNullStringAs=Null] DOMString getResponseHeader(in DOMString header)
         raises(DOMException);
-    readonly attribute [CustomGetter] DOMString responseText // The custom getter implements TreatReturnedNullStringAs=Null
+    [CustomGetter] readonly attribute DOMString responseText // The custom getter implements TreatReturnedNullStringAs=Null
         getter raises(DOMException);
     readonly attribute Document responseXML
         getter raises(DOMException);
 
     attribute DOMString responseType
         setter raises(DOMException);
-    readonly attribute [CustomGetter] Object response
+    [CustomGetter] readonly attribute Object response
         getter raises(DOMException);
 
     readonly attribute unsigned short status
diff --git a/Source/WebCore/xml/XMLHttpRequestException.idl b/Source/WebCore/xml/XMLHttpRequestException.idl
index 232ae56..4114292 100644
--- a/Source/WebCore/xml/XMLHttpRequestException.idl
+++ b/Source/WebCore/xml/XMLHttpRequestException.idl
@@ -26,10 +26,10 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-exception [
+[
     JSNoStaticTables,
     DoNotCheckConstants
-] XMLHttpRequestException {
+] exception XMLHttpRequestException {
 
     readonly attribute unsigned short   code;
     readonly attribute DOMString        name;
diff --git a/Source/WebCore/xml/XMLHttpRequestProgressEvent.idl b/Source/WebCore/xml/XMLHttpRequestProgressEvent.idl
index 6829193..5ed5c21 100644
--- a/Source/WebCore/xml/XMLHttpRequestProgressEvent.idl
+++ b/Source/WebCore/xml/XMLHttpRequestProgressEvent.idl
@@ -23,10 +23,10 @@
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     JSNoStaticTables
 // We should also inherit from LSProgressEvent when the idl is added.
-] XMLHttpRequestProgressEvent : ProgressEvent {
+] interface XMLHttpRequestProgressEvent : ProgressEvent {
      readonly attribute unsigned long long position;
      readonly attribute unsigned long long totalSize;
 };
diff --git a/Source/WebCore/xml/XMLHttpRequestUpload.idl b/Source/WebCore/xml/XMLHttpRequestUpload.idl
index 073d5fd..61031df 100644
--- a/Source/WebCore/xml/XMLHttpRequestUpload.idl
+++ b/Source/WebCore/xml/XMLHttpRequestUpload.idl
@@ -26,11 +26,11 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-interface [
+[
     JSGenerateIsReachable=Impl,
     EventTarget,
     JSNoStaticTables
-] XMLHttpRequestUpload {
+] interface XMLHttpRequestUpload {
     // From XMLHttpRequestEventTarget
     // event handler attributes
     attribute EventListener onabort;
diff --git a/Source/WebCore/xml/XMLSerializer.idl b/Source/WebCore/xml/XMLSerializer.idl
index 7f4ea03..709fe1d 100644
--- a/Source/WebCore/xml/XMLSerializer.idl
+++ b/Source/WebCore/xml/XMLSerializer.idl
@@ -18,9 +18,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Constructor
-] XMLSerializer {
+] interface XMLSerializer {
     DOMString serializeToString(in [Optional=DefaultIsUndefined] Node node)
         raises(DOMException);
 };
diff --git a/Source/WebCore/xml/XPathEvaluator.idl b/Source/WebCore/xml/XPathEvaluator.idl
index 76d6be1..6cf4dc0 100644
--- a/Source/WebCore/xml/XPathEvaluator.idl
+++ b/Source/WebCore/xml/XPathEvaluator.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     Constructor
-] XPathEvaluator {
+] interface XPathEvaluator {
     XPathExpression createExpression(in [Optional=DefaultIsUndefined] DOMString expression,
                                      in [Optional=DefaultIsUndefined] XPathNSResolver resolver)
         raises(DOMException);
diff --git a/Source/WebCore/xml/XPathException.idl b/Source/WebCore/xml/XPathException.idl
index ffdcf62..2398187 100644
--- a/Source/WebCore/xml/XPathException.idl
+++ b/Source/WebCore/xml/XPathException.idl
@@ -26,9 +26,9 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-exception [
+[
     DoNotCheckConstants
-] XPathException {
+] exception XPathException {
 
     readonly attribute unsigned short   code;
     readonly attribute DOMString        name;
diff --git a/Source/WebCore/xml/XPathNSResolver.idl b/Source/WebCore/xml/XPathNSResolver.idl
index 8273ace..518e1da 100644
--- a/Source/WebCore/xml/XPathNSResolver.idl
+++ b/Source/WebCore/xml/XPathNSResolver.idl
@@ -18,10 +18,10 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     ObjCProtocol,
     OmitConstructor
-] XPathNSResolver {
+] interface XPathNSResolver {
     [TreatReturnedNullStringAs=Null] DOMString lookupNamespaceURI(in [Optional=DefaultIsUndefined] DOMString prefix);
 };
 
diff --git a/Source/WebCore/xml/XPathResult.idl b/Source/WebCore/xml/XPathResult.idl
index 640b7e1..0c297e0 100644
--- a/Source/WebCore/xml/XPathResult.idl
+++ b/Source/WebCore/xml/XPathResult.idl
@@ -17,9 +17,9 @@
  * Boston, MA 02110-1301, USA.
  */
 
-interface [
+[
     JSCustomMarkFunction
-] XPathResult {
+] interface XPathResult {
     const unsigned short ANY_TYPE                       = 0;
     const unsigned short NUMBER_TYPE                    = 1;
     const unsigned short STRING_TYPE                    = 2;
diff --git a/Source/WebCore/xml/XSLTProcessor.idl b/Source/WebCore/xml/XSLTProcessor.idl
index 5036120..0914e06 100644
--- a/Source/WebCore/xml/XSLTProcessor.idl
+++ b/Source/WebCore/xml/XSLTProcessor.idl
@@ -30,10 +30,10 @@
 // http://lxr.mozilla.org/seamonkey/source/content/xsl/public/nsIXSLTException.idl
 // http://bugs.webkit.org/show_bug.cgi?id=5446
 
-interface [
+[
     Conditional=XSLT,
     Constructor
-] XSLTProcessor {
+] interface XSLTProcessor {
     
     void importStylesheet(in [Optional=DefaultIsUndefined] Node stylesheet);
     DocumentFragment transformToFragment(in [Optional=DefaultIsUndefined] Node source, in [Optional=DefaultIsUndefined] Document docVal);