Skip to content

Commit 33ad9d2

Browse files
committed
complete constraint XML examples
1 parent 8a88e73 commit 33ad9d2

34 files changed

+555
-320
lines changed

reference/constraints/All.rst

+18-12
Original file line numberDiff line numberDiff line change
@@ -54,18 +54,24 @@ entry in that array:
5454
.. code-block:: xml
5555
5656
<!-- src/Acme/UserBundle/Resources/config/validation.xml -->
57-
<class name="Acme\UserBundle\Entity\User">
58-
<property name="favoriteColors">
59-
<constraint name="All">
60-
<option name="constraints">
61-
<constraint name="NotBlank" />
62-
<constraint name="Length">
63-
<option name="min">5</option>
64-
</constraint>
65-
</option>
66-
</constraint>
67-
</property>
68-
</class>
57+
<?xml version="1.0" encoding="UTF-8" ?>
58+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
59+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
60+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
61+
62+
<class name="Acme\UserBundle\Entity\User">
63+
<property name="favoriteColors">
64+
<constraint name="All">
65+
<option name="constraints">
66+
<constraint name="NotBlank" />
67+
<constraint name="Length">
68+
<option name="min">5</option>
69+
</constraint>
70+
</option>
71+
</constraint>
72+
</property>
73+
</class>
74+
</constraint-mapping>
6975
7076
.. code-block:: php
7177

reference/constraints/Blank.rst

+11-5
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,17 @@ of an ``Author`` class were blank, you could do the following:
5050
.. code-block:: xml
5151
5252
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
53-
<class name="Acme\BlogBundle\Entity\Author">
54-
<property name="firstName">
55-
<constraint name="Blank" />
56-
</property>
57-
</class>
53+
<?xml version="1.0" encoding="UTF-8" ?>
54+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
55+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
56+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
57+
58+
<class name="Acme\BlogBundle\Entity\Author">
59+
<property name="firstName">
60+
<constraint name="Blank" />
61+
</property>
62+
</class>
63+
</constraint-mapping>
5864
5965
.. code-block:: php
6066

reference/constraints/Callback.rst

+29-17
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,19 @@ Setup
5757
.. code-block:: xml
5858
5959
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
60-
<class name="Acme\BlogBundle\Entity\Author">
61-
<constraint name="Callback">
62-
<option name="methods">
63-
<value>isAuthorValid</value>
64-
</option>
65-
</constraint>
66-
</class>
60+
<?xml version="1.0" encoding="UTF-8" ?>
61+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
62+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
63+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
64+
65+
<class name="Acme\BlogBundle\Entity\Author">
66+
<constraint name="Callback">
67+
<option name="methods">
68+
<value>isAuthorValid</value>
69+
</option>
70+
</constraint>
71+
</class>
72+
</constraint-mapping>
6773
6874
.. code-block:: php
6975
@@ -159,16 +165,22 @@ process. Each method can be one of the following formats:
159165
.. code-block:: xml
160166
161167
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
162-
<class name="Acme\BlogBundle\Entity\Author">
163-
<constraint name="Callback">
164-
<option name="methods">
165-
<value>
166-
<value>Acme\BlogBundle\MyStaticValidatorClass</value>
167-
<value>isAuthorValid</value>
168-
</value>
169-
</option>
170-
</constraint>
171-
</class>
168+
<?xml version="1.0" encoding="UTF-8" ?>
169+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
170+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
171+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
172+
173+
<class name="Acme\BlogBundle\Entity\Author">
174+
<constraint name="Callback">
175+
<option name="methods">
176+
<value>
177+
<value>Acme\BlogBundle\MyStaticValidatorClass</value>
178+
<value>isAuthorValid</value>
179+
</value>
180+
</option>
181+
</constraint>
182+
</class>
183+
</constraint-mapping>
172184
173185
.. code-block:: php
174186

reference/constraints/CardScheme.rst

