| @@ 309-326 (lines=18) @@ | ||
| 306 | /** |
|
| 307 | * @return ElementRef |
|
| 308 | */ |
|
| 309 | private function loadElementRef(ElementDef $referenced, DOMElement $node) |
|
| 310 | { |
|
| 311 | $ref = new ElementRef($referenced); |
|
| 312 | $this->setDoc($ref, $node); |
|
| 313 | ||
| 314 | static::maybeSetMax($ref, $node); |
|
| 315 | if ($node->hasAttribute("minOccurs")) { |
|
| 316 | $ref->setMin((int)$node->getAttribute("minOccurs")); |
|
| 317 | } |
|
| 318 | if ($node->hasAttribute("nillable")) { |
|
| 319 | $ref->setNil($node->getAttribute("nillable") == "true"); |
|
| 320 | } |
|
| 321 | if ($node->hasAttribute("form")) { |
|
| 322 | $ref->setQualified($node->getAttribute("form") == "qualified"); |
|
| 323 | } |
|
| 324 | ||
| 325 | return $ref; |
|
| 326 | } |
|
| 327 | ||
| 328 | private function setDoc(Item $ref, DOMElement $node) |
|
| 329 | { |
|
| @@ 345-360 (lines=16) @@ | ||
| 342 | /** |
|
| 343 | * @return AttributeRef |
|
| 344 | */ |
|
| 345 | private function loadAttributeRef(AttributeDef $referencedAttribiute, DOMElement $node) |
|
| 346 | { |
|
| 347 | $attribute = new AttributeRef($referencedAttribiute); |
|
| 348 | $this->setDoc($attribute, $node); |
|
| 349 | ||
| 350 | if ($node->hasAttribute("nillable")) { |
|
| 351 | $attribute->setNil($node->getAttribute("nillable") == "true"); |
|
| 352 | } |
|
| 353 | if ($node->hasAttribute("form")) { |
|
| 354 | $attribute->setQualified($node->getAttribute("form") == "qualified"); |
|
| 355 | } |
|
| 356 | if ($node->hasAttribute("use")) { |
|
| 357 | $attribute->setUse($node->getAttribute("use")); |
|
| 358 | } |
|
| 359 | return $attribute; |
|
| 360 | } |
|
| 361 | ||
| 362 | /** |
|
| 363 | * @param int|null $max |
|