diff --git a/goblin/element.py b/goblin/element.py
index a80d427..ff5e37b 100644
--- a/goblin/element.py
+++ b/goblin/element.py
@@ -178,6 +178,7 @@ class VertexProperty(Vertex, abc.BaseProperty):
         self._data_type = data_type
         self._default = default
         self._db_name = db_name
+        self._val = None
         if card is None:
             card = Cardinality.single
         self._cardinality = card

Issues with Sphinx: `VertexProperty` Missing Attribute
Build failure in sphinx:

```
  File "/lib/python3.5/site-packages/sphinx/ext/autodoc.py", line 862, in filter_members
    not keep, self.options)
  File "/lib/python3.5/site-packages/sphinx/application.py", line 593, in emit_firstresult
    for result in self.emit(event, *args):
  File "/lib/python3.5/site-packages/sphinx/application.py", line 589, in emit
    results.append(callback(self, *args))
  File "/lib/python3.5/site-packages/sphinxcontrib/napoleon/__init__.py", line 428, in _skip_member
    qualname = getattr(obj, '__qualname__', '')
  File "/lib/python3.5/site-packages/goblin/element.py", line 211, in __repr__
    self._data_type, self.value)
  File "/lib/python3.5/site-packages/goblin/element.py", line 194, in getvalue
    return self._val
AttributeError: 'SubOption' object has no attribute '_val'
```

`SubOption` is a sub-class of `VertexProperty`:

```python
class SubOption(goblin.VertexProperty):
    a = goblin.Property(goblin.Boolean, default=True)
    b = goblin.Property(goblin.Boolean, default=True)
```

I hacked `element.py` to get my build to pass by adding `self._val = None` to the class initializer for `VertexProperty` (https://github.com/davebshow/goblin/blob/master/goblin/element.py#L183).
diff --git a/tests/test_properties.py b/tests/test_properties.py
index cff8ded..10d546a 100644
--- a/tests/test_properties.py
+++ b/tests/test_properties.py
@@ -76,6 +76,12 @@ def test_set_change_vertex_property(person):
     person.birthplace = 'U of I Hospital'
     assert person.birthplace.value == 'U of I Hospital'
 
+def test_vertex_property_default():
+    """Makes sure that a brand new VertexProperty (i.e., with no value set) is
+    still representable. Addresses issue #52.
+    """
+    vp = element.VertexProperty(int)
+    assert repr(vp) == "<VertexProperty(type=0, value=None)"
 
 def test_validate_vertex_prop(person):
     assert not person.birthplace

pip install -e .
parse_log_pytest
requirements.txt
pytest pytest-asyncio
3.5
requirements.txt
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
aiogremlin==3.2.4
aiohttp==1.3.3
async-timeout==4.0.2
attrs==22.2.0
certifi==2021.5.30
chardet==5.0.0
charset-normalizer==2.0.12
coverage==6.2
coveralls==1.1
docopt==0.6.2
-e git+https://github.com/davebshow/goblin.git@cc152a9c8e5eca92715721ae26d0ec94703818a9#egg=goblin
idna==3.10
importlib-metadata==4.8.3
inflection==0.3.1
iniconfig==1.1.1
multidict==5.2.0
packaging==21.3
pluggy==1.0.0
py==1.11.0
pyparsing==3.1.4
pytest==7.0.1
pytest-asyncio==0.16.0
PyYAML==3.12
requests==2.27.1
tomli==1.2.3
typing_extensions==4.1.1
urllib3==1.26.20
yarl==0.9.8
zipp==3.6.0

name: goblin
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2021.5.30=py36h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.3=he6710b0_2
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=21.2.2=py36h06a4308_0
  - python=3.6.13=h12debd9_1
  - readline=8.2=h5eee18b_0
  - setuptools=58.0.4=py36h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.37.1=pyhd3eb1b0_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - aiogremlin==3.2.4
      - aiohttp==1.3.3
      - async-timeout==4.0.2
      - attrs==22.2.0
      - chardet==5.0.0
      - charset-normalizer==2.0.12
      - coverage==6.2
      - coveralls==1.1
      - docopt==0.6.2
      - idna==3.10
      - importlib-metadata==4.8.3
      - inflection==0.3.1
      - iniconfig==1.1.1
      - multidict==5.2.0
      - packaging==21.3
      - pluggy==1.0.0
      - py==1.11.0
      - pyparsing==3.1.4
      - pytest==7.0.1
      - pytest-asyncio==0.16.0
      - pyyaml==3.12
      - requests==2.27.1
      - tomli==1.2.3
      - typing-extensions==4.1.1
      - urllib3==1.26.20
      - yarl==0.9.8
      - zipp==3.6.0
prefix: /opt/conda/envs/goblin

tests/test_properties.py::test_vertex_property_default
tests/test_properties.py::test_set_change_property tests/test_properties.py::test_property_default tests/test_properties.py::test_validation tests/test_properties.py::test_setattr_validation tests/test_properties.py::test_set_id_long tests/test_properties.py::test_id_class_attr_throws tests/test_properties.py::test_set_change_vertex_property tests/test_properties.py::test_validate_vertex_prop tests/test_properties.py::test_set_change_list_card_vertex_property tests/test_properties.py::test_list_card_vertex_property_validation tests/test_properties.py::test_set_change_set_card_vertex_property tests/test_properties.py::test_set_card_validation_vertex_property tests/test_properties.py::test_cant_set_vertex_prop_on_edge tests/test_properties.py::test_meta_property_set_update tests/test_properties.py::test_meta_property_validation tests/test_properties.py::TestString::test_validation tests/test_properties.py::TestString::test_to_db tests/test_properties.py::TestString::test_to_ogm tests/test_properties.py::TestString::test_initval_to_db tests/test_properties.py::TestInteger::test_validation tests/test_properties.py::TestInteger::test_to_db tests/test_properties.py::TestInteger::test_to_ogm tests/test_properties.py::TestInteger::test_initval_to_db tests/test_properties.py::TestFloat::test_validation tests/test_properties.py::TestFloat::test_to_db tests/test_properties.py::TestFloat::test_to_ogm tests/test_properties.py::TestFloat::test_initval_to_db tests/test_properties.py::TestBoolean::test_validation_true tests/test_properties.py::TestBoolean::test_validation_false tests/test_properties.py::TestBoolean::test_to_db_true tests/test_properties.py::TestBoolean::test_to_db_false tests/test_properties.py::TestBoolean::test_to_ogm_true tests/test_properties.py::TestBoolean::test_to_ogm_false tests/test_properties.py::TestBoolean::test_initval_to_db_true
goblin/element.py
goblin/element.py