+16-10
Original file line numberDiff line numberDiff line change
@@ -40,16 +40,22 @@ on an object that will contain a credit card number.
4040
.. code-block:: xml
4141
4242
<!-- src/Acme/SubscriptionBundle/Resources/config/validation.xml -->
43-
<class name="Acme\SubscriptionBundle\Entity\Transaction">
44-
<property name="cardNumber">
45-
<constraint name="CardScheme">
46-
<option name="schemes">
47-
<value>VISA</value>
48-
</option>
49-
<option name="message">Your credit card number is invalid.</option>
50-
</constraint>
51-
</property>
52-
</class>
43+
<?xml version="1.0" encoding="UTF-8" ?>
44+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
45+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
46+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
47+
48+
<class name="Acme\SubscriptionBundle\Entity\Transaction">
49+
<property name="cardNumber">
50+
<constraint name="CardScheme">
51+
<option name="schemes">
52+
<value>VISA</value>
53+
</option>
54+
<option name="message">Your credit card number is invalid.</option>
55+
</constraint>
56+
</property>
57+
</class>
58+
</constraint-mapping>
5359
5460
.. code-block:: php-annotations
5561

reference/constraints/Choice.rst

+46-28
Original file line numberDiff line numberDiff line change
@@ -64,17 +64,23 @@ If your valid choice list is simple, you can pass them in directly via the
6464
.. code-block:: xml
6565
6666
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
67-
<class name="Acme\BlogBundle\Entity\Author">
68-
<property name="gender">
69-
<constraint name="Choice">
70-
<option name="choices">
71-
<value>male</value>
72-
<value>female</value>
73-
</option>
74-
<option name="message">Choose a valid gender.</option>
75-
</constraint>
76-
</property>
77-
</class>
67+
<?xml version="1.0" encoding="UTF-8" ?>
68+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
69+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
70+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
71+
72+
<class name="Acme\BlogBundle\Entity\Author">
73+
<property name="gender">
74+
<constraint name="Choice">
75+
<option name="choices">
76+
<value>male</value>
77+
<value>female</value>
78+
</option>
79+
<option name="message">Choose a valid gender.</option>
80+
</constraint>
81+
</property>
82+
</class>
83+
</constraint-mapping>
7884
7985
.. code-block:: php
8086
@@ -149,13 +155,19 @@ constraint.
149155
.. code-block:: xml
150156
151157
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
152-
<class name="Acme\BlogBundle\Entity\Author">
153-
<property name="gender">
154-
<constraint name="Choice">
155-
<option name="callback">getGenders</option>
156-
</constraint>
157-
</property>
158-
</class>
158+
<?xml version="1.0" encoding="UTF-8" ?>
159+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
160+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
161+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
162+
163+
<class name="Acme\BlogBundle\Entity\Author">
164+
<property name="gender">
165+
<constraint name="Choice">
166+
<option name="callback">getGenders</option>
167+
</constraint>
168+
</property>
169+
</class>
170+
</constraint-mapping>
159171
160172
.. code-block:: php
161173
@@ -208,16 +220,22 @@ you can pass the class name and the method as an array.
208220
.. code-block:: xml
209221
210222
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
211-
<class name="Acme\BlogBundle\Entity\Author">
212-
<property name="gender">
213-
<constraint name="Choice">
214-
<option name="callback">
215-
<value>Util</value>
216-
<value>getGenders</value>
217-
</option>
218-
</constraint>
219-
</property>
220-
</class>
223+
<?xml version="1.0" encoding="UTF-8" ?>
224+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
225+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
226+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
227+
228+
<class name="Acme\BlogBundle\Entity\Author">
229+
<property name="gender">
230+
<constraint name="Choice">
231+
<option name="callback">
232+
<value>Util</value>
233+
<value>getGenders</value>
234+
</option>
235+
</constraint>
236+
</property>
237+
</class>
238+
</constraint-mapping>
221239
222240
.. code-block:: php
223241

reference/constraints/Collection.rst

