[356017] New form attributes in HTML5 are not supported
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/AttributeCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/AttributeCollection.java
index fa77f0e..d4f9f99 100644
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/AttributeCollection.java
+++ b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/AttributeCollection.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2010 IBM Corporation and others.
+ * Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -1390,6 +1390,10 @@
getDeclarations(attributes, Arrays.asList(names).iterator());
}
+ else if (elementName.equals(HTML40Namespace.ElementName.FORM)) {
+ String[] names = {HTML40Namespace.ATTR_NAME_ACTION, HTML40Namespace.ATTR_NAME_METHOD, HTML40Namespace.ATTR_NAME_ENCTYPE, HTML40Namespace.ATTR_NAME_ACCEPT, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_ONSUBMIT, HTML40Namespace.ATTR_NAME_ONRESET, HTML40Namespace.ATTR_NAME_TARGET, HTML40Namespace.ATTR_NAME_ACCEPT_CHARSET};
+ getDeclarations(attributes, Arrays.asList(names).iterator());
+ }
/*
* (shape %Shape; rect)
* (coords %Coords; #IMPLIED)
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTML5AttributeCollection.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTML5AttributeCollection.java
index 4fcc2b9..1d7aa67 100644
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTML5AttributeCollection.java
+++ b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HTML5AttributeCollection.java
@@ -69,6 +69,13 @@
atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
attr = new HTMLAttrDeclImpl(ATTR_NAME_FORM, atype, CMAttributeDeclaration.OPTIONAL);
}
+ else if (attrName.equalsIgnoreCase(ATTR_NAME_NOVALIDATE)) {
+ // (novalidate (novalidate) #IMPLIED)
+ atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
+ String[] values = {ATTR_NAME_NOVALIDATE};
+ atype.setEnumValues(values);
+ attr = new HTMLAttrDeclImpl(ATTR_NAME_NOVALIDATE, atype, CMAttributeDeclaration.OPTIONAL);
+ }
else if (attrName.equalsIgnoreCase(ATTR_NAME_KEYTYPE)) {
// (keytype CDATA; #IMPLIED)
atype = new HTMLCMDataTypeImpl(CMDataType.CDATA);
@@ -685,6 +692,19 @@
attributes.putNamedItem(ATTR_NAME_NAME, attr);
}
+ else if (elementName.equals(HTML40Namespace.ElementName.FORM)) {
+ super.createAttributeDeclarations(elementName, attributes);
+
+ // (type %autocomeplete; ) ... should be defined locally.
+ // NOTE: %autocomeplete is ENUM;
+ // (on | off)
+ HTMLCMDataTypeImpl atype = new HTMLCMDataTypeImpl(CMDataType.ENUM);
+ String[] autoCompleteValues = {ATTR_VALUE_ON, ATTR_VALUE_OFF};
+ atype.setEnumValues(autoCompleteValues);
+ HTMLAttrDeclImpl attr = new HTMLAttrDeclImpl(ATTR_NAME_AUTOCOMPLETE, atype, CMAttributeDeclaration.OPTIONAL);
+ attributes.putNamedItem(ATTR_NAME_AUTOCOMPLETE, attr);
+ attributes.putNamedItem(ATTR_NAME_NOVALIDATE, create(ATTR_NAME_NOVALIDATE));
+ }
/*
* (shape %Shape; rect)
* (coords %Coords; #IMPLIED)
diff --git a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFORM.java b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFORM.java
index 9986faa..2e5dacb 100644
--- a/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFORM.java
+++ b/bundles/org.eclipse.wst.html.core/src/org/eclipse/wst/html/core/internal/contentmodel/HedFORM.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
+ * Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -12,8 +12,6 @@
-import java.util.Arrays;
-
import org.eclipse.wst.html.core.internal.provisional.HTML40Namespace;
import org.eclipse.wst.xml.core.internal.contentmodel.CMContent;
import org.eclipse.wst.xml.core.internal.contentmodel.CMGroup;
@@ -55,8 +53,7 @@
// %attrs;
attributeCollection.getAttrs(attributes);
- String[] names = {HTML40Namespace.ATTR_NAME_ACTION, HTML40Namespace.ATTR_NAME_METHOD, HTML40Namespace.ATTR_NAME_ENCTYPE, HTML40Namespace.ATTR_NAME_ACCEPT, HTML40Namespace.ATTR_NAME_NAME, HTML40Namespace.ATTR_NAME_ONSUBMIT, HTML40Namespace.ATTR_NAME_ONRESET, HTML40Namespace.ATTR_NAME_TARGET, HTML40Namespace.ATTR_NAME_ACCEPT_CHARSET};
- attributeCollection.getDeclarations(attributes, Arrays.asList(names).iterator());
+ attributeCollection.createAttributeDeclarations(HTML40Namespace.ElementName.FORM, attributes);
}
/**