| @@ 303-320 (lines=18) @@ | ||
| 300 | /** |
|
| 301 | * @return ElementRef |
|
| 302 | */ |
|
| 303 | private function loadElementRef(ElementDef $referenced, DOMElement $node) |
|
| 304 | { |
|
| 305 | $ref = new ElementRef($referenced); |
|
| 306 | $this->setDoc($ref, $node); |
|
| 307 | ||
| 308 | static::maybeSetMax($ref, $node); |
|
| 309 | if ($node->hasAttribute("minOccurs")) { |
|
| 310 | $ref->setMin((int)$node->getAttribute("minOccurs")); |
|
| 311 | } |
|
| 312 | if ($node->hasAttribute("nillable")) { |
|
| 313 | $ref->setNil($node->getAttribute("nillable") == "true"); |
|
| 314 | } |
|
| 315 | if ($node->hasAttribute("form")) { |
|
| 316 | $ref->setQualified($node->getAttribute("form") == "qualified"); |
|
| 317 | } |
|
| 318 | ||
| 319 | return $ref; |
|
| 320 | } |
|
| 321 | ||
| 322 | private function setDoc(Item $ref, DOMElement $node) |
|
| 323 | { |
|
| @@ 339-354 (lines=16) @@ | ||
| 336 | /** |
|
| 337 | * @return AttributeRef |
|
| 338 | */ |
|
| 339 | private function loadAttributeRef(AttributeDef $referencedAttribiute, DOMElement $node) |
|
| 340 | { |
|
| 341 | $attribute = new AttributeRef($referencedAttribiute); |
|
| 342 | $this->setDoc($attribute, $node); |
|
| 343 | ||
| 344 | if ($node->hasAttribute("nillable")) { |
|
| 345 | $attribute->setNil($node->getAttribute("nillable") == "true"); |
|
| 346 | } |
|
| 347 | if ($node->hasAttribute("form")) { |
|
| 348 | $attribute->setQualified($node->getAttribute("form") == "qualified"); |
|
| 349 | } |
|
| 350 | if ($node->hasAttribute("use")) { |
|
| 351 | $attribute->setUse($node->getAttribute("use")); |
|
| 352 | } |
|
| 353 | return $attribute; |
|
| 354 | } |
|
| 355 | ||
| 356 | /** |
|
| 357 | * @param int|null $max |
|