Property group and property names must match the following expression. Notice the space between the = and the %:
[A-Za-z0-9-._~:/?#[]@!$&'()*+,;= %]+
A property group or property name has the following characteristics:
Is case sensitive
Can contain any character defined in Uniform Resource Identifier (URI) Generic Syntax RFC 3986
In an FMRI, the following characters are unreserved and will appear unencoded:
A-Z
a-z
0-9
-
.
_
~
The following characters are reserved and will appear encoded when they are part of an FMRI or fragment of an FMRI. A percent (%) character must be encoded when it is used as part of a property group name or property name. See also Using Reserved Characters.
: %3A ! %21 + %2B
/ %2F $ %24 , %2C
? %3F & %26 ; %3B
# %23 ' %27 = %3D
[ %5B ( %28 <space> %20
] %5D ) %29 % %25
@ %40 * %2A
The following example shows a full FMRI for a property: the FMRI of the service instance, followed by /:properties/, followed by the name of the property.
svc:/application/pkg/server:default/:properties/pkg/port
You can use the -f option of the svcprop command to show the full FMRI of a property.
$ svcprop -fp pkg/port pkg/server:default svc:/application/pkg/server:default/:properties/pkg/port count 80
When you use svcbundle, you must encode reserved characters, as shown in the following example:
# svcbundle -s service-name=site/enchars-example \ > -s start-method=true \ > -s instance-property=config:start%3Aend:count:10 \ > -s instance-property=config:students%2Fteachers:count:20 \ > -s instance-property=config:maximum%20%23:count:9 \ > -s instance-property=config:%25%20increase:count:10 > enchars_example.xml
When you edit a manifest or profile directly or use the editprop tool, you do not need to encode reserved characters. The following config property group is from the enchars_example.xml manifest output by the above svcbundle command:
<property_group type="application" name="config">
<propval type="count" name="start:end" value="10"/>
<propval type="count" name="students/teachers" value="20"/>
<propval type="count" name="maximum #" value="9"/>
<propval type="count" name="% increase" value="10"/>
</property_group>
Reserved characters always appear encoded in an FMRI.
$ svcprop -fp config enchars-example:default svc:/site/enchars-example:default/:properties/config/%25%20increase count 10 svc:/site/enchars-example:default/:properties/config/maximum%20%23 count 9 svc:/site/enchars-example:default/:properties/config/start%3Aend count 10 svc:/site/enchars-example:default/:properties/config/students%2Fteachers count 20