+25-19
Original file line numberDiff line numberDiff line change
@@ -101,25 +101,31 @@ blank but is no longer than 100 characters in length, you would do the following
101101
.. code-block:: xml
102102
103103
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
104-
<class name="Acme\BlogBundle\Entity\Author">
105-
<property name="profileData">
106-
<constraint name="Collection">
107-
<option name="fields">
108-
<value key="personal_email">
109-
<constraint name="Email" />
110-
</value>
111-
<value key="short_bio">
112-
<constraint name="NotBlank" />
113-
<constraint name="Length">
114-
<option name="max">100</option>
115-
<option name="maxMessage">Your bio is too long!</option>
116-
</constraint>
117-
</value>
118-
</option>
119-
<option name="allowMissingFields">true</option>
120-
</constraint>
121-
</property>
122-
</class>
104+
<?xml version="1.0" encoding="UTF-8" ?>
105+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
106+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
107+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
108+
109+
<class name="Acme\BlogBundle\Entity\Author">
110+
<property name="profileData">
111+
<constraint name="Collection">
112+
<option name="fields">
113+
<value key="personal_email">
114+
<constraint name="Email" />
115+
</value>
116+
<value key="short_bio">
117+
<constraint name="NotBlank" />
118+
<constraint name="Length">
119+
<option name="max">100</option>
120+
<option name="maxMessage">Your bio is too long!</option>
121+
</constraint>
122+
</value>
123+
</option>
124+
<option name="allowMissingFields">true</option>
125+
</constraint>
126+
</property>
127+
</class>
128+
</constraint-mapping>
123129
124130
.. code-block:: php
125131

reference/constraints/Count.rst

+16-10
Original file line numberDiff line numberDiff line change
@@ -64,16 +64,22 @@ you might add the following:
6464
.. code-block:: xml
6565
6666
<!-- src/Acme/EventBundle/Resources/config/validation.xml -->
67-
<class name="Acme\EventBundle\Entity\Participant">
68-
<property name="emails">
69-
<constraint name="Count">
70-
<option name="min">1</option>
71-
<option name="max">5</option>
72-
<option name="minMessage">You must specify at least one email</option>
73-
<option name="maxMessage">You cannot specify more than {{ limit }} emails</option>
74-
</constraint>
75-
</property>
76-
</class>
67+
<?xml version="1.0" encoding="UTF-8" ?>
68+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
69+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
70+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
71+
72+
<class name="Acme\EventBundle\Entity\Participant">
73+
<property name="emails">
74+
<constraint name="Count">
75+
<option name="min">1</option>
76+
<option name="max">5</option>
77+
<option name="minMessage">You must specify at least one email</option>
78+
<option name="maxMessage">You cannot specify more than {{ limit }} emails</option>
79+
</constraint>
80+
</property>
81+
</class>
82+
</constraint-mapping>
7783
7884
.. code-block:: php
7985

reference/constraints/Country.rst

+11-5
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,17 @@ Basic Usage
4444
.. code-block:: xml
4545
4646
<!-- src/Acme/UserBundle/Resources/config/validation.xml -->
47-
<class name="Acme\UserBundle\Entity\User">
48-
<property name="country">
49-
<constraint name="Country" />
50-
</property>
51-
</class>
47+
<?xml version="1.0" encoding="UTF-8" ?>
48+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
49+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
50+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
51+
52+
<class name="Acme\UserBundle\Entity\User">
53+
<property name="country">
54+
<constraint name="Country" />
55+
</property>
56+
</class>
57+
</constraint-mapping>
5258
5359
.. code-block:: php
5460

reference/constraints/Date.rst

+11-5
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,17 @@ Basic Usage
4646
.. code-block:: xml
4747
4848
<!-- src/Acme/BlogBundle/Resources/config/validation.xml -->
49-
<class name="Acme\BlogBundle\Entity\Author">
50-
<property name="birthday">
51-
<constraint name="Date" />
52-
</property>
53-
</class>
49+
<?xml version="1.0" encoding="UTF-8" ?>
50+
<constraint-mapping xmlns="http://symfony.com/schema/dic/constraint-mapping"
51+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
52+
xsi:schemaLocation="http://symfony.com/schema/dic/constraint-mapping http://symfony.com/schema/dic/constraint-mapping/constraint-mapping-1.0.xsd">
53+
54+
<class name="Acme\BlogBundle\Entity\Author">
55+
<property name="birthday">
56+
<constraint name="Date" />
57+
</property>
58+
</class>
59+
</constraint-mapping>
5460
5561
.. code-block:: php
5662

0 commit comments

Comments
 (